Configuración de instancias de contenedor de Linux de Amazon ECS para recibir avisos de instancias de spot - Amazon Elastic Container Service

Configuración de instancias de contenedor de Linux de Amazon ECS para recibir avisos de instancias de spot

Amazon EC2 termina, detiene o hiberna la instancia de spot cuando el precio de spot supera el precio máximo de su solicitud o cuando ya no hay más capacidad. Amazon EC2 envía un aviso de interrupción de dos minutos de la instancia de spot para la terminación y la detención de acciones. No proporciona el aviso de dos minutos para la acción de hibernación. Si el drenaje de instancias de spot de Amazon ECS está activado en la instancia, Amazon ECS recibe el aviso de interrupción de la instancia de spot y coloca la instancia en el estado DRAINING.

importante

Amazon ECS no recibe ningún aviso de Amazon EC2 cuando Auto Scaling Capacity Rebalancing elimina las instancias. Para obtener más información, consulte Reequilibrio de la capacidad de Amazon EC2 Auto Scaling.

Cuando se establece una instancia de contenedor en DRAINING, Amazon ECS evita que se programen nuevas tareas para su ubicación en la instancia de contenedor. Las tareas de servicio en la instancia de contenedor que se está vaciando que están en el estado PENDING se paran de inmediato. Si hay instancias de contenedor en el clúster que están disponibles, las tareas de servicio de sustitución se inician en ellas.

El drenaje de instancias de spot está desactivado de forma predeterminada.

Puede activar el drenaje de instancias de spot al lanzar una instancia. Agregue el script siguiente en el campo Datos de usuario. Reemplace MyCluster por el nombre del clúster en el que se va a registrar la instancia de contenedor.

#!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=MyCluster ECS_ENABLE_SPOT_INSTANCE_DRAINING=true EOF

Para obtener más información, consulte Lanzamiento de una instancia de contenedor de Linux de Amazon ECS.

Para activar el vaciado de instancias de spot para una instancia de contenedor existente
  1. Conéctese a la instancia de spot a través de SSH.

  2. Edite el archivo /etc/ecs/ecs.config y añada lo siguiente:

    ECS_ENABLE_SPOT_INSTANCE_DRAINING=true
  3. Reinicie el servicio ecs.

    • Para la AMI de Amazon Linux 2 optimizada para Amazon ECS:

      sudo systemctl restart ecs
  4. (Opcional) Puede verificar que el agente se está ejecutando y ver información acerca de la nueva instancia de contenedor consultando la operación de la API de introspección del agente. Para obtener más información, consulte Introspección de contenedor de Amazon ECS.

    curl http://localhost:51678/v1/metadata