En esta página se ofrece una descripción general de la configuración de alta disponibilidad de las instancias de Cloud SQL. Para configurar una instancia nueva para la alta disponibilidad o habilitar la alta disponibilidad en una instancia ya creada, consulta Habilitar e inhabilitar la alta disponibilidad en una instancia.
Descripción general de la configuración de alta disponibilidad
El objetivo de una configuración de alta disponibilidad es reducir los periodos de inactividad cuando una zona o una instancia dejan de estar disponibles. Esto puede ocurrir durante una interrupción zonal o cuando hay un problema de hardware. Con la alta disponibilidad, tus datos siguen estando disponibles para las aplicaciones cliente.
La configuración de alta disponibilidad proporciona redundancia de datos. Una instancia de Cloud SQL configurada para ofrecer alta disponibilidad también se denomina instancia regional y tiene una zona principal y otra secundaria en la región configurada*. En una instancia regional, la configuración se compone de una instancia principal y una instancia de espera. Mediante la replicación síncrona en el disco persistente de cada zona, todas las escrituras realizadas en la instancia principal se replican en los discos de ambas zonas antes de que se confirme una transacción. En caso de que falle una instancia o una zona, la instancia de espera se convierte en la nueva instancia principal. A continuación, se redirige a los usuarios a la nueva instancia principal. Este proceso se denomina conmutación por error.
Después de una conmutación por error, la instancia que la ha recibido sigue siendo la instancia principal, incluso después de que la instancia original vuelva a estar online. Cuando la zona o la instancia que ha sufrido una interrupción vuelve a estar disponible, la instancia principal original se destruye y se vuelve a crear. A continuación, se convierte en la nueva instancia de espera. Si se produce una conmutación por error en el futuro, la nueva instancia principal conmutará por error a la instancia original en la zona original.
Si necesitas que la instancia principal esté en la zona que ha sufrido la interrupción, puedes hacer un restablecimiento. Una conmutación por error realiza los mismos pasos que una conmutación por recuperación, pero en sentido contrario, para redirigir el tráfico a la instancia original. Para realizar una conmutación por recuperación, siga el procedimiento descrito en Iniciar la conmutación por error.
La asistencia para discos persistentes regionales en la configuración de alta disponibilidad de Cloud SQL que tenga al menos una CPU dedicada tiene una cobertura completa del Acuerdo de Nivel de Servicio (SLA). Una instancia configurada con alta disponibilidad cuesta el doble que una instancia independiente. Este precio incluye la CPU, la RAM y el almacenamiento. Para obtener más información, consulta la página de precios.
* Para obtener más información sobre las consideraciones específicas de cada región, consulta Geografía y regiones.
Réplicas de lectura
Si la disponibilidad es un factor importante para tus réplicas de lectura, puedes habilitar la alta disponibilidad en ellas. Cuando asciendes una réplica de este tipo a instancia principal, ya está configurada como una instancia de alta disponibilidad.
Durante una interrupción zonal, el tráfico se detiene para leer las réplicas de esa zona. Cuando la zona vuelva a estar disponible, las réplicas de lectura de la zona reanudarán la replicación desde la instancia principal. Si las réplicas de lectura no se encuentran en una zona que esté sufriendo una interrupción, se conectarán a la instancia de espera cuando se convierta en la instancia principal.
Como práctica recomendada, te sugerimos que coloques algunas de tus réplicas de lectura en una zona diferente a la de las instancias principal y de espera. Por ejemplo, si tienes una instancia principal en la zona A y una instancia de espera en la zona B, coloca una réplica de lectura en la zona C para mejorar la fiabilidad. De esta forma, las réplicas de lectura siguen funcionando aunque la zona de la instancia principal deje de estar disponible. También debes añadir lógica empresarial en la aplicación cliente para enviar lecturas a la instancia principal cuando las réplicas de lectura no estén disponibles.
Información general sobre la conmutación por error
Si una instancia configurada para alta disponibilidad deja de responder, Cloud SQL cambia automáticamente a la instancia de espera para que proporcione los datos. Para ver si se ha producido una conmutación por error, consulta el historial de conmutaciones por error del registro de operaciones.
Consulta más información sobre cómo crear consultas en Explorador de registros. Si necesitas información más detallada sobre una operación, como el usuario que la ha realizado, debes habilitar el registro de auditoría.
Haga clic en las pestañas para ver cómo afecta la conmutación por error a su instancia.
Normal
Conmutación por error
Después de la conmutación por error
Conmutación por recuperación
Proceso
Se sigue el siguiente proceso:
La instancia o la zona principal falla.
Cada segundo, el sistema de latidos detecta si la instancia principal está en buen estado. Si no se detectan varias señales de latido, se inicia la conmutación por error.
La instancia de espera ahora sirve datos al volver a conectarse.
Gracias a una dirección IP estática compartida con la instancia principal, la instancia de espera ahora sirve datos de la zona secundaria.
Requisitos
Para que Cloud SQL permita una conmutación por error, la configuración debe cumplir los siguientes requisitos:
- La instancia principal debe estar en un estado de funcionamiento normal (no detenida, en mantenimiento o realizando una operación de instancia de Cloud SQL de larga duración, como una operación de copia de seguridad).
- La zona secundaria y la instancia de espera deben estar en buen estado. Cuando la instancia de espera no responde, las operaciones de conmutación por error se bloquean. Cuando Cloud SQL repare la instancia de espera y la zona secundaria esté disponible, Cloud SQL permitirá la conmutación por error.
Copia de seguridad y restauración
Te recomendamos que automatices las copias de seguridad para disfrutar de una alta disponibilidad.
Opciones de recuperación para instancias independientes
Cloud SQL no recupera automáticamente las instancias independientes de una interrupción zonal. Para restaurar una instancia que no esté configurada para ofrecer alta disponibilidad en una zona correcta, debes restaurar manualmente las instancias zonales. Puedes recuperar una instancia independiente de una interrupción zonal manualmente mediante una de las siguientes opciones:
Realiza una recuperación a un momento dado de la instancia en una nueva instancia que crees. Para usar esta opción, debes haber habilitado PITR en la instancia zonal antes de la interrupción zonal. Los registros de transacciones de la instancia deben almacenarse en Cloud Storage. Si los registros de transacciones se almacenan en el disco, puedes cambiarlos a Cloud Storage. Para usar esta opción, sigue los pasos que se indican en Realizar PITR en una instancia no disponible.
Si la instancia tiene una réplica de lectura en otra zona, puedes promoverla para que sustituya a la instancia independiente que está sufriendo la interrupción zonal. Para usar esta opción, sigue los pasos que se indican en Promocionar una réplica.
En ambos casos, se aplican las siguientes consideraciones:
Es posible que algunas transacciones recientes confirmadas en la instancia principal no aparezcan en la instancia recién recuperada. El intervalo de tiempo en el que se pueden haber perdido transacciones es el objetivo de punto de recuperación (RPO).
- En el caso de la recuperación PITR, el RPO suele ser de cinco minutos o menos.
- En el caso de la promoción de réplicas de lectura, el RPO varía en función de la carga de trabajo de la base de datos. Para obtener más información sobre cómo monitorizar y reducir el retraso de la replicación, consulta el artículo Retraso de la replicación.
Después de realizar cualquiera de las opciones de restauración, debes volver a configurar los clientes de las instancias que hayan sufrido la interrupción zonal, ya que las instancias recuperadas tendrán direcciones IP y nombres de conexión diferentes.
Aplicaciones e instancias
No hay ninguna diferencia entre trabajar con instancias que no son de alta disponibilidad y con instancias de alta disponibilidad, por lo que no es necesario configurar tu aplicación de ninguna forma concreta. Cuando se produce una conmutación por error, se cierran todas las conexiones existentes a la instancia principal y a las réplicas de lectura, y se tardan unos 60 segundos en restablecer las conexiones a la instancia principal. Tu aplicación se vuelve a conectar con la misma cadena de conexión o dirección IP, por lo que no tienes que actualizarla después de la conmutación por error.
Para ver exactamente cómo afecta la conmutación por error a tus aplicaciones, inicia la conmutación por error manualmente.
Tiempo de inactividad por mantenimiento
Los eventos de mantenimiento afectan a las instancias principales configuradas con alta disponibilidad de la misma forma que a otras instancias. Es posible que las instancias principales no estén disponibles durante un breve periodo. Para obtener más información sobre cómo afecta el mantenimiento a las instancias de alta disponibilidad, consulta Cómo funciona el mantenimiento. Para minimizar el impacto en tu servicio, cambia los ajustes de mantenimiento para controlar cuándo se produce el tiempo de inactividad.
Siguientes pasos
- Habilitar e inhabilitar la alta disponibilidad en una instancia.
- Inicia la conmutación por error.
- Más información sobre cómo gestionar las conexiones de bases de datos
- Consulta más información sobre las regiones y zonas de Cloud SQL.