Ciclo de vida de tarefas do Amazon ECS
Quando uma tarefa é iniciada, manualmente ou como parte de um serviço, ela pode passar por vários estados até terminar sozinha ou ser interrompida manualmente. Algumas tarefas devem ser executadas como trabalhos em lotes que avançam naturalmente de PENDING
para RUNNING
até STOPPED
. Outras tarefas, que podem fazer parte de um serviço, devem continuar sendo executadas indefinidamente ou ser aumentadas e diminuídas conforme necessário.
Quando são solicitadas alterações no status da tarefa, como interromper uma tarefa ou atualizar a contagem desejada de um serviço para aumentá-la ou diminuí-la, o agente de contêiner do Amazon ECS rastreia estas alterações como o último status conhecido (lastStatus
) da tarefa e o status desejado (desiredStatus
) da tarefa. É possível ver o último status conhecido e o status desejado de uma tarefa no console ou descrevendo a tarefa com a API ou a AWS CLI.
O fluxograma abaixo mostra o fluxo do ciclo de vida da tarefa.
Estados do ciclo de vida
A seguir estão as descrições de cada um dos estados do ciclo de vida da tarefa.
- PROVISIONING
-
O Amazon ECS precisa executar etapas adicionais antes que a tarefa seja iniciada. Por exemplo, para as tarefas que usam o modo de rede
awsvpc
, a interface de rede elástica precisa ser provisionada. - PENDING
-
Esse é um estado de transição em que o Amazon ECS está aguardando o agente de contêiner para executar ações adicionais. Uma tarefa permanecerá no estado pendente até que haja recursos disponíveis para ela.
- ACTIVATING
-
Este é um estado de transição onde o Amazon ECS precisa executar etapas adicionais depois que a tarefa é iniciada, mas antes que ela possa fazer a transição para o estado
RUNNING
. Esse é o estado em que o Amazon ECS extrai as imagens do contêiner, cria os contêineres, configura a rede de tarefas, registra os grupos de destino do balanceador de carga e configura a descoberta do serviço. - RUNNING (Em execução)
-
A tarefa está sendo executada com êxito.
- DEACTIVATING
-
Este é um estado de transição onde o Amazon ECS precisa executar etapas adicionais antes que a tarefa seja interrompida. Por exemplo, para tarefas que fazem parte de um serviço que está configurado para usar grupos de destino de Elastic Load Balancing, o cancelamento do registro do grupo de destino ocorre durante esse estado.
- STOPPING
-
Esse é um estado de transição em que o Amazon ECS está aguardando o agente de contêiner para executar ações adicionais.
Para contêineres Linux, o agente de contêiner enviará o sinal
SIGTERM
para notificar que a aplicação precisa ser finalizada ou desligada, em seguida, enviará umSIGKILL
após aguardar a duração deStopTimeout
estabelecida na definição de tarefa. - DEPROVISIONING
-
O Amazon ECS precisa executar etapas adicionais depois que a tarefa é interrompida, mas antes que ela faça a transição para o estado
STOPPED
. Por exemplo, para as tarefas que usam o modo de redeawsvpc
, a interface de rede elástica precisa ser desanexada e excluída. - STOPPED
-
A tarefa foi interrompida com êxito.
Se a tarefa foi interrompida devido a um erro, consulte Visualizar erros de tarefa interrompida do Amazon ECS.
- EXCLUÍDA
-
Esse é um estado de transição quando uma tarefa é interrompida. Esse estado não é exibido no console, mas é exibido no
describe-tasks
.