Saltar al contenido

¿Cómo minimizo el tiempo de inactividad de las aplicaciones y los errores de conexión durante las conmutaciones por error de los clústeres de Amazon Aurora?

3 minutos de lectura
0

Quiero minimizar el tiempo de inactividad de las aplicaciones y los errores de conexión cuando se producen conmutaciones por error en mi clúster de Amazon Aurora de la edición compatible con MySQL.

Resolución

Cuando se produce una conmutación por error en un clúster compatible con Aurora MySQL, es posible que el clúster experimente interrupciones y errores de conexión temporales debido al tiempo de inactividad. Si no has configurado correctamente los ajustes, el tiempo de inactividad de la aplicación se prolongará. Para minimizar el tiempo de inactividad de las aplicaciones durante la conmutación por error, toma las siguientes medidas.

Uso de los puntos de enlace del clúster y del lector

Conéctate a los puntos de enlace del clúster y a los puntos de enlace del lector. La práctica recomendada es no conectarse a puntos de enlace de instancias de base de datos individuales. Los puntos de enlace del clúster y del lector siguen automáticamente los cambios en los roles de la instancia tras la conmutación por error. Utiliza el punto de enlace del clúster para apuntar automáticamente a la instancia de base de datos del escritor actual para las operaciones de lectura y escritura. Utiliza el punto de enlace del lector para apuntar automáticamente a las instancias de base de datos del lector disponibles para las operaciones de lectura.

Cómo establecer un valor TTL de DNS bajo

Si tu aplicación almacena en caché los puntos de enlace DNS de las instancias de base de datos de Amazon Aurora, establece un valor de TTL (time-to-live, periodo de vida) inferior a 30 segundos. El valor de TTL garantiza que los datos DNS obsoletos no se almacenen en caché durante demasiado tiempo después de una conmutación por error, cuando las direcciones IP subyacentes pueden cambiar. Si estableces un valor de TTL demasiado alto, es posible que la aplicación utilice la dirección IP anterior tras una conmutación por error y prolongue los errores de conexión.

Uso del controlador JDBC de AWS

Usa el JDBC (Java Database Connectivity Driver, Controlador de conectividad de bases de datos Java) de AWS para cambiar la conexión a una nueva instancia de base de datos de escritura o lectura sin depender de la propagación del DNS. El controlador puede restablecer rápidamente la conexión. Para obtener más información, consulta AWS JDBC Driver (Controlador JDBC de AWS) en el sitio web de GitHub.

Uso de Amazon RDS Proxy

Utiliza Amazon RDS Proxy para conectarte directamente a las instancias de base de datos. El proxy dirige automáticamente el tráfico a la nueva instancia de base de datos del escritor y minimiza el tiempo de inactividad de las aplicaciones durante las conmutaciones por error. El proxy evita los problemas de almacenamiento en caché de DNS y conserva las conexiones existentes durante una conmutación por error. Amazon RDS Proxy rastrea los roles de las instancias de base de datos en función de los metadatos del clúster sin depender del DNS. El proxy puede ayudar a restaurar rápidamente la conexión y puede ser más rápido que esperar a que se propague el DNS.

Información relacionada

Introducing the Advanced JDBC Wrapper Driver for Amazon Aurora (Presentación del controlador JDBC Wrapper avanzado para Amazon Aurora)

Improve application availability on Amazon Aurora (Mejora de la disponibilidad de las aplicaciones en Amazon Aurora)

OFICIAL DE AWSActualizada hace un año