Crear una réplica de solo lectura

Selecciona una versión de la documentación:

Para aumentar el rendimiento de lectura y la disponibilidad, puedes crear un servidor réplica de AlloyDB Omni para un servidor de AlloyDB Omni que ya tengas. Un servidor réplica proporciona un clon de solo lectura de tu servidor de base de datos principal. Actualiza continuamente sus propios datos para reflejar los cambios en los datos de tu servidor principal.

En las siguientes secciones se indican los pasos para configurar el servidor principal de AlloyDB Omni para la replicación, configurar el servidor réplica y verificar el estado de la replicación en el servidor principal.

Configurar el servidor principal para la replicación

  1. Actualiza la configuración de red o del cortafuegos del host de tu servidor principal para que permita el tráfico entrante del host del servidor réplica a través del puerto TCP 5432.

  2. Añade las siguientes líneas al archivo /var/alloydb/config/pg_hba.conf:

    host all                alloydbreplica     IP_RANGE trust
    host replication        alloydbreplica     IP_RANGE trust
    host alloydbmetadata    alloydbmetadata    IP_RANGE trust
    

    Sustituye IP_RANGE por el intervalo 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.

  3. Reinicia el servidor principal:

    sudo alloydb database-server stop
    sudo alloydb database-server start

Crear y configurar el servidor réplica

Para crear y configurar un servidor réplica de AlloyDB Omni, sigue estos pasos:

  1. Instala AlloyDB Omni en el sistema en el que quieras alojar la réplica.

    Cuando ejecutes el comando alloydb database-server install, incluye las marcas específicas para crear una réplica:

    sudo alloydb database-server install \
      --data-dir=DATA_DIR \
      --pg-port=PORT \
      --replica-source-ip=SOURCE_IP \
      --replica-source-port=SOURCE_PORT

    Haz los cambios siguientes:

    • DATA_DIR: la ruta del sistema de archivos que quieres que use esta réplica para su directorio de datos.

    • PORT: el puerto TCP en el que quieres que AlloyDB Omni acepte conexiones. Si no proporciona este valor, AlloyDB Omni aplicará el valor predeterminado 5432.

    • SOURCE_IP: la dirección IP de la instancia principal de AlloyDB Omni desde la que se va a replicar.

    • SOURCE_PORT: el puerto TCP de la instancia principal de AlloyDB Omni desde la que se va a replicar. Si no proporciona este valor, AlloyDB Omni aplicará el valor predeterminado 5432.

  2. Asegúrate de que la réplica tenga conectividad de red con el servidor principal:

    ping SOURCE_IP
  3. Inicia tu réplica:

    sudo alloydb database-server start

Verificar el estado de la replicación en el servidor principal

Para comprobar que la replicación está configurada correctamente, ejecuta el siguiente comando en el host del servidor principal:

  docker exec -it pg-service psql -h localhost -U alloydbadmin -c "select * from pg_stat_replication"

La tabla de salida contiene una fila por cada réplica conectada a tu servidor de base de datos principal.

Una vez que hayas configurado la replicación, todas las inserciones, actualizaciones y eliminaciones de filas en tu servidor de base de datos principal se podrán leer en tu réplica en cuestión de segundos.