Master-Standby-Replikation für Postgres einrichten

Standardmäßig installiert Edge alle Postgres-Knoten im Master-Modus. In Produktionssystemen mit mehreren Postgres-Knoten können Sie diese für die Verwendung der Master-Standby-Replikation konfigurieren. Wenn der ausfallen, kann der Stand-by-Knoten den Traffic weiter verarbeiten.

Sollte der Master-Knoten ausfallen, können Sie den Stand-by-Server zum Master hochstufen. Siehe Umgang mit einem PostgreSQL-Datenbank-Failover für erhalten Sie weitere Informationen.

Master-Standby-Replikation konfigurieren unter Installationszeit

Sie können bei der Installation die Master-Stand-by-Replikation konfigurieren, indem Sie Folgendes einschließen: in der Konfigurationsdatei für die beiden Postgres-Knoten:

PG_MASTER=IPorDNSofNewMaster
PG_STANDBY=IPorDNSofNewStandby

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

Master-Standby-Replikation konfigurieren nach der Installation

Sie können die Master-Stand-by-Replikation nach der Installation mit dem folgenden Befehl konfigurieren: Vorgehensweise:

  1. Ermitteln Sie, welcher Postgre-Knoten der Master und welcher der Standby-Server sein wird.
  2. Bearbeiten Sie auf dem Masterknoten die Konfigurationsdatei, um Folgendes festzulegen:
    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-replication-on-master -f configFile
  4. Bearbeiten Sie auf dem Standby-Knoten die Konfigurationsdatei, um Folgendes festzulegen:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofNewStandby
  5. Halten Sie den Standby-Knoten an:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  6. Löschen Sie auf dem Standby-Knoten alle vorhandenen Postgres-Daten:
    rm -rf /opt/apigee/data/apigee-postgresql/
  7. Konfigurieren Sie den Stand-by-Knoten:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile

Master-Standby-Replikation testen

Prüfen Sie nach Abschluss der Replikation den Replikationsstatus, indem Sie die folgenden Skripts ausgeben auf beiden Servern. Das System sollte auf beiden Servern identische Ergebnisse anzeigen, um sicherzustellen, Replikation erfolgreich:

  1. Führen Sie auf dem Master-Knoten folgenden Befehl aus:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Validieren, dass es sich um den Master handelt.

  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-Modus handelt.