為 Postgres 設定主要執行個體待命複製功能

根據預設,Edge 會在主要模式下安裝所有 Postgres 節點。但是,在具有多個 Postgres 節點的實際工作環境系統中,您可以將這些節點設為使用主要待命複製功能,這樣一來,當主要節點故障時,待命節點可以繼續處理流量。

如果主要節點發生錯誤,您可以將待命伺服器推送至主要節點。詳情請參閱「處理 PostgreSQL 資料庫容錯移轉」。

在安裝時設定主要待複製功能

您可以在安裝時設定主要待命複製,方法是在兩個 Postgres 節點的設定檔中加入下列屬性:

PG_MASTER=IP_OR_DNS_OF_NEW_PRIMARY
PG_STANDBY=IP_OR_DNS_OF_NEW_STANDBY

安裝程式會自動將兩個 Postgres 節點設為具備複製功能的主要待命節點。

在安裝完成後設定主要待命複製

您可以透過下列程序設定安裝後的主要待命複製功能:

  1. 確認哪些 Postgre 節點是主要節點,也是待命伺服器。
  2. 在主要節點上編輯設定檔以設定:
    PG_MASTER=IP_OR_DNS_OF_NEW_PRIMARY
    PG_STANDBY=IPorDNSofNewStandby
  3. 對新的主要執行個體啟用複製功能:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  4. 在待命節點上編輯設定檔以設定:
    PG_MASTER=IP_OR_DNS_OF_NEW_PRIMARY
    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

    確認這是待命。