スタンバイサーバのインスタンスの作成・設定・登録について、説明します。
注意
Mirroring Controllerは、Windowsサービスへ登録されているインスタンスを対象にします。
参照
各パラメータの詳細については、“付録A パラメータ”を参照してください。
mc_ctlコマンドの詳細は、“リファレンス”を参照してください。
以下の手順で行います。
セットアップの準備作業を行います。
“導入ガイド(サーバ編)”の“セットアップの準備作業”を参照して、スタンバイサーバにインスタンスを作成する前の準備作業を行ってください。
注意
プライマリサーバとスタンバイサーバを同一サーバ内に構築する場合には、プライマリサーバとFUJITSU Enterprise Postgresのイベントソース名が重複しないように準備作業を行ってください。
格納データの暗号化の設定を行います。
プライマリサーバのキーストア・ファイルのコピーをスタンバイサーバ側に配置します。
詳細は、“運用ガイド”の“データベース多重化運用”を参照して、設定してください。
pg_basebackupコマンドを実行して、スタンバイサーバにプライマリサーバのインスタンスの複製を作成します。
例)
> pg_basebackup -D D:\mcdir\inst1 --xlog --progress --verbose -R --dbname="application_name=スタンバイサーバ名" -h プライマリサーバのIPアドレス -p プライマリサーバのポート番号
注意
プライマリサーバへの接続がパスワード認証を必要とする方式の場合、自動で認証が行われるようにしておく必要があります。pg_basebackupコマンドの-Rオプションを指定し、--dbnameオプションにpasswordパラメータを指定すると、 pg_basebackupコマンドによりrecovery.confにパスワードが設定されて自動的に接続できるようになります。
recovery.confにパスワードを設定しない場合は、パスワードファイル(%APPDATA%¥postgresql¥pgpass.conf)を作成してreplicationデータベースに対するパスワードを設定してください。
postgresql.confファイルに以下のパラメータを設定してください。
パラメータ | 指定内容 | 備考 |
---|---|---|
synchronous_standby_names | 'プライマリサーバ名' | プライマリサーバを切り替えたあとに、旧プライマリサーバを新しくスタンバイサーバとして組み込んだときに必要です。 Mirroring Controller起動中は、本パラメータを変更しないでください。 |
wal_receiver_timeout | タイムアウト時間(ミリ秒) | スタンバイサーバ側でのトランザクションログの受信に異常が発生したと判断する時間を指定します。サーバ識別子.confファイルの(heartbeat_interval + heartbeat_timeout×1000) × (heartbeat_retry + 1)の値と合わせることで、異常と判断する時間を統一できます。 |
Windowsサービスへのインスタンスの登録を行います。
“導入ガイド(サーバ編)”の“インスタンスの作成”を参照して、インスタンスをWindowsサービスへ登録します。なお、Mirroring Controllerがインスタンスを起動/停止するために、pg_ctlコマンドのregisterモードを以下の指定で実行してください。
-Nオプションのサービス名には、サーバ定義ファイルのdb_instance_service_nameパラメータに指定した名前を指定する
-Sオプションに“demand”を指定して、システム起動時に自動的にサービスを起動しない
-wオプションを指定して、起動処理または停止処理の完了待ちを行う
注意
多重化したインスタンスのWindowsサービスは、Mirroring Controllerが起動するため、自動起動を行う設定にしないでください。
プライマリサーバとスタンバイサーバを同一サーバ内に構築する場合には、プライマリサーバとFUJITSU Enterprise Postgresのインスタンスの登録サービス名が重複しないように登録してください。
Mirroring Controllerのプロセスを起動します。
プライマリサーバのMirroring Controllerのプロセスが起動していることを確認してから、起動します。
インスタンス管理者ユーザーで、mc_ctlコマンドをstartモードで-fオプションを指定して実行します。これにより、自動切り替え/切り離しの有効化を行います。
なお、-fオプションを指定せずに起動した場合、自動切り替え/切り離しは有効になりません。有効にするには、Mirroring Controllerを起動したあとにmc_ctlコマンドをenable-failoverモードで実行するか、-fオプションを指定してMirroring Controllerを再起動してください。
例)
> mc_ctl start -M D:\mcdir\inst1 -w -f
インスタンス管理者ユーザーで、mc_ctlコマンドをstartモードで実行します。
例)
> mc_ctl start -M D:\mcdir\inst1 -w
Mirroring Controllerプロセスの状態を確認します。
インスタンス管理者ユーザーでmc_ctlコマンドをstatusモードで実行します。“mirroring status”が切り替え可能状態(switchable)になっていることを確認してください。
例)
> mc_ctl status -M D:\mcdir\inst1