En esta página, se describe cómo usar la replicación entre regiones a través de la creación y el trabajo con clústeres secundarios.
Para obtener una descripción general conceptual de la replicación entre regiones, consulta Información sobre la replicación entre regiones.
Antes de comenzar
- El proyecto de Google Cloud que usas debe estar habilitado para acceder a AlloyDB.
- Debes tener uno de estos roles de IAM en el proyecto de Google Cloud que usas:
roles/alloydb.admin
(el rol de IAM predefinido de administrador de AlloyDB)roles/owner
(el rol de IAM básico de propietario)roles/editor
(el rol de IAM básico de editor)
Si no tienes ninguno de estos roles, comunícate con el administrador de tu organización para solicitar acceso.
Crear un clúster secundario
Cuando creas un clúster secundario, AlloyDB copia y aplica parte de la configuración del clúster principal, incluida la configuración de la copia de seguridad y la recuperación de un momento determinado (PITR), en el clúster secundario. AlloyDB no agrega ninguna instancia de grupo de lectura al clúster secundario después de crearlo, sin importar cuántas instancias de grupo de lectura existan en el clúster principal.
Si actualizas la configuración del clúster principal después de crear el clúster secundario, los cambios no estarán disponibles en el clúster secundario. Sin embargo, puedes actualizar el clúster secundario de forma manual para que tenga la configuración más reciente que está disponible en el clúster principal.
Para crear un clúster y una instancia secundarios de AlloyDB, sigue estos pasos:
Console
En la consola de Google Cloud, ve a la página Clústeres.
Haz clic en un clúster en la columna Nombre del recurso.
En la página Descripción general, haz clic en Crear clúster secundario.
Configura el clúster secundario:
- En el campo ID de clúster, ingresa un ID de recurso para tu clúster secundario.
- Selecciona una región para tu clúster secundario que sea diferente de la región del clúster principal.
- Selecciona la encriptación predeterminada administrada por Google o una clave administrada por el cliente (CMEK) como método de encriptación para encriptar tu clúster secundario.
Si deseas encriptar este clúster con la clave CMEK, sigue estos pasos:
- Haz clic en Opciones de encriptación avanzadas.
- Selecciona Clave de encriptación administrada por el cliente (CMEK).
Selecciona una clave administrada por el cliente en el menú que aparece.
La consola de Google Cloud limita esta lista a las claves dentro del mismo proyecto y región deGoogle Cloud que el clúster nuevo.
Para usar una clave que no está en esta lista, sigue estos pasos:
- Haz clic en ¿No ves tu clave? Ingresa el nombre del recurso de la clave.
- Ingresa el nombre del recurso en el campo Nombre del recurso de la clave.
- Haz clic en Guardar.
- Haga clic en Continuar.
El uso de la clave CMEK con AlloyDB requiere una configuración adicional. Para obtener más información, consulta Usa CMEK.
Si la instancia principal asociada está encriptada con una clave de CMEK, también debes encriptar su clúster secundario con una clave de CMEK.
Configura tu instancia secundaria:
- En el campo ID de instancia, ingresa un ID de recurso para tu instancia secundaria. El ID del recurso debe ser único dentro de un clúster.
Haga clic en Crear clúster.
gcloud
Para usar gcloud CLI, puedes instalar y, luego, inicializar Google Cloud CLI, o bien usar Cloud Shell.
Usa el comando gcloud alloydb clusters create-secondary
:
gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID \
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \ --cluster=SECONDARY_CLUSTER_ID \ --region=REGION_ID
Reemplaza lo siguiente:
SECONDARY_CLUSTER_ID
: Es el ID del clúster secundario que deseas crear.SECONDARY_INSTANCE_ID
: Es el ID de la instancia secundaria que deseas crear.REGION_ID
: Es el ID de la región del clúster secundario, por ejemplo,us-central1
.PROJECT_ID
: Es el ID del proyecto del clúster secundario.LOCATION_ID
: Es la ubicación en la que se encuentra tu clúster principal, por ejemplo,us-central1
.PRIMARY_CLUSTER_ID
: Es el ID del clúster principal con el que está asociado el clúster secundario.SECONDARY_CLUSTER_ID
: Es el ID del clúster secundario con el que está asociada la instancia secundaria.ALLOWED_PROJECT
(opcional): Es la lista separada por comas de los IDs o números de proyectos a los que deseas permitir el acceso a la instancia, por ejemplo,my-project-1
,12345
,my-project-n
. Debes establecer una lista de proyectos o números permitidos si tu clúster usa Private Service Connect como método de conexión a la instancia.--no-enable-automated-backup
(Opcional): Inhabilita la creación de copias de seguridad automáticas en el clúster secundario.
Para crear un clúster y una instancia secundarios habilitados para Private Service Connect, agrega la marca --enable-private-service-connect
cuando crees un clúster y agrega la marca --allowed-psc-projects
para establecer una lista separada por comas de los IDs de proyecto o los números de proyecto a los que deseas permitir el acceso a la instancia, por ejemplo, my-project-1
, 12345
,my-project-n
.
gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID \ --enable-private-service-connect
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \ --cluster=SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --allowed-psc-projects=ALLOWED_PROJECT_LIST
Reemplaza lo siguiente:
ALLOWED_PROJECT
(opcional): Es la lista separada por comas de los IDs o números de proyectos a los que deseas permitir el acceso a la instancia, por ejemplo,my-project-1
,12345
,my-project-n
. Si tu clúster usa Private Service Connect como método para conectarse a la instancia, debes establecer una lista de proyectos o números permitidos.
Para crear una instancia secundaria para un clúster habilitado para IP pública, agrega el parámetro --assign-inbound-public-ip=ASSIGN_IPV4
.
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \
--cluster=SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--assign-inbound-public-ip=ASSIGN_IPV4
De forma opcional, pasa la lista de bloques CIDR separados por comas, como 64.233.160.0/16
, al parámetro --authorized-external-networks
para establecer redes externas autorizadas en tu instancia.
Cómo ver un clúster secundario
Para ver información detallada sobre un clúster secundario de AlloyDB, sigue estos pasos:
En la consola de Google Cloud, ve a la página Clústeres.
Haz clic en un clúster secundario en la columna Nombre del recurso.
En la página Descripción general, consulta todos los detalles sobre tu clúster secundario.
Actualiza una instancia secundaria
Puedes actualizar una instancia secundaria para agregar, modificar o borrar marcas de base de datos. También puedes escalar el tipo de máquina de tu instancia secundaria.
Configura marcas de base de datos en una instancia secundaria
Para agregar, modificar o borrar marcas de base de datos, completa los siguientes pasos:
Console
En la consola de Google Cloud, ve a la página Clústeres.
En la columna Nombre del recurso, haz clic en un clúster secundario que desees modificar.
En la página Resumen, ve a Instancias en tu clúster, selecciona la instancia secundaria y, luego, haz clic en Editar secundaria.
Agrega, modifica o borra una marca de base de datos de tu instancia:
Cómo agregar una marca
- Para agregar una marca de base de datos a tu instancia, haz clic en Agregar marca.
- Selecciona una marca de la lista Nueva marca de base de datos.
- Proporciona un valor para la marca.
- Haz clic en Listo.
Cómo modificar una marca
- Para modificar una marca de base de datos presente en tu instancia, expande la marca de base de datos y modifica el valor de la marca existente en la sección Editar marca de base de datos.
- Haz clic en Listo.
Cómo borrar una marca
- Para borrar una marca de base de datos de tu instancia, selecciónala y haz clic en el ícono de borrar.
- Haz clic en Listo.
Haz clic en Actualizar secundario.
gcloud
Usa el comando gcloud alloydb instances update
para cambiar las marcas de la base de datos de una instancia secundaria.
gcloud alloydb instances update SECONDARY_INSTANCE_ID \
--database-flags FLAGS_LIST \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
Reemplaza lo siguiente:
SECONDARY_INSTANCE_ID
: Es el ID de la instancia secundaria.FLAGS_LIST
: Es una lista separada por comas de una o más especificaciones de marcas de base de datos. Cada especificación consta del nombre de la marca, un signo igual (=
) y el valor que se asignará a las marcas. Para las marcas de base de datos que no toman valores, proporciona el nombre de la marca seguido de un signo igual (=
).REGION_ID
: Es la región en la que se coloca la instancia secundaria, por ejemplo,us-central1
.CLUSTER_ID
: Es el ID del clúster en el que se coloca la instancia secundaria.PROJECT_ID
: Es el ID del proyecto en el que se coloca el clúster secundario.
Escala el tipo de máquina de tu instancia secundaria
Para escalar el tipo de máquina de tu instancia secundaria, completa los siguientes pasos:
Console
En la consola de Google Cloud, ve a la página Clústeres.
En la columna Nombre del recurso, haz clic en un clúster secundario que desees modificar.
En la página Descripción general, ve a la sección Instancias en tu clúster y haz clic en Editar secundario.
Ten en cuenta que esta acción no está disponible si la página informa un Estado de Mantenimiento para el clúster. La acción volverá a estar disponible cuando el Estado cambie a Listo.
Selecciona un tipo de máquina.
Haz clic en Actualizar secundario.
gcloud
Usa el comando gcloud alloydb instances
update
para cambiar el tipo de máquina de la instancia secundaria.
gcloud alloydb instances update SECONDARY_INSTANCE_ID \
--cpu-count=CPU_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
Reemplaza lo siguiente:
SECONDARY_INSTANCE_ID
: Es el ID de la instancia secundaria que deseas actualizar.CPU_COUNT
: Es la cantidad de CPU virtuales que deseas para la instancia. Estos son algunos de los valores válidos:2
(2 CPU virtuales, 16 GB de RAM)4
(4 CPU virtuales, 32 GB de RAM)8
(8 CPU virtuales, 64 GB de RAM)16
(16 CPU virtuales, 128 GB de RAM)32
(32 CPU virtuales, 256 GB de RAM)64
(64 CPU virtuales, 512 GB de RAM)
REGION_ID: Es la región en la que se coloca la instancia.
CLUSTER_ID: Es el ID del clúster en el que se encuentra la instancia.
PROJECT_ID: Es el ID del proyecto en el que se encuentra el clúster.
Si el comando muestra un mensaje de error que incluye la frase invalid cluster state MAINTENANCE
, significa que el clúster está en mantenimiento de rutina. Esto inhabilita temporalmente la reconfiguración de la instancia. Vuelve a ejecutar el comando después de que el clúster vuelva a un estado READY
.
Para verificar el estado del clúster, consulta Cómo ver los detalles del clúster.
Agrega instancias del grupo de lectura a un clúster secundario
Para agregar una instancia de grupo de lectura a un clúster secundario, sigue estos pasos:
En la consola de Google Cloud, ve a la página Clústeres.
En la columna Nombre del recurso, haz clic en un clúster secundario al que deseas agregar una instancia de grupo de lectura.
En la página Descripción general, ve a la sección Instancias en tu clúster y haz clic en Agregar grupo de lectura.
Configura tu instancia de grupo de lectura:
- En el campo ID de instancia de grupo de lectura, ingresa un ID para la instancia del grupo de lectura.
- En el campo Cantidad de nodos, ingresa una cantidad de nodos. La cantidad de nodos en una instancia de grupo de lectura determina la capacidad de procesamiento general de la instancia. Puedes tener un máximo de 20 nodos en todas las instancias de grupo de lectura de un clúster.
- Selecciona un tipo de máquina.
Opcional: Establece marcas personalizadas en tu instancia. Para cada marca, haz lo siguiente:
- Haz clic en Agregar marca.
- Selecciona una marca de la lista Nueva marca de base de datos.
- Proporciona un valor para la marca.
- Haz clic en Listo.
Haz clic en Agregar grupo de lectura.
Asciende un clúster secundario
Antes de promocionar un clúster secundario, realiza los siguientes pasos para verificar que el clúster secundario haya aplicado todas las transacciones recibidas del clúster principal:
- Detén todas las operaciones de escritura en el clúster principal.
Para verificar el estado de replicación del clúster secundario, completa los siguientes pasos:
En la consola de Google Cloud, ve a la página Clústeres.
En la lista de clústeres, haz clic en el nombre del clúster secundario que deseas promocionar.
En la página de detalles del clúster, haz clic en Supervisión.
En la lista Supervisión, selecciona la instancia secundaria. Aparece en la lista como Secundaria: INSTANCE_NAME.
En la lista de métricas, busca el gráfico Retraso de la replicación de la instancia principal.
Confirma que el gráfico muestre un retraso mínimo.
Un valor de retraso de
0
es ideal. Si el retraso es mayor que0
, puedes promocionar el clúster secundario, con el riesgo de perder algunas transacciones recientes que ya se confirmaron en el clúster principal.En la lista de métricas, busca el gráfico Estado de replicación.
Confirma que todos los nodos representados en el gráfico tengan un valor de
streaming
.
Para ascender un clúster secundario a clúster principal, sigue estos pasos:
Console
En la consola de Google Cloud, ve a la página Clústeres.
En la columna Nombre del recurso, haz clic en un clúster secundario que deseas promocionar como clúster principal.
En la página Descripción general, haz clic en Promocionar clúster.
En el cuadro de diálogo que aparece, ingresa el ID del clúster secundario para confirmar que deseas promocionarlo.
Haz clic en Ascender.
Después de que se promocione el clúster, el campo Tipo: Clúster secundario (con alta disponibilidad) en la página Descripción general se actualizará a Tipo: Alta disponibilidad con grupos de lectura.
gcloud
Usa el comando gcloud alloydb clusters promote
:
gcloud alloydb clusters promote SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--project=PROJECT_ID \
Reemplaza lo siguiente:
SECONDARY_CLUSTER_ID
: Es el ID del clúster secundario que deseas ascender.REGION_ID
: Es el ID de la región del clúster secundario, por ejemplo,us-central1
.PROJECT_ID
: Es el ID del proyecto del clúster secundario.
Realiza un cambio
Antes de realizar una conmutación por error, verifica que ambas regiones a las que pertenecen las instancias principal y secundaria estén en línea y que las instancias estén en buen estado. Para obtener más información, consulta Supervisa una instancia con el panel de Estadísticas del sistema de AlloyDB.
Usa el comando gcloud alloydb clusters
switchover
:
gcloud alloydb clusters switchover SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--project=PROJECT_ID \
Reemplaza lo siguiente:
SECONDARY_CLUSTER_ID
: Es el ID del clúster secundario que deseas ascender.REGION_ID
: Es el ID de la región del clúster secundario, por ejemplo,us-central1
.PROJECT_ID
: Es el ID del proyecto del clúster secundario.