Crea una instancia de grupo de lectura asíncrono en Kubernetes

Selecciona una versión de la documentación:

Para aumentar la capacidad de procesamiento de lectura y la disponibilidad de tu clúster de base de datos, puedes crear una instancia de grupo de lectura asíncrona de tu instancia de base de datos. Una instancia de grupo de lectura proporciona un clon de solo lectura de tu instancia de base de datos, lo que garantiza el acceso a los datos incluso si tu instancia de base de datos deja de estar disponible.

Puedes definir la configuración de la instancia de grupo de lectura en el archivo de manifiesto de la instancia de base de datos. Cada instancia del grupo de lectura requiere la creación de un archivo de manifiesto único. Puedes crear hasta 20 instancias de grupos de lectura.

Cada instancia de grupo de lectura ocupa la misma cantidad de almacenamiento que la instancia que replica.

Crea una instancia de grupo de lectura asíncrona

Para crear una instancia de grupo de lectura asíncrona de AlloyDB Omni, completa los siguientes pasos:

  1. Crea el manifiesto de la instancia de base de datos para definir el tipo de instancia de grupo de lectura:

    apiVersion: alloydbomni.dbadmin.goog/v1
    kind: DBInstance
    metadata:
      name: READ_POOL_INSTANCE_NAME
      namespace: NAMESPACE
    spec:
      instanceType: ReadPool
      dbcParent:
        name: DB_CLUSTER_NAME
    

    Reemplaza lo siguiente:

    • READ_POOL_INSTANCE_NAME: Es un nombre para este recurso, por ejemplo, read-pool-instance-1.

    • NAMESPACE: Es el espacio de nombres del clúster de la base de datos.

    • DB_CLUSTER_NAME: Es el nombre del clúster de la base de datos al que pertenece la instancia.

  2. Aplica el manifiesto.

Verifica el estado de la instancia

Para verificar la disponibilidad de la instancia de grupo de lectura, ejecuta el siguiente comando:

  kubectl get dbinstance -n NAMESPACE READ_POOL_INSTANCE_NAME -o jsonpath='{.status.conditions[?(@.type=="Available")].status}'

La respuesta true indica que la instancia de grupo de lectura puede atender consultas, pero es posible que no esté replicando datos de tu instancia de base de datos.

Para verificar el estado de transmisión de la instancia de grupo de lectura, ejecuta el siguiente comando:

  kubectl get dbinstance -n NAMESPACE READ_POOL_INSTANCE_NAME -o jsonpath='{.status.conditions[?(@.type=="Streaming")].status}'

La respuesta true indica que la instancia de grupo de lectura está conectada a tu instancia de base de datos y transmite cambios de forma activa.

Cuando no se puede acceder a la instancia de base de datos, la instancia de grupo de lectura sigue atendiendo las consultas. En este caso, el estado de disponibilidad será true y el estado de transmisión será false.

Después de configurar la instancia de grupo de lectura, todas las inserciones, actualizaciones y eliminaciones de filas en tu instancia se podrán leer en la instancia de grupo de lectura.