デフォルトでは、すべての Postgres ノードがマスターモードでインストールされます。ただし、複数の Postgres ノードを伴う本番環境システムでは、マスター / スタンバイ レプリケーションが行われるように構成してください。そうすることで、マスターノードに障害が発生してもスタンバイ ノードがトラフィックの処理を続行できます。
マスターノードに障害が発生した場合、スタンバイ サーバーをマスターに昇格させることができます。詳細については、PostgresSQL データベースのフェイルオーバーの処理をご覧ください。
インストール時にマスター / スタンバイ レプリケーションを構成する
2 つの Postgres ノードの構成ファイルに次のプロパティを追加することで、インストール時にマスター / スタンバイ レプリケーションを構成できます。
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
これら 2 つの 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
スタンバイと表示されるか確認します。