Use a proteção de redução da escala horizontalmente da instância para controlar a terminação da instância - Amazon EC2 Auto Scaling

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Use a proteção de redução da escala horizontalmente da instância para controlar a terminação da instância

A proteção de redução da escala horizontalmente da instância lhe dá controle sobre quais instâncias o Amazon EC2 Auto Scaling pode terminar. Um caso de uso comum para esse requisito é escalar workload baseados em contêineres. Para obter mais informações, consulte Projete suas aplicações para lidar com a terminação de instâncias sem problemas.

Por padrão, a proteção de redução de escala horizontalmente da instância é desativada quando você cria um grupo do Auto Scaling Isso significa que o Amazon EC2 Auto Scaling pode terminar qualquer instância no grupo.

É possível proteger as instâncias assim que elas são iniciadas ao habilitar a configuração de proteção contra redução de escala na horizontal de instâncias no seu grupo do Auto Scaling. A proteção de redução de instâncias começa quando o estado da instância é InService. Em seguida, para controlar quais instâncias podem ser encerradas, desabilite a configuração de proteção escalável em instâncias individuais dentro do grupo do Auto Scaling. Ao fazer isso, você pode continuar protegendo determinadas instâncias contra encerramentos indesejados.

Considerações

Veja a seguir algumas considerações ao usar a proteção de redução de escala horizontalmente de instância:

  • Se todas as instâncias de um grupo do Auto Scaling estiverem protegidas contra a redução de escala na horizontal e ocorrer um evento de redução de escala na horizontal, a capacidade desejada será reduzida. No entanto, o grupo do Auto Scaling não pode terminar o número necessário de instâncias até que suas configurações de proteção contra redução de escala na horizontal de instâncias sejam desabilitadas. No Console de gerenciamento da AWS, o histórico de atividades do grupo Auto Scaling inclui a seguinte mensagem se todas as instâncias em um grupo de Auto Scaling estiverem protegidas da escalabilidade quando ocorrer um evento de escalabilidade: Could not scale to desired capacity because all remaining instances are protected from scale in.

  • Se você desvincular uma instância protegida contra redução de escala na horizontal, sua configuração de proteção de redução de instâncias será perdida. Quando a instância é associada ao grupo novamente, ela herda a configuração de proteção de redução de instâncias atual do grupo. Quando o Amazon EC2 Auto Scaling executa uma instância ou move uma instância de um pool ativo para um grupo do Auto Scaling, a instância herda a configuração de proteção contra redução da escala de instâncias na horizontal do grupo do Auto Scaling.

  • A proteção contra redução de escala na horizontal de instâncias não protege as instâncias do Auto Scaling contra o seguinte:

    • Substituição da verificação se a instância não passar nas verificações de integridade. Para obter mais informações, consulte Verificações de integridade para instâncias em um grupo do Auto Scaling.

    • Interrupções de instâncias spot Uma instância spot é encerrada quando a capacidade não está mais disponível ou o preço spot excede seu preço máximo.

    • Reserva de blocos de capacidade O Amazon EC2 recupera as instâncias do bloco de capacidade, mesmo que elas estejam protegidas contra redução de escala horizontalmente.

    • Terminação manual por meio do comando terminate-instance-in-auto-scaling-group. Para obter mais informações, consulte Encerrar uma instância no seu grupo do Auto Scaling (AWS CLI).

    • Terminação manual por meio do console do Amazon EC2, comandos da CLI e operações de API. Para proteger as instâncias do Auto Scaling contra término manual, habilite a proteção contra término do Amazon EC2. (Isso não impede que o Amazon EC2 Auto Scaling termine as instâncias ou a terminação manual por meio do comando terminate-instance-in-auto-scaling-group). Para obter informações sobre como ativar a proteção de terminação do Amazon EC2 em um modelo de execução, consulte Criar um modelo de execução usando configurações avançadas.

Alterar a proteção de redução de escala horizontalmente de um grupo do Auto Scaling

É possível habilitar ou desabilitar a configuração de proteção contra redução de escala na horizontal de instâncias para um grupo do Auto Scaling. Quando você a ativa, todas as novas instâncias iniciadas pelo grupo terão a proteção de redução de escala horizontalmente de instância ativada.

A ativação ou desativação dessa configuração para um grupo do Auto Scaling não afeta as instâncias existentes.

Console
Para ativar a proteção de redução de escala horizontalmente de um novo grupo do Auto Scaling

Ao criar o grupo do Auto Scaling, na página Configure group size and scaling policies (Configurar tamanho do grupo e políticas de escalabilidade), em Instance scale-in protection (Proteção contra redução de escala na horizontal de instâncias), selecione a opção Enable instance scale-in protection (Habilitar proteção contra redução de escala na horizontal de instâncias).

Para ativar ou desativar a proteção de redução de escala horizontalmente para um grupo existente
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/e escolha Auto Scaling Groups no painel de navegação.

  2. Marque a caixa de seleção do seu grupo do Auto Scaling.

    Um painel dividido é aberto na parte inferior da página.

  3. Na guia Detalhes, escolha Configurações avançadas, Editar.

  4. Para Proteção de redução de escala horizontalmente de instância, marque ou desmarque a caixa de seleção Ativar proteção de redução de escala horizontalmente de instância para ativar ou desativar essa opção conforme necessário.

  5. Selecione Atualizar.

AWS CLI
Para ativar a proteção de redução de escala horizontalmente de um novo grupo do Auto Scaling

Use o seguinte comando create-auto-scaling-group para habilitar a proteção de redução de instâncias.

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg --new-instances-protected-from-scale-in ...
Ativar a proteção contra redução de escala na horizontal de instâncias para um grupo

Use o update-auto-scaling-groupcomando a seguir para ativar a proteção de escalabilidade da instância para o grupo de Auto Scaling especificado.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg --new-instances-protected-from-scale-in
Para desativar a proteção de redução de escala horizontalmente para um grupo existente

Use o seguinte comando para desabilitar a proteção de redução de instâncias para o grupo especificado.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg --no-new-instances-protected-from-scale-in

Alterar a proteção de redução de escala horizontalmente de uma instância

Por padrão, uma instância obtém sua configuração de proteção contra redução de escala na horizontal de instâncias de seu grupo do Auto Scaling. No entanto, é possível habilitar ou desabilitar a proteção de redução para uma instância a qualquer momento.

Console
Para ativar ou desativar a proteção de redução de escala horizontalmente para uma instância
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/e escolha Auto Scaling Groups no painel de navegação.

  2. Marque a caixa de seleção ao lado do seu grupo do Auto Scaling.

    Um painel dividido é aberto na parte inferior da página.

  3. Na guia Instance management (Gerenciamento de instâncias), em Instances (Instâncias), selecione uma instância.

  4. Para habilitar a proteção de redução de instâncias, escolha Actions (Ações) e Set scale-in protection (Definir proteção de redução). Quando solicitado, escolha Set scale-in protection (Definir proteção de redução).

  5. Para desabilitar a proteção de redução de instâncias, escolha Actions (Ações) e Remove scale-in protection (Remover proteção de redução). Quando solicitado, escolha Remove Scale In Protection (Remover proteção de redução).

AWS CLI
Como habilitar a proteção de redução de instâncias ()

Use o seguinte comando set-instance-protection para habilitar a proteção de redução para a instância especificada.

aws autoscaling set-instance-protection --instance-ids i-5f2e8a0d --auto-scaling-group-name my-asg --protected-from-scale-in
Para desativar a proteção de redução de escala horizontalmente para uma instância

Use o seguinte comando para desabilitar a proteção de redução para a instância especificada,

aws autoscaling set-instance-protection --instance-ids i-5f2e8a0d --auto-scaling-group-name my-asg --no-protected-from-scale-in
nota

A proteção de redução de escala na horizontal de instâncias não garante que as instâncias não serão terminadas no caso de um erro humano, como, por exemplo, se alguém terminar manualmente uma instância usando o console do Amazon EC2 ou a AWS CLI. Para proteger sua instância contra término acidental, use a proteção contra término do Amazon EC2. No entanto, mesmo com a proteção contra término e a proteção de aumento de escala na horizontal de instâncias habilitadas, os dados salvos no armazenamento da instância podem ser perdidos se uma verificação de integridade determinar que uma instância não está íntegra ou se o próprio grupo for excluído acidentalmente. Como em qualquer ambiente, uma prática recomendada é fazer backup de seus dados com frequência ou sempre que for apropriado para seus requisitos de continuidade de negócios.