Configurar a replicação de espera primária para Postgres

Por padrão, o Edge instala todos os nós do Postgres no modo principal. No entanto, nos sistemas de produção com vários nós do Postgres, você os configura para usar a replicação principal em espera. Assim, se o nó principal falhar, o de espera possa continuar a disponibilizar o tráfego.

Se o nó principal falhar, você pode promover o servidor em espera a principal. Para mais informações, consulte Como lidar com o failover do banco de dados PostgreSQL.

Configurar a replicação em espera primária no momento da instalação

É possível configurar a replicação em espera principal no momento da instalação incluindo as seguintes propriedades no arquivo de configuração dos dois nós do Postgres:

PG_MASTER=IP_OR_DNS_OF_NEW_PRIMARY
PG_STANDBY=IP_OR_DNS_OF_NEW_STANDBY

O instalador configura automaticamente os dois nós do Postgres para funcionar como no modo de espera principal com replicação.

Configurar a replicação primária em espera após a instalação

É possível configurar a replicação de espera principal após a instalação usando o seguinte procedimento:

  1. Identifique qual nó do Postgre será o principal e o servidor em espera.
  2. No nó principal, edite o arquivo de configuração para definir:
    PG_MASTER=IP_OR_DNS_OF_NEW_PRIMARY
    PG_STANDBY=IPorDNSofNewStandby
  3. Ativar a replicação na nova instância principal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  4. No nó de espera, edite o arquivo de configuração para definir:
    PG_MASTER=IP_OR_DNS_OF_NEW_PRIMARY
    PG_STANDBY=IPorDNSofNewStandby
  5. Pare o nó de espera:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  6. No nó de espera, exclua todos os dados do Postgres:
    rm -rf /opt/apigee/data/apigee-postgresql/
  7. Configure o nó de espera:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile

Testar a replicação primária em espera

Após a conclusão da replicação, verifique o status dela emitindo os scripts a seguir nos dois servidores. O sistema precisa exibir resultados idênticos nos dois servidores para garantir uma replicação bem-sucedida:

  1. No nó principal, execute:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Confira se ela é a principal.

  2. No nó de espera:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    Confirme se ele diz que é o de espera.