Crea una réplica de solo lectura

Para aumentar la capacidad de procesamiento de lectura y la disponibilidad, puedes crear un servidor de réplica de AlloyDB Omni para un servidor de AlloyDB Omni existente. Un servidor de réplica proporciona una clon de solo lectura de tu servidor de base de datos principal. Actualiza sus propios datos de forma continua para reflejar los cambios en los datos de tu servidor principal.

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

Configura tu servidor principal para la replicación

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

  2. Agrega las siguientes líneas en el 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
    

    Reemplaza IP_RANGE por 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

  3. Reinicia el servidor principal:

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

Crea y configura el servidor de réplica

Para crear y configurar un servidor de réplicas de AlloyDB Omni, completa los siguientes pasos:

  1. Instala AlloyDB Omni en el sistema en el que deseas 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

    Reemplaza lo siguiente:

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

    • PORT: Es el puerto TCP en el que deseas que AlloyDB Omni acepte conexiones. Si no proporcionas este valor, AlloyDB Omni aplica un valor predeterminado de 5432.

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

    • 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 de 5432.

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

    ping SOURCE_IP
  3. Inicia la réplica:

    sudo alloydb database-server start

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

Para verificar 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 resultados contiene una fila para cada réplica conectada a tu servidor de base de datos primario.

Después de configurar la replicación, todas las inserciones, actualizaciones y eliminaciones de filas en el servidor de base de datos principal se pueden leer en la réplica en cuestión de segundos.