Usar proteção de redução na escala na horizontal de instâncias - Amazon EC2 Auto Scaling

Usar proteção de redução na escala na horizontal de instâncias

Para determinar se o grupo do Auto Scaling pode terminar uma instância específica na redução de escala na horizontal, use a proteção contra redução de escala na horizontal de instâncias. É possível habilitar a configuração de proteção contra redução de escala na horizontal de instâncias em um grupo do Auto Scaling ou em uma instância individual do Auto Scaling. Quando o Amazon EC2 Auto Scaling executa uma instância ou move uma instância de um grupo de alta atividade 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. É possível alterar a configuração de proteção contra redução de escala na horizontal de instâncias de um grupo do Auto Scaling ou de uma instância do Auto Scaling a qualquer momento.

A proteção de redução de instâncias começa quando o estado da instância é InService. 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.

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:

  • Término manual por meio do console do Amazon EC2, o comando terminate-instances ou a ação TerminateInstances. Para proteger as instâncias do Auto Scaling contra término manual, habilite a proteção contra término do Amazon EC2. Para obter mais informações, consulte Ativação de proteção contra término no Manual do usuário do Amazon EC2 para instâncias do Linux.

  • Substituição da verificação se a instância não passar nas verificações de integridade. Para mais informações, consulte Verificações de integridade para instâncias 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.

nota

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 AWS Management Console, o Activity history (Histórico de atividades) para o grupo do Auto Scaling inclui a seguinte mensagem se todas as instâncias em um grupo do Auto Scaling estiverem protegidas contra a redução da escala na horizontal quando ocorrer um evento de redução de escala na horizontal: Could not scale to desired capacity because all remaining instances are protected from scale-in.

Ativar a proteção contra redução de escala na horizontal de instâncias para um grupo

É possível habilitar a proteção contra redução de escala na horizontal de instâncias ao criar um grupo do Auto Scaling. Por padrão, a proteção de redução de instâncias permanece desabilitada.

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

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).

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

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

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg --new-instances-protected-from-scale-in ...

Modificar a configuração de proteção contra redução de escala na horizontal de instâncias para um grupo

É 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 a configuração de proteção de redução da instância estiver habilitada, todas as novas instâncias executadas após habilitá-la terão a proteção de redução da instância habilitada. As instâncias executadas anteriormente não são protegidas contra redução de escala na horizontal, a menos que você habilite a configuração de proteção contra redução de escala na horizontal de instâncias para cada instância individualmente.

Como alterar a configuração de proteção de redução de instâncias para um grupo (console)

  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/ e escolha grupos do Auto Scaling 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 Auto Scaling groups (Grupos do Auto Scaling).

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

  4. Em Proteção contra redução de instâncias, selecione Habilitar a proteção contra redução de instâncias.

  5. Escolha Update (Atualizar).

Como alterar a configuração de proteção de redução de instâncias para um grupo (AWS CLI)

Use o seguinte comando update-auto-scaling-group para habilitar a proteção contra redução de escala na horizontal de instâncias para o grupo do Auto Scaling especificado.

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

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

Modificar a configuração de proteção contra redução de escala na horizontal de instâncias para 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.

Como alterar a configuração de proteção de redução de instâncias para uma instância (console)

  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/ e escolha grupos do Auto Scaling 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 Auto Scaling groups (Grupos do Auto Scaling).

  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).

Como alterar a configuração de proteção de redução de instâncias para uma instância (AWS CLI)

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

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

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