En las siguientes secciones, se proporcionan pasos para configurar tu servidor principal de AlloyDB Omni para la replicación, configurar el servidor de réplica y verificar el estado de la replicación en el servidor principal.
Antes de comenzar
Antes de continuar, instala y configura AlloyDB Omni con el paquete RPM. Para obtener más información, consulta Instala AlloyDB Omni con RPM.
Configura tu servidor principal para la replicación
Actualiza la configuración de red o firewall del host del servidor principal para que permita el tráfico de entrada desde el host del servidor de réplica a través del puerto de Postgres del servidor principal.
Crea un usuario de replicación:
psql -h localhost -U postgres -c "create user REPLICA_USER with replication password 'PASSWORD'; grant pg_read_all_settings to REPLICA_USER;"Agrega las siguientes líneas en el archivo
/DATA_DIR/pg_hba.confdel servidor principal antes dehost all all all scram-sha-256que existe en el archivo:host alloydbmetadata alloydbmetadata IP_RANGE trust host replication REPLICA_USER IP_RANGE scram-sha-256Reemplaza lo siguiente:
IP_RANGE: Es el rango de IP, en notación CIDR, de la subred en la que se encuentra tu máquina de réplica. Por ejemplo,203.0.113.0/24.DATA_DIR: Es la ruta de acceso al directorio de datos del servidor principal.
Reinicia el servidor principal:
sudo systemctl restart alloydbomniPG_VERSION
Crea y configura el servidor de réplica
Para crear y configurar un servidor de réplica de AlloyDB Omni, completa los siguientes pasos:
Asegúrate de que la réplica tenga conectividad de red con el servidor principal:
ping SOURCE_IPReemplaza
SOURCE_IPpor la dirección IP de la instancia principal de AlloyDB Omni desde la que se replicará.Asegúrate de que la réplica pueda conectarse al servidor principal:
psql "host=SOURCE_IP user=REPLICA_USER replication=1" -c "IDENTIFY_SYSTEM;"El resultado debería ser similar al siguiente:
systemid | timeline | xlogpos | dbname ---------------------+----------+-----------+-------- 7376500460465963036 | 1 | 0/454B670 | (1 row)La réplica debe tener una ubicación de almacenamiento persistente en el disco. Debes ejecutar este comando como el usuario
postgres:sudo -u postgres pg_basebackup \ --pgdata=DATA_DIR \ --checkpoint=fast \ --host="SOURCE_IP" \ --port="SOURCE_PORT" \ --username=REPLICA_USER \ --create-slot \ --write-recovery-conf \ --progress \ --slot="SLOT_NAME"Reemplaza lo siguiente:
SOURCE_PORT: Es el puerto TCP de la instancia principal de AlloyDB Omni desde la que se replicará. Si no proporcionas este valor, AlloyDB Omni aplica un valor predeterminado de5432.SLOT_NAME: Es la etiqueta del nombre de la ranura de replicación.DATA_DIR: Es la ruta de acceso al directorio de datos del servidor de réplica.
Inicia tu instancia de réplica:
sudo systemctl start alloydbomniPG_VERSION
Verifica el estado de la replicación en el servidor principal
Para verificar que la replicación esté configurada de forma correcta, ejecuta el siguiente comando en el host del servidor principal:
psql -h localhost -U postgres -c "select * from pg_stat_replication"La tabla de resultados contiene una fila para cada réplica conectada a tu servidor de base de datos principal.
Después de configurar la replicación, todas las inserciones, actualizaciones y eliminaciones de filas en tu servidor de base de datos principal se pueden leer en la réplica en cuestión de segundos.