Puede utilizar Replication Manager Tool Suite y el terminal interactivo de PostgreSQL para comprobar el estado de replicación de nodos individuales en un clúster de alta disponibilidad de la base de datos.
Procedimiento
- Inicie sesión o utilice SSH como root en el sistema operativo de cualquiera de los nodos en ejecución del clúster.
- Cambie el usuario a postgres.
sudo -i -u postgres
- Compruebe el estado de replicación del nodo.
/opt/vmware/vpostgres/current/bin/repmgr -f /opt/vmware/vpostgres/current/etc/repmgr.conf node status
Los resultados del sistema para el nodo principal proporcionan información sobre el nodo, la versión de PostgreSQL y los detalles de replicación. Por ejemplo:Node "bos1-vcloud-static-161-5": PostgreSQL version: 10.9 Total data size: 81 MB Conninfo: host=172.18.36.193 user=repmgr dbname=repmgr connect_timeout=2 Role: primary WAL archiving: off Archive command: (none) Replication connections: 2 (of maximal 10) Replication slots: 0 physical (of maximal 10; 0 missing) Replication lag: n/a
Los resultados del sistema para un nodo en espera proporcionan información sobre el nodo, la versión de PostgreSQL, los detalles de replicación y un nodo ascendente. Por ejemplo:Node "bos1-vcloud-static-161-49": PostgreSQL version: 10.9 Total data size: 83 MB Conninfo: host=172.18.36.191 user=repmgr dbname=repmgr connect_timeout=2 Role: standby WAL archiving: off Archive command: (none) Replication connections: 0 (of maximal 10) Replication slots: 0 physical (of maximal 10; 0 missing) Upstream node: bos1-vcloud-static-161-48 (ID: 683) Replication lag: 0 seconds Last received LSN: 2/D863B4E0 Last replayed LSN: 2/D863B4E0
- (opcional) Si desea obtener información más detallada, utilice el terminal interactivo de PostgreSQL para comprobar el estado de replicación de los nodos.
El terminal interactivo de PostgreSQL puede proporcionar información en torno a si alguno de los registros recibidos de los nodos en espera está desactualizado en relación con los registros que envió el nodo principal.
- Conéctese al terminal de psql.
/opt/vmware/vpostgres/current/bin/psql
- Para expandir la pantalla y facilitar la lectura de los resultados de la consulta, ejecute el comando
set \x
. - Ejecute una consulta de estado de replicación según la función del nodo.
Opción Acción Ejecute una consulta en el nodo principal.
select* from pg_stat_replication;
Ejecute una consulta en un nodo en espera.
select* from pg_stat_wal_receiver;
- Conéctese al terminal de psql.