Ciclo de vida de las tareas de Amazon ECS - Amazon Elastic Container Service

Ciclo de vida de las tareas de Amazon ECS

Cuando una tarea se inicia, ya sea manualmente o como parte de un servicio, puede pasar por diversos estados antes de que finalice por sí misma o se detenga manualmente. Algunas tareas están destinadas a ejecutarse como tareas por lotes que progresan de forma natural de PENDING a RUNNING a STOPPED. Otras tareas, que pueden formar parte de un servicio, están destinadas a seguir en ejecución indefinidamente o a ampliarse o reducirse en función de las necesidades.

Cuando se solicitan cambios de estado de tareas, por ejemplo, detener una tarea o actualizar el recuento deseado de un servicio para ampliarla o reducirla, el agente de contenedor de Amazon ECS realiza el seguimiento de estos cambios como el último estado conocido (lastStatus) y el estado deseado (desiredStatus) de la tarea. Tanto el último estado conocido como el estado deseado de una tarea se pueden ver en la consola o mediante la descripción de la tarea con la API o AWS CLI.

El siguiente diagrama de flujo muestra el flujo del ciclo de vida de la tarea.

Diagrama de los estados del ciclo de vida de las tareas. Los estados son PROVISIONING, PENDING, ACTIVATING, RUNNING, DEACTIVATING, STOPPING.

Estados del ciclo de vida

A continuación se indican las descripciones de cada uno de los estados de ciclo de vida de la tarea.

PROVISIONING

Amazon ECS tiene que realizar pasos adicionales antes de que se lance la tarea. Por ejemplo, para las tareas que utilizan el modo de red awsvpc, la interfaz de red elástica se tiene que aprovisionar.

PENDIENTE

Se trata de un estado de transición en el que Amazon ECS está a la espera de que el agente de contenedor realice otras acciones. Una tarea permanecerá en estado pendiente hasta que haya recursos disponibles para la tarea.

ACTIVATING

Este es un estado de transición en el que Amazon ECS tiene que realizar pasos adicionales después de la tarea se haya lanzado, pero antes de que pueda pasar al estado RUNNING. Este es el estado en el que Amazon ECS extrae las imágenes de los contenedores, crea los contenedores, configura la red de tareas, registra los grupos de destino del equilibrador de carga y configura la detección de servicios.

RUNNING

La tarea se ejecuta correctamente.

DEACTIVATING

Este es un estado de transición en el que Amazon ECS tiene que realizar pasos adicionales antes de que la tarea se haya detenido. Por ejemplo, en el caso de tareas que forman parte de un servicio configurado para utilizar varios grupos de destino de Elastic Load Balancing, durante este estado se produce la anulación del registro del grupo de destino.

STOPPING

Se trata de un estado de transición en el que Amazon ECS está a la espera de que el agente de contenedor realice otras acciones.

Para los contenedores de Linux, el agente de contenedor enviará la señal SIGTERM para notificar que la aplicación debe finalizarse y apagarse y, a continuación, enviará SIGKILL después de esperar la duración de StopTimeout establecida en la definición de tarea.

DEPROVISIONING

Amazon ECS tiene que realizar pasos adicionales después de que la tarea se haya detenido, pero antes de que pase al estado STOPPED. Por ejemplo, para las tareas que utilizan el modo de red awsvpc, la interfaz de red elástica se tiene que desasociar y eliminar.

STOPPED

La tarea se ha detenido correctamente.

Si la tarea se detuvo debido a un error, consulte Visualización de los errores de las tareas detenidas de Amazon ECS.

DELETED

Se trata de un estado de transición en el que se detiene una tarea. Este estado no se muestra en la consola, pero se muestra en describe-tasks.