Configuração de instâncias de contêiner do Linux no Amazon ECS para receber avisos de instância spot
O Amazon EC2 encerra, interrompe ou coloca a instância spot em hibernação quando o preço spot excede o preço máximo da solicitação ou a capacidade não está mais disponível. O Amazon EC2 fornece um aviso de interrupção de dois minutos de instância spot para ações de terminar e interromper. Ele não fornece o aviso de dois minutos para a ação de hibernação. Se a drenagem da instância spot do Amazon ECS estiver ativada na instância, o Amazon ECS receberá o aviso de interrupção da instância spot e atribuirá a instância ao status DRAINING
.
Importante
O Amazon ECS não recebe um aviso do Amazon EC2 quando as instâncias são removidas pelo rebalanceamento de capacidade do Auto Scaling. Para obter mais informações, consulte Rebalanceamento de capacidade do Amazon EC2 Auto Scaling.
Quando uma instância de contêiner é definida como DRAINING
, o Amazon ECS impede que novas tarefas sejam programadas para posicionamento na instância de contêiner. As tarefas de serviço nas instâncias de contêiner de drenagem que estão com o status de PENDING
são interrompidas imediatamente. Se houver instâncias de contêiner no cluster disponíveis, as tarefas de serviço de substituição serão iniciadas nelas.
Por padrão, a drenagem de instância spot está desativada.
É possível ativar a drenagem de instância spot ao iniciar uma instância. Adicione o script apresentado a seguir ao campo Dados do usuário. Substitua MyCluster
pelo nome do cluster no qual deseja registrar a instância de contêiner.
#!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=
MyCluster
ECS_ENABLE_SPOT_INSTANCE_DRAINING=true EOF
Para ter mais informações, consulte Iniciar uma instância de contêiner do Linux do Amazon ECS.
Para ativar a drenagem de instâncias spot para uma instância de contêiner existente
-
Conecte-se à instância spot pelo SSH.
-
Edite o arquivo
/etc/ecs/ecs.config
e adicione o seguinte:ECS_ENABLE_SPOT_INSTANCE_DRAINING=true
-
Reinicie o serviço
ecs
.-
Para a AMI do Amazon Linux 2 otimizada para o Amazon ECS:
sudo systemctl restart ecs
-
-
(Opcional) É possível verificar se o agente está em execução e consultar algumas informações sobre sua nova instância de contêiner consultando a operação da API de introspecção do agente. Para ter mais informações, consulte Introspecção de contêiner do Amazon ECS.
curl http://localhost:51678/v1/metadata