Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Solución de problemas del equilibrador de carga clásico: comprobaciones de estado
El balanceador de cargas comprueba el estado de las instancias registradas mediante la configuración de comprobación de estado predeterminada que proporciona ELB o una configuración de comprobación de estado personalizada que tú especifiques. La configuración de comprobación de estado contiene información como el protocolo, el puerto de ping, la ruta de ping, el tiempo de espera de la respuesta y el intervalo de comprobación de estado. Se considera que una instancia se encuentra en buen estado si devuelve el código de respuesta 200 dentro del intervalo de comprobación de estado. Para obtener más información, consulte Comprobación de estado de las instancias del Equilibrador de carga clásico.
Si el estado actual de algunas o todas las instancias es OutOfService y en el campo de descripción se muestra el mensaje Instance has failed at least
the Unhealthy Threshold number of health checks consecutively, significa que las instancias no han superado la comprobación de estado del equilibrador de carga. A continuación se indican los problemas que pueden surgir, sus posibles causas y las medidas que debe adoptar para resolverlos.
Problemas
Error en la página de destino de la comprobación de estado
Problema: una solicitud GET HTTP emitida a la instancia en el puerto de ping y la ruta de ping especificados (por ejemplo, HTTP:80/index.html) ha recibido un código de respuesta distinto de 200.
Causa 1: no se ha configurado ninguna página de destino en la instancia.
Solución 1: cree una página de destino (por ejemplo, index.html) en cada instancia registrada y especifique su ruta como ruta de ping.
Causa 2: no se ha establecido el valor del encabezado Content-Length de la respuesta.
Solución 2: si la respuesta incluye un cuerpo, establezca el encabezado Content-Length en un valor mayor o igual que cero, o bien establezca el valor de Transfer-Encoding en "chunked".
Causa 3: la aplicación no se ha configurado para recibir solicitudes desde el equilibrador de carga o para devolver el código de respuesta 200.
Solución 3: compruebe la aplicación de la instancia para investigar la causa.
Se ha agotado el tiempo de espera de conexión a las instancias
Problema: las solicitudes de comprobación de estado del balanceador de cargas a las EC2 instancias se agotan o fallan de forma intermitente.
En primer lugar, conéctese directamente a la instancia para comprobar el problema. Recomendamos conectarse a la instancia desde la red mediante la dirección IP privada de la instancia.
Utilice el siguiente comando si se trata de una conexión TCP:
telnet private-IP-address-of-the-instance port
Utilice el siguiente comando si se trata de una conexión HTTP o HTTPS:
curl –I private-IP-address-of-the-instance:port/health-check-target-page
Si utilizas una HTTP/HTTPS conexión y recibes una respuesta distinta a 200, consulta. Error en la página de destino de la comprobación de estado Si puede conectarse directamente a la instancia, compruebe lo siguiente:
Causa 1: la instancia no responde dentro del tiempo de espera de respuesta configurado.
Solución 1: ajuste la configuración del tiempo de espera de respuesta en la configuración de comprobación de estado del equilibrador de carga.
Causa 2: la instancia sufre una carga significativa y está tardando más en responder que el tiempo de espera de respuesta configurado.
Solución 2:
-
compruebe el gráfico de monitorización por si la CPU está sobreutilizada. Para obtener más información, consulta Obtener estadísticas de una EC2 instancia específica en la Guía del EC2 usuario de Amazon.
Compruebe el uso de otros recursos de la aplicación, como la memoria o los límites, conectándose a sus EC2 instancias.
Si es necesario, agregue más instancias o habilite el escalado automático. Para obtener más información, consulte la Guía del usuario EC2 de Amazon Auto Scaling.
Causa 3: si utiliza una conexión HTTP o HTTPS y la comprobación de estado se lleva a cabo en una página de destino especificada en el campo de la ruta de ping (por ejemplo, HTTP:80/index.html), puede que la página de destino esté tardando más en responder que el tiempo de espera configurado.
Solución 3: utilice una página de destino de comprobación de estado más sencilla o bien ajuste la configuración del intervalo de comprobación de estado.
Se produce un error al autenticar la clave pública
Problema: se produce un error al autenticar la clave pública en un equilibrador de carga configurado para usar el protocolo HTTPS o SSL con la autenticación back-end habilitada.
Causa: la clave pública del certificado SSL no coincide con la clave pública configurada en el equilibrador de carga. Utilice el comando s_client para ver la lista de certificados de servidor en la cadena de certificados. Para obtener más información, consulte s_client
Solución: es posible que deba actualizar el certificado SSL. Si el certificado SSL está vigente, pruebe a volver a instalarlo en el equilibrador de carga. Para obtener más información, consulte Reemplazo del certificado SSL del equilibrador de carga clásico.
La instancia no recibe tráfico desde el equilibrador de carga
Problema: el grupo de seguridad de la instancia bloquea el tráfico procedente del equilibrador de carga.
Realice una captura de paquetes en la instancia para comprobar el problema. Utilice el siguiente comando :
# tcpdump port health-check-port
Causa 1: el grupo de seguridad asociados con la instancia no permite el tráfico procedente del equilibrador de carga.
Solución 1: edite el grupo de seguridad de la instancia para permitir el tráfico procedente del equilibrador de carga. Agregue una regla para permitir todo el tráfico procedente del grupo de seguridad del equilibrador de carga.
Causa 2: el grupo de seguridad de su balanceador de carga no permite el tráfico a las EC2 instancias.
Solución 2: edita el grupo de seguridad del balanceador de cargas para permitir que el tráfico llegue a las subredes y las instancias. EC2
Para obtener más información acerca de la gestión de grupos de seguridad, consulte Configurar grupos de seguridad para el equilibrador de carga clásico.
Los puertos de la instancia no están abiertos
Problema: la comprobación de estado que el balanceador de cargas envía a la EC2 instancia está bloqueada por el puerto o un firewall.
Ejecute el comando siguiente para comprobar el problema:
netstat –ant
Causa: no está abierto el puerto de estado especificado o el puerto del oyente (si su configuración es distinta). Tanto el puerto especificado para la comprobación de estado como el puerto del oyente deben estar abiertos y a la escucha.
Solución: abra el puerto del oyente y el puerto especificado en la configuración de la comprobación de estado (si su configuración es distinta) en las instancias para recibir el tráfico procedente del equilibrador de carga.
Las instancias de un grupo de escalado automático no superan la comprobación de estado de ELB
Problema: las instancias del grupo de escalado automático superan la comprobación de estado predeterminada de escalado automático pero no la de ELB.
Causa: Auto Scaling utiliza comprobaciones de EC2 estado para detectar problemas de hardware y software con las instancias, pero el balanceador de cargas realiza comprobaciones de estado enviando una solicitud a la instancia y esperando un código de respuesta de 200, o estableciendo una conexión TCP (para una verificación de estado basada en TCP) con la instancia.
Una instancia podría no superar la comprobación de estado de ELB si una aplicación que se ejecuta en la instancia tiene algún problema como consecuencia del cual el equilibrador de carga considera que la instancia se encuentra fuera de servicio. Esta instancia podría superar la comprobación de estado de Auto Scaling; no sería reemplazada por la política de Auto Scaling porque se considera en buen estado según la verificación de EC2 estado.
Solución: utilice la comprobación de estado de ELB para el grupo de escalado automático. Cuando se utiliza la comprobación de estado de ELB, escalado automático verifica los resultados de la comprobación de estado de la instancia y de la comprobación de estado de ELB para determinar el estado de las instancias. Para obtener más información, consulte Añadir comprobaciones de estado de ELB a su grupo de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.