¿Por qué se interrumpieron las conexiones a la base de datos en mi instancia de base de datos de RDS?
Las conexiones a la base de datos de Amazon Relational Database Service (Amazon RDS) se interrumpieron repentinamente, lo que provocó un tiempo de inactividad inesperado. ¿Por qué se interrumpieron las conexiones a la base de datos?
Resolución
Las conexiones a la base de datos de Amazon RDS pueden interrumpirse por varios motivos. Para entender la causa de la interrupción de las conexiones a la base de datos, determine si las conexiones a la base de datos se interrumpieron durante el período de mantenimiento de la instancia de base de datos de RDS o fuera de dicho período.
Si las conexiones a la base de datos se interrumpen durante el período de mantenimiento de RDS
Durante el período de mantenimiento de la instancia de base de datos, AWS lleva a cabo actividades de mantenimiento que pueden provocar la interrupción de las conexiones a la base de datos.
Actualización automática de versiones secundarias (si se habilitó en Amazon RDS)
Si Amazon RDS designa una nueva versión de motor secundaria preferida y la instancia de base de datos ejecuta una versión anterior, Amazon RDS realizará una actualización durante el período de mantenimiento programado si tiene activada la función Actualización automática de versiones secundarias. Esto puede provocar la interrupción de las conexiones a la base de datos durante la actualización de la versión secundaria, ya que cualquier actualización de versiones a nivel del motor implica un tiempo de inactividad de RDS.
Mantenimiento de hardware
Amazon RDS programa el mantenimiento de hardware cuando los hosts subyacentes de las instancias de base de datos se ejecutan en hardwares degradados. El mantenimiento de hardware se lleva a cabo durante el período de mantenimiento configurado para las instancias de base de datos. Antes de que se programe el mantenimiento, recibirá una notificación por correo electrónico sobre los períodos de mantenimiento de hardware programados que incluirá la hora del mantenimiento y las zonas de disponibilidad que se verán afectadas.
Mantenimiento del sistema operativo
Amazon RDS realiza actualizaciones periódicas del sistema operativo subyacente durante el período de mantenimiento configurado para la instancia de base de datos. Si la actualización del sistema operativo implica tiempo de inactividad, Amazon RDS programará el mantenimiento para el siguiente período de mantenimiento. Si la actualización del sistema operativo no requiere mantenimiento, podrá posponer el período de mantenimiento al configurar el período de mantenimiento según sus preferencias. Si se requiere mantenimiento, la actualización del sistema operativo no se podrá posponer y deberá llevarse a cabo en el siguiente período de mantenimiento.
Modificaciones realizadas en Amazon RDS al seleccionar “Aplicar en el siguiente período de mantenimiento”
Al realizar cualquier modificación de la configuración de RDS, puede elegir si desea aplicar las modificaciones inmediatamente o en el siguiente período de mantenimiento. Si decide realizar las modificaciones en el siguiente período de mantenimiento, el tiempo de inactividad no se producirá de inmediato. Las siguientes modificaciones pueden provocar tiempo de inactividad cuando se aplican en el siguiente período de mantenimiento:
- Cambio del nombre de los identificadores de instancias de base de datos
- Modificación de las clases de instancias de base de datos
- Cambio de los períodos de retención de respaldo
- Modificación de los puertos de base de datos
- Cambio de la versión del motor de base de datos
- Incorporación de un nuevo grupo de subredes
Consulte la información de configuración de las instancias de base de datos a fin de comprender la configuración detallada disponible para su modificación junto con el impacto y el tiempo de inactividad de las instancias de base de datos.
Si las conexiones a la base de datos se interrumpen fuera del período de mantenimiento de RDS
Las conexiones a la base de datos pueden interrumpirse si alcanzan el tiempo de espera del lado del cliente o servidor.
Parámetros de tiempo de espera del cliente configurados en la aplicación
Los parámetros de tiempo de espera del cliente configurados en la aplicación pueden provocar la interrupción de las conexiones a la base de datos. Si el tiempo de procesamiento de una consulta es demasiado largo, es posible que la sesión del cliente finalice de forma incorrecta. Para resolver este problema, aumente el tiempo de espera del cliente.
Parámetros de tiempo de espera del servidor configurados en el grupo de parámetros personalizados adjunto a Amazon RDS
El establecimiento de las señales de mantenimiento TCP de forma estricta genera tiempos de espera de conexión de clientes. Los tiempos de espera se producen cuando el cliente se encuentra inactivo durante el tiempo establecido en tcp_keepalives_idle y la cantidad de mensajes establecida en tcp_keepalives_count. También se pueden producir cuando en una conexión se espera una respuesta del servidor mientras se ejecutan consultas de larga duración en la instancia de base de datos.
Si idle_in_transaction_session_timeout se establece en un valor inferior al predeterminado (24 horas), cualquier sesión que haya estado inactiva durante un período de tiempo mayor al período configurado finalizará. Si establece este valor de forma estricta, incluso si las consultas que se ejecutan requieren más tiempo para obtener una respuesta del servidor, la conexión se interrumpirá cuando la sesión permanezca inactiva durante un período de tiempo mayor al período de tiempo de espera configurado.
Reinicio o conmutación por error de la base de datos sin planificación
Un problema transitorio con el hardware subyacente puede provocar la pérdida de comunicación con la instancia de base de datos. Un problema de hardware puede iniciar la conmutación por error en un despliegue multi-AZ y la recuperación en un despliegue single-AZ al reemplazar el host subyacente. Este problema puede haber hecho que la instancia de base de datos no esté en buen estado porque el sistema de monitoreo de RDS no se pudo comunicar con la instancia de RDS para llevar a cabo las comprobaciones de estado.
Un problema de red transitorio afecta al host subyacente de la instancia de base de datos. El sistema de monitoreo interno detecta este problema e inicia de forma proactiva la recuperación para un despliegue single-AZ y la conmutación por error para los despliegues multi-AZ.
La instancia de base de datos deja de responder cuando una carga de base de datos alta provoca una pérdida de memoria en la base de datos que impide que el sistema de monitoreo de RDS contacte con el host subyacente. Para evitar la conmutación por error y el reinicio de las instancias de base de datos debido a la sobrecarga de la base de datos, configure los parámetros de memoria de la instancia de base de datos de forma adecuada.
Un problema transitorio con el subsistema de almacenamiento subyacente puede provocar una latencia elevada para un volumen de Amazon Elastic Block Store (Amazon EBS), que se identifica mediante un sistema de monitoreo interno. Como medida proactiva, el sistema de monitoreo inicia la recuperación para un despliegue single-AZ. En un despliegue multi-AZ, se realiza una conmutación por error al secundario.
Información relacionada
¿Cómo puedo minimizar el tiempo de inactividad durante el mantenimiento necesario de Amazon RDS?
Contenido relevante
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 2 años