Postgres のマスター / スタンバイ レプリケーションを設定する

Edge for Private Cloud v4.19.01

デフォルトでは、Postgres ノードはすべてマスターモードでインストールされます。ただし、複数の Postgres ノードを伴う本番稼働システムでは、マスター / スタンバイ レプリケーションを使用するように構成してください。そうすることにより、マスターノードに障害が発生しても、スタンバイ ノードがサーバー トラフィックを継続できます。

マスターノードに障害が発生した場合、スタンバイ サーバーをマスター サーバーに昇格できます。詳細については、PostgresSQL データベース フェイルオーバーの処理方法をご覧ください。

インストール時にマスター / スタンバイ レプリケーションを構成する

2 つの Postgres ノードの構成ファイルに次のプロパティを追加することで、インストール時にマスター / スタンバイ レプリケーションを構成できます。

PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofNewStandby

インストーラは、2 つの Postgres ノードがレプリケーションのマスター / スタンバイとして機能するように自動的に構成します。

インストール後にマスター / スタンバイ レプリケーションを構成する

インストール後にマスター / スタンバイ レプリケーションを構成するには、次の手順に従います。

  1. どちらの Postgre ノードがマスター サーバーになり、どちらの Postgre ノードがスタンバイ サーバーになるかを決定します。
  2. マスターノードでは、次の設定になるように構成ファイルを編集します。
    PG_MASTER=IPorDNSofNewMaster
        PG_STANDBY=IPorDNSofNewStandby
  3. 新規マスターでレプリケーションを有効にします。
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  4. スタンバイ ノードでは、次の設定になるように構成ファイルを編集します。
    PG_MASTER=IPorDNSofNewMaster
        PG_STANDBY=IPorDNSofNewStandby
  5. スタンバイ ノードを停止します。
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  6. スタンバイ ノードでは、既存の Postgres データをすべて削除します。
    rm -rf /opt/apigee/data/apigee-postgresql/
  7. スタンバイ ノードを構成します。
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile

マスター / スタンバイ レプリケーションをテストする

レプリケーションが完了したら、両方のサーバーで次のスクリプトを発行して、レプリケーションの状態を確認します。レプリケーションが成功していることを確認するには、両方のサーバーで同じ結果が表示されていなければなりません。

  1. マスターノードでは次のスクリプトを実行します。
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    マスターと表示されることを確認します。

  2. スタンバイ ノードでは次のスクリプトを実行します。
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    スタンバイと表示されることを確認します。