運用センタが被災した場合、以下の手順で待機センタに切り替えます。
Mirroring Controllerの停止
待機センタのプライマリ候補サーバまたはスタンバイサーバで、mc_ctlコマンドのstopモードに-aオプションおよび--mc-onlyオプションを指定して実行し、待機センタのプライマリ候補サーバとスタンバイサーバのMirroring Controllerを同時に停止します。
$ mc_ctl stop -M /path/to/mcdir -a --mc-only
サーバ定義ファイルの編集
待機センタのプライマリ候補サーバとスタンバイサーバのサーバ定義ファイルについて、以下のパラメータを変更します。
パラメータ | 変更内容 |
---|---|
standbycenter_mode | パラメータをコメントアウトし、無効化してください。 |
primarycenter_primary_conninfo | |
standbycenter_primary_conninfo |
Connection Managerの起動
cm_ctlコマンドをstartモードで実行し、待機センタのConnection Managerを起動します。
$ cm_ctl start -D /path/to/cmdir
プライマリ候補サーバの昇格
pg_ctlコマンドをpromoteモードで実行し、待機センタのプライマリ候補サーバを昇格します。
$ pg_ctl promote -D /database/inst1
レプリケーションテーブルの復旧
“6.3.1 レプリケーションテーブルの復旧”を参照してレプリケーションテーブルを復旧します。
論理レプリケーションの有効化
postgresql.confのmax_logical_replication_workersパラメータを運用センタのプライマリサーバの値に戻して、待機センタのプライマリ候補サーバを再起動します。
Mirroring Controllerの起動
mc_ctlコマンドを-mc-onlyオプションを指定して実行し、待機センタのプライマリ候補サーバ、およびスタンバイサーバのMirroring Controllerのみを起動します。
$ mc_ctl start -M /mcdir/inst1 --mc-only
Mirroring Controllerとストリーミングレプリケーションの状態確認
Mirroring Controllerプロセス、およびストリーミングレプリケーションの状態を確認します。確認方法は、“クラスタ運用ガイド(災害対策編)”の“災害対策運用の状態確認”を参照してください。
損失したデータの復旧
アプリケーション業務を再開する前に、データベースの内容から損失したデータを確認し、必要に応じて業務を再実行するなど、データベースを最新化します。
アプリケーション業務の再開
アプリケーション業務を待機センタのプライマリ候補サーバで再開します。
運用センタの復旧
運用センタを復旧し、被災した運用センタを待機センタとして再構築します。 待機センタとしての再構築手順は、“6.2.2 待機センタのセットアップ”を参照してください。