為 Postgres 設定主副本複製功能

私有雲的邊緣 4.16.05 版

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

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

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

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

PG_MASTER=IPorDNSofNewMaster
PG_STANDBY=IPorDNSofNewStandby

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

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

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

  1. 確認哪些 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
    確認該節點顯示為待命。