Konfigurowanie replikacji mastera w trybie Postgres

Edge dla chmury prywatnej w wersji 4.18.05

Domyślnie Edge instaluje wszystkie węzły Postgres w trybie głównym. Jednak w systemach produkcyjnych z wieloma węzłami Postgres konfiguruje się je tak, aby korzystały z replikacji master-standby, dzięki czemu w przypadku awarii węzła głównego węzeł rezerwowy może nadal obsługiwać ruch.

Jeśli węzeł główny ulegnie awarii, możesz awansować serwer rezerwowy do roli głównego. Więcej informacji znajdziesz w artykule Obsługa przełączania awaryjnego bazy danych PostgreSQL.

Konfigurowanie replikacji master-standby podczas instalacji

Replikację master-standby możesz skonfigurować podczas instalacji, dodając te właściwości w pliku konfiguracji dla 2 węzłów Postgres:

PG_MASTER=IPorDNSofNewMaster
PG_STANDBY=IPorDNSofNewStandby

Instalator automatycznie konfiguruje 2 węzły Postgres, aby działały jako węzły główny i rezerwowy z replikacją.

Skonfiguruj replikację master-standby po instalacji

Po instalacji możesz skonfigurować replikację master-standby, wykonując te czynności:

  1. Określ, który węzeł Postgres będzie serwerem głównym, a który serwerem rezerwowym.
  2. W węźle głównym zmodyfikuj plik konfiguracji, aby ustawić:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofNewStandby
  3. Włącz replikację w nowej instancji głównej:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  4. Na węźle rezerwowym zmodyfikuj plik konfiguracji, aby ustawić:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofNewStandby
  5. Stop the standby node:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  6. Na węźle rezerwowym usuń wszystkie istniejące dane Postgres:
    rm -rf /opt/apigee/data/apigee-postgresql/
  7. Skonfiguruj węzeł gotowości:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile

Testowanie replikacji podstawowej i zapasowej

Po zakończeniu replikacji sprawdź jej stan, uruchamiając te skrypty na obu serwerach. System powinien wyświetlić identyczne wyniki na obu serwerach, co oznacza, że replikacja się powiodła:

  1. Na węźle głównym uruchom:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Sprawdź, czy jest oznaczony jako główny.

  2. Na węźle rezerwowym:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    Sprawdź, czy jest oznaczony jako zapasowy.