Por padrão, o Edge instala todos os nós do Postgres no modo mestre. No entanto, em sistemas de produção com vários nós do Postgres, você os configura para usar a replicação mestre-em espera para que, se o nó mestre falhar, o nó em espera possa continuar a exibir o tráfego.
Se o nó mestre falhar, você poderá promover o servidor em espera para mestre. Consulte Como lidar com um failover de banco de dados PostgreSQL para mais informações.
Configurar a replicação mestre-em espera no momento da instalação
É possível configurar a replicação mestre-em espera no momento da instalação incluindo as seguintes propriedades no arquivo de configuração dos dois nós do Postgres:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
O instalador configura automaticamente os dois nós do Postgres para funcionar como mestre-espera com replicação.
Configurar a replicação mestre-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:
- Identifique qual nó do PostgreSQL será o mestre e qual será o servidor em espera.
- No nó mestre, edite o arquivo de configuração para definir:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- Ative a replicação no novo mestre:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- No nó em espera, edite o arquivo de configuração para definir:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- Interrompa o nó em espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- No nó em espera, exclua todos os dados do Postgres:
rm -rf /opt/apigee/data/apigee-postgresql/
- Configure o nó em espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
Testar a replicação mestre-em espera
Após a conclusão da replicação, verifique o status dela emitindo os seguintes scripts em ambos os servidores. O sistema precisa exibir resultados idênticos nos dois servidores para garantir uma replicação bem-sucedida:
- No nó mestre, execute:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Confirme se ele diz que é o mestre.
- No nó em espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Verifique se ele diz que é o de espera.