¿Por qué Amazon EC2 Auto Scaling no ha finalizado una instancia en mal estado?

7 minutos de lectura
0

He configurado un grupo de escalamiento automático de Amazon Elastic Compute Cloud (Amazon EC2), pero no va a terminar una instancia de Amazon EC2 que no esté en buen estado. ¿Cómo puedo solucionar este problema?

Breve descripción

Amazon EC2 Auto Scaling puede determinar automáticamente el estado de una instancia mediante las comprobaciones de estado de Amazon EC2 y las comprobaciones de estado de Elastic Load Balancing (ELB). Todas las acciones de escalamiento de un grupo de Amazon EC2 Auto Scaling se registran en el historial de actividades de la consola de Amazon EC2. A veces no se puede determinar por qué Amazon EC2 Auto Scaling no ha terminado una instancia en mal estado solamente desde el historial de actividades.

Puede encontrar más información sobre el estado de una instancia en mal estado y sobre cómo terminarla en la consola de Amazon EC2. Compruebe lo siguiente:

  • Periodo de gracia de la comprobación de estado
  • Procesos suspendidos
  • Estado de la instancia en la consola de EC2
  • Estado de la instancia en grupos de escalamiento automático
  • Comprobaciones de estado de ELB

Resolución

Primero, observe el estado de la instancia en Amazon EC2 Auto Scaling:

  1. Inicie sesión en la consola de Amazon EC2. En el panel de navegación, en Auto Scaling, elija Grupos de Auto Scaling y, a continuación, seleccione el grupo de la instancia.
  2. Elija la vista Instancias y anote el estado de la instancia.

Periodo de gracia de la comprobación de estado

Amazon EC2 Auto Scaling no termina una instancia que ha entrado en servicio basándose en las comprobaciones de estado de EC2 y de ELB si no vence el periodo de gracia de la comprobación de estado. Para averiguar la duración del periodo de gracia:

  1. En el panel de navegación de la consola de Amazon EC2, en Auto Scaling, elija Grupos de Auto Scaling y, a continuación, seleccione el grupo de la instancia.
  2. Elija la vista Detalles y anote la duración del Periodo de gracia de la comprobación de estado.

Procesos suspendidos

La suspensión de procesos como HealthCheck, ReplaceUnhealthy o Terminate afecta a la capacidad de Amazon EC2 Auto Scaling para detectar, reemplazar o finalizar instancias en mal estado:

  1. En Auto Scaling, en el panel de navegación de la consola de Amazon EC2, elija Grupos de Auto Scaling y, a continuación, seleccione el grupo de la instancia.
  2. Seleccione la vista Detalles.
  3. Elija Editar y, en Procesos suspendidos, elimine cualquiera de los siguientes procesos si están presentes: HealthCheck, ReplaceUnhealthy o Terminate.
  4. Seleccione Guardar para reanudar los procesos.

Estado de la instancia en la consola de Amazon EC2

Amazon EC2 Auto Scaling no finaliza inmediatamente las instancias con el estado «Deteriorado», sino que espera unos minutos a que se recuperen. Para comprobar si una instancia está deteriorada, siga estos pasos:

  1. En el panel de navegación de la consola de Amazon EC2, en Instancias, elija Instancias y, a continuación, seleccione la instancia.
  2. Seleccione la vista Comprobaciones de estado y observe si el estado de la instancia es Deteriorado.

Amazon EC2 Auto Scaling también podría retrasar o no terminar las instancias que no aporten datos a las comprobaciones de estado. Esto suele ocurrir cuando no hay datos suficientes para las métricas de comprobación de estado en Amazon CloudWatch. Para finalizar estas instancias manualmente:

  1. En el panel de navegación de la consola de Amazon EC2, en Instancias, elija Instancias y, a continuación, seleccione la instancia.
  2. Elija la vista Supervisión y anote el estado de la instancia.
  3. Si el estado es Datos insuficientes, vuelva a seleccionar la instancia, elija el menú Acciones, elija Estado de la instancia y, a continuación, elija Terminar.

Estado de la instancia en el grupo de escalamiento automático

Amazon EC2 Auto Scaling no realiza comprobaciones de estado en las instancias que tengan el estado «En espera». Para volver a establecer las instancias en espera al estado «En servicio»:

  1. En el panel de navegación de la consola de Amazon EC2, en Grupos de Auto Scaling, seleccione el grupo de la instancia y, a continuación, la vista Instancias.
  2. Seleccione el menú de filtro Cualquier estado de ciclo de vida y, a continuación, seleccione En espera.
  3. Para reanudar las comprobaciones de estado, abra el menú contextual de una instancia (clic con el botón derecho) y, a continuación, seleccione Configurar en parámetro En servicio para salir del estado En espera.

Amazon EC2 Auto Scaling espera a terminar una instancia si está esperando a que se complete un enlace de ciclo de vida. Para encontrar el estado del ciclo de vida y completar el enlace de ciclo de vida:

  1. En el panel de navegación de la consola de Amazon EC2, en Auto Scaling, elija Grupos de Auto Scaling y, a continuación, seleccione el grupo de la instancia.
  2. Seleccione la vista Instancias y anote el estado del Ciclo de vida de la instancia.
  3. Si el estado es terminando:wait, puede comprobar el tiempo de espera del latido y, a continuación, ejecute el comando completing-lifecycle-action para completar el enlace de ciclo de vida.

Si Amazon EC2 Auto Scaling espera a que finalice el periodo de drenaje de conexiones de ELB, espera a que finalice la instancia:

  1. En el panel de navegación de la consola de Amazon EC2, en Auto Scaling, elija Grupos de Auto Scaling y, a continuación, seleccione el grupo de la instancia.
  2. Seleccione la vista Instancias y confirme que el Ciclo de vida de la instancia está finalizando.
  3. Elija la vista Historial de actividad.
  4. En Filtrar, seleccione Esperando Connection Draining de ELB para confirmar si el grupo está esperando para terminar la instancia.

Comprobaciones de estado de ELB

La configuración de ELB puede afectar a las comprobaciones de estado y a los reemplazos de instancias. Observe el estado de la instancia en la consola de ELB:

  1. En el panel de navegación de la consola de Amazon EC2, en Balance de carga, elija Equilibradores de carga y, a continuación, seleccione el equilibrador de carga en el que está registrada la instancia.
  2. Seleccione la vista Instancias y anote el estado y la descripción de la instancia.

Amazon EC2 Auto Scaling no utiliza los resultados de las comprobaciones de estado de ELB para determinar el estado de una instancia cuando la configuración de la comprobación de estado del grupo está configurada en EC2. Como resultado, Amazon EC2 Auto Scaling no finaliza las instancias que no superen las comprobaciones de estado de ELB. Si el estado de una instancia es «Fuera de servicio» en la consola de ELB, pero el estado de la instancia es «En buen estado» en la consola de Amazon EC2 Auto Scaling, confirme que el tipo de comprobación de estado esté establecido en ELB:

  1. En el panel de navegación de la consola de Amazon EC2, en Auto Scaling, elija Grupos de Auto Scaling y, a continuación, seleccione el grupo de la instancia.
  2. Elija la vista Detalles y anote el Tipo de comprobación de estado.
  3. Elija Editar, seleccione ELB como Tipo de comprobación de estado y, a continuación, elija Guardar.

Si el tipo de comprobación de estado del grupo ya es ELB y el estado de la instancia en la consola de ELB es «Fuera de servicio», utilice la descripción de estado que ha anotado anteriormente para determinar los pasos adicionales:

  • El registro de instancias aún está en curso: espere a que el equilibrador de carga complete el registro de la instancia y a que la instancia entre en el estado En servicio.
  • La instancia se encuentra en la zona de disponibilidad de Amazon EC2 en la que el equilibrador de carga no está configurado para enrutar el tráfico: edite las subredes del grupo de escalamiento automático o del equilibrador de carga para asegurarse de que son las mismas que las subredes de la instancia.
  • La instancia no ha superado el número configurado de comprobaciones de estado (Umbral en buen estado) consecutivas: espere a que ELB complete las comprobaciones de estado y a que la instancia entre en el estado En servicio.

Información relacionada

Solucionar problemas de las instancias con comprobaciones de estado no superadas

¿Por qué Amazon EC2 Auto Scaling ha terminado una instancia?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años