De forma predeterminada, Edge instala todos los nodos de Postgres en modo maestro. Sin embargo, en los sistemas de producción con varios nodos de Postgres, debes configurarlos para que usen la replicación maestra-en espera, de modo que, si falla el nodo maestro, el nodo en espera pueda seguir publicando tráfico.
Si el nodo principal falla, puedes ascender el servidor en espera al principal. Consulta Cómo controlar una conmutación por error de la base de datos de PostgreSQL para obtener más información.
Configura la replicación principal-en espera durante la instalación
Para configurar la replicación maestra-en espera en el momento de la instalación, incluye las siguientes propiedades en el archivo de configuración de los dos nodos de Postgres:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
El instalador configura automáticamente los dos nodos de Postgres para que funcionen como instancia principal en espera con replicación.
Configura la replicación maestra-en espera después de la instalación
Puedes configurar la replicación maestra-en espera después de la instalación con el siguiente procedimiento:
- Identifica qué nodo de Postgre será el principal y cuál será el servidor en espera.
- En el nodo principal, edita el archivo de configuración para establecer lo siguiente:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- Habilita la replicación en el nuevo elemento principal:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- En el nodo en espera, edita el archivo de configuración para establecer lo siguiente:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- Detén el nodo en espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- En el nodo de reserva, borra los datos de Postgres existentes:
rm -rf /opt/apigee/data/apigee-postgresql/
- Configura el nodo en espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
Probar la replicación en espera principal
Cuando se complete la replicación, verifica el estado de la replicación. Para ello, ejecuta las siguientes secuencias de comandos en ambos servidores. El sistema debería mostrar resultados idénticos en ambos servidores para garantizar una replicación correcta:
- En el nodo principal, ejecuta lo siguiente:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Verifica que diga que es la principal.
- En el nodo en espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Verifica que diga que es el modo de espera.