デフォルトでは、すべての Postgres ノードがマスターモードでインストールされます。ただし、複数の Postgres ノードを伴う本番環境システムでは、マスター / スタンバイ レプリケーションが行われるように構成してください。そうすることで、マスターノードに障害が発生してもスタンバイ ノードがサーバー トラフィックを引き継ぐことができます。
マスターノードに障害が発生した場合は、スタンバイ サーバーをマスターに昇格させることができます。詳細については、PostgreSQL データベースのフェイルオーバーの処理をご覧ください。
インストール時にマスター / スタンバイ レプリケーションを構成する
2 つの Postgres ノードの構成ファイルに次のプロパティを追加すると、インストール時にマスター / スタンバイ レプリケーションを構成できます。
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
これら 2 つの Postgres ノードは、レプリケーションのマスター / スタンバイとして機能するように、インストーラによって自動的に構成されます。
インストール後にマスター / スタンバイ レプリケーションを構成する
インストール後にマスター / スタンバイ レプリケーションを構成するには、次の手順に従います。
- どちらの Postgres ノードがマスター サーバーになり、どちらの Postgres ノードがスタンバイ サーバーになるかを決定します。
- マスターノードで、構成ファイルを編集して
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
を設定します。 - 新しいマスターでレプリケーションを有効にします。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- スタンバイ ノードで、構成ファイルを編集して
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
を設定します。 - スタンバイ ノードを停止します。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- スタンバイ ノードで、既存の Postgres データを削除します。
rm -rf /opt/apigee/data/apigee-postgresql/
- スタンバイ ノードを構成します。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
マスター / スタンバイ レプリケーションをテストする
レプリケーションが完了したら、両方のサーバーで次のスクリプトを発行して、レプリケーションのステータスを確認します。両方のサーバーで同じ結果が表示され、レプリケーションが成功していることを確認します。
- マスターノードで、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
マスターと表示されることを確認します。
- スタンバイ ノードで次のスクリプトを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
スタンバイと表示されるか確認します。