Controle das instâncias encerradas pelo Amazon ECS
Importante
Você deve ativar a proteção contra redução de escala na horizontal de instâncias do Amazon EC2 Auto Scaling no grupo do Amazon EC2 Auto Scaling para usar o recurso de proteção contra encerramento gerenciado do ajuste de escala automático de cluster.
A proteção gerenciada contra encerramento permite o ajuste de escala automático de cluster para controlar quais instâncias serão encerradas. Quando você usa a proteção gerenciada contra encerramento, o Amazon ECS encerra somente as instâncias do EC2 que não têm tarefas do Amazon ECS em execução. As tarefas executadas por um serviço que use a estratégia de agendamento DAEMON serão ignoradas, e uma instância poderá ser encerrada pelo ajuste de escala automático de clusters mesmo quando a instância estiver executando essas tarefas. Isso ocorre porque todas as instâncias no cluster estão executando essas tarefas.
Primeiro, o Amazon ECS ativa a opção de proteção contra a redução de escala na horizontal de instâncias para as instâncias do EC2 no grupo do Amazon EC2 Auto Scaling. Em seguida, o Amazon ECS coloca as tarefas nas instâncias. Quando todas as tarefas diferentes de daemon são interrompidas em uma instância, o Amazon ECS inicia o processo de redução da escala na horizontal e desativa a proteção contra redução da escala na horizontal para a instância do EC2. O grupo do Amazon EC2 Auto Scaling pode então encerrar a instância.
A proteção contra redução de escala na horizontal de instâncias do Amazon EC2 Auto Scaling controla quais instâncias do EC2 podem ser encerradas pelo Amazon EC2 Auto Scaling. Instâncias com o recurso de redução da escala horizontalmente ativado não podem ser encerradas durante o processo de redução da escala horizontalmente. Para obter mais informações sobre a proteção contra redução de escala na horizontal de instâncias do Amazon EC2 Auto Scaling, consulte Usar a proteção contra redução de escala na horizontal de instâncias no Guia do usuário do Amazon EC2 Auto Scaling.
Você pode definir o percentual de targetCapacity para ter capacidade disponível. Isso ajuda a executar tarefas futuras mais rapidamente porque o grupo do Amazon EC2 Auto Scaling não precisa inicializar mais instâncias. O Amazon ECS usa o valor da capacidade de destino para gerenciar a métrica do CloudWatch criada pelo serviço. O Amazon ECS gerencia a métrica do CloudWatch. O grupo do Amazon EC2 Auto Scaling será tratado como um estado estável para que nenhuma ação de ajuste de escala seja necessária. Os valores podem ser de 0 a 100%. Por exemplo, para configurar o Amazon ECS para manter 10% de capacidade livre sobre a usada pelas tarefas do Amazon ECS, defina o valor de capacidade-alvo como 90%. Considere as informações a seguir quando definir o valor da targetCapacity em um provedor de capacidade.
-
Um valor de
targetCapacityinferior a 100% representa a quantidade de capacidade livre (instâncias do Amazon EC2) que precisam estar presentes no cluster. Capacidade livre significa que não há tarefas em execução. -
Restrições de posicionamento, como zonas de disponibilidade, sem
binpackadicional, forçam o Amazon ECS a acabar executando uma tarefa por cada instância, o que pode não ser o comportamento desejado.
É necessário ativar a proteção contra redução de escala na horizontal de instâncias do Amazon EC2 Auto Scaling no grupo do Amazon EC2 Auto Scaling para usar a proteção contra encerramento gerenciado. Se você não ativar a proteção de redução de escala na horizontal, ativar a proteção contra encerramento gerenciada poderá levar a um comportamento indesejável. Por exemplo, é possível ter instâncias paralisadas em estado de drenagem. Para obter mais informações, consulte Uso de proteção contra redução de escala na horizontal da instância no Guia do usuário do Amazon EC2 Auto Scaling.
Ao usar a proteção contra encerramento com um provedor de capacidade, não execute nenhuma ação manual, como desvincular a instância, no grupo do Amazon EC2 Auto Scaling associado ao provedor de capacidade. Ações manuais podem interromper a operação de redução de escala na horizontal do provedor de capacidade. Se você desvincular uma instância do grupo do Amazon EC2 Auto Scaling, precisará também cancelar o registro da instância desvinculada no cluster do Amazon ECS.