Master-Standby-Replikation für Postgres einrichten

Edge for Private Cloud Version 4.16.09

Standardmäßig installiert Edge alle Postgres-Knoten im Mastermodus. In Produktionssystemen mit mehreren Postgres-Knoten konfigurieren Sie diese jedoch für die Verwendung der Master-Standby-Replikation. So kann der Stand-by-Knoten bei einem Ausfall des Master-Knotens weiter zum Server-Traffic weitergeleitet werden.

Sollte der Master-Knoten einmal ausfallen, können Sie den Stand-by-Server zum Master hochstufen. Weitere Informationen finden Sie unter PostgreSQL-Datenbank-Failover handhaben.

Master-Standby-Replikation bei der Installation konfigurieren

Sie können die Master-Standby-Replikation bei der Installation konfigurieren, indem Sie die folgenden Attribute in die Konfigurationsdatei der beiden Postgres-Knoten aufnehmen:

PG_MASTER=IPorDNSofNewMaster
PG_STANDBY=IPorDNSofNewStandby

Das Installationsprogramm konfiguriert die beiden Postgres-Knoten automatisch so, dass sie als Master-Standby mit Replikation fungieren.

Master-Standby-Replikation nach der Installation konfigurieren

So konfigurieren Sie die Master-Standby-Replikation nach der Installation:

  1. Ermitteln Sie, welcher Postgre-Knoten der Master und welcher der Standby-Server sein wird.
  2. Bearbeiten Sie die Konfigurationsdatei auf dem Master-Knoten wie folgt:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofNewStandby
  3. Aktivieren Sie die Replikation auf dem neuen Master:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql-Setup-Replikation-on-master -f configFIle
  4. Bearbeiten Sie die Konfigurationsdatei auf dem Standby-Knoten wie folgt:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=
    IPorDNSofNewStandby
  5. Beenden Sie den Standby-Knoten:
    > /opt/apigee/apigee-service/bin/apigee-service, apigee-postgresql-Stopp
  6. Löschen Sie auf dem Stand-by-Knoten alle vorhandenen Postgres-Daten:
    > rm -rf /opt/apigee/data/apigee-postgresql/
    Hinweis: Bei Bedarf können Sie diese Daten vor dem Löschen sichern.
  7. Konfigurieren Sie den Standby-Knoten:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql-Setup-replication-on-standby -f configFile

Master-Standby-Replikation testen

Überprüfen Sie nach Abschluss der Replikation den Replikationsstatus, indem Sie die folgenden Skripts auf beiden Servern ausführen. Das System sollte auf beiden Servern identische Ergebnisse anzeigen, um eine erfolgreiche Replikation zu gewährleisten:

  1. Führen Sie auf dem Masterknoten den folgenden Befehl aus:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
    Bestätigen Sie, dass er der Master ist.
  2. Auf dem Standby-Knoten:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
    Prüfen Sie, ob es sich um den Standby-Knoten handelt.