Configure a proteção contra exclusão para seus recursos do Amazon EC2 Auto Scaling - 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á.

Configure a proteção contra exclusão para seus recursos do Amazon EC2 Auto Scaling

Proteja sua infraestrutura do Amazon EC2 Auto Scaling contra exclusão acidental configurando várias camadas de proteção. O Auto Scaling fornece várias abordagens para evitar a exclusão indesejada de recursos para seus grupos de Auto Scaling e para as instâncias do Amazon EC2 que ele gerencia.

Configurar a proteção contra exclusão de grupos do Auto Scaling

A proteção contra exclusão é uma configuração em nível de recurso que impede que seu grupo Amazon EC2 Auto Scaling seja excluído acidentalmente. Quando ativada, a proteção contra exclusão impede que a operação da DeleteAutoScalingGroupAPI seja bem-sucedida, exigindo que você primeiro atualize a configuração de proteção contra exclusão para um nível menos restritivo antes de excluir o grupo Auto Scaling.

O Amazon EC2 Auto Scaling oferece três níveis de proteção contra exclusão:

Nenhum (padrão)

Nenhuma proteção de exclusão está ativada, o que significa que seu grupo do Auto Scaling pode ser excluído com ou sem o uso ForceDelete da opção. Quando ForceDelete usadas, todas as instâncias do Amazon EC2 gerenciadas pelo seu grupo do Auto Scaling também serão encerradas à força sem executar ganchos do ciclo de vida da rescisão.

Impedir a exclusão forçada

Seu grupo de Auto Scaling não pode ser excluído ao usar a ForceDelete opção. Essa configuração permite a exclusão de grupos vazios do Auto Scaling (grupos sem instâncias). Essa opção é recomendada para cargas de trabalho de produção nas quais você deseja evitar o encerramento em massa de instâncias, mas permitir a limpeza de grupos vazios.

Evitar todas as exclusões

Seu grupo de Auto Scaling não pode ser excluído, independentemente de a ForceDelete opção ser usada. Essa opção oferece a proteção mais forte contra exclusão acidental. É necessário desativar explicitamente a proteção contra exclusão antes que seu grupo do Auto Scaling possa ser excluído. Isso é recomendado para grupos de missão crítica do Auto Scaling que raramente ou nunca devem ser excluídos.

Como funciona a proteção contra exclusão

Quando você tenta a operação da DeleteAutoScalingGroupAPI com a proteção de exclusão ativada:

  1. O Amazon EC2 Auto Scaling valida a configuração de proteção contra exclusão antes de processar a solicitação.

  2. Se o nível de proteção de exclusão configurado bloquear a tentativa de exclusão, o Amazon EC2 Auto Scaling retornará um. ValidationError

  3. Seu grupo de Auto Scaling e suas instâncias do Amazon EC2 permanecem inalterados.

  4. Você deve atualizar a configuração de proteção contra exclusão para um nível menos restritivo antes de excluir seu grupo de Auto Scaling.

A proteção contra exclusão não impede outras operações, como:

  • Atualização da configuração do grupo Auto Scaling.

  • Encerramento de instâncias individuais.

  • Operações de escalonamento (manuais ou automáticas).

  • Suspender ou retomar processos.

Para obter mais informações sobre como lidar normalmente com o encerramento de instâncias, consulte. Projete suas aplicações para lidar com a terminação de instâncias sem problemas

Configurar a proteção contra exclusão

Você pode definir a proteção contra exclusão ao criar um grupo de Auto Scaling ou atualizar a configuração em um grupo de Auto Scaling existente.

Console
Para criar um grupo de Auto Scaling com proteção contra exclusão
  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. Selecione Criar grupo do Auto Scaling.

  3. Conclua as etapas de configuração do seu grupo de Auto Scaling.

  4. Na página Configurar tamanho e escala do grupo, expanda Configurações adicionais.

  5. Para proteção contra exclusão de grupos do Auto Scaling, escolha o nível de proteção desejado:

    • Nenhuma - Sem proteção contra exclusão (padrão)

    • Evitar exclusão forçada - Bloquear operações de exclusão forçada

    • Evitar todas as exclusões - Bloquear todas as operações de exclusão

  6. Conclua as etapas restantes para criar seu grupo de Auto Scaling.

Para atualizar a proteção contra exclusão em um grupo existente do Auto Scaling
  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.

  3. Selecione Ações, Editar.

  4. Em Configurações adicionais, atualize a configuração de proteção contra exclusão de grupos do Auto Scaling.

  5. Selecione Atualizar.

AWS CLI
Para criar um grupo de Auto Scaling com proteção contra exclusão

Use o comando create-auto-scaling-group com o parâmetro --deletion-protection:

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-template,Version='$Latest' \ --min-size 1 \ --max-size 5 \ --desired-capacity 2 \ --vpc-zone-identifier "subnet-12345678,subnet-87654321" \ --deletion-protection prevent-force-deletion

Os valores válidos para --deletion-protection são: none | prevent-force-deletion | prevent-all-deletion

Para atualizar a proteção contra exclusão em um grupo existente do Auto Scaling

Use o comando update-auto-scaling-group:

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --deletion-protection prevent-all-deletion
Para desativar a proteção contra exclusão

Defina a proteção contra exclusão comonone:

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --deletion-protection none
Para verificar o status da proteção contra exclusão

Use o comando describe-auto-scaling-groups:

aws autoscaling describe-auto-scaling-groups \ --auto-scaling-group-names my-asg

Controle as permissões de exclusão com políticas do IAM

Use políticas AWS Identity and Access Management (IAM) para controlar quais usuários e funções podem excluir grupos do Auto Scaling. Os controles baseados em IAM fornecem uma camada adicional de segurança ao restringir as permissões no nível da identidade.

As políticas do IAM são particularmente úteis quando você deseja:

  • Permita que diferentes usuários tenham diferentes níveis de acesso às operações do Auto Scaling.

  • Impeça que usuários específicos usem a ForceDelete opção, mesmo que possam realizar outras operações de Auto Scaling.

  • Restrinja as permissões de exclusão a grupos específicos do Auto Scaling.

A política a seguir permite a exclusão de um grupo do Auto Scaling somente se o grupo tiver a tag environment=development.

JSON
{ "Version":"2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "autoscaling:DeleteAutoScalingGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "development" } } }] }

A política a seguir usa a chave de autoscaling:ForceDelete condição para controlar o acesso à ação DeleteAutoScalingGroup da API. Isso pode impedir que determinados usuários usem a ForceDelete operação, que encerra todas as instâncias do Amazon EC2 dentro de um grupo de Auto Scaling.

JSON
{ "Version":"2012-10-17", "Statement": [{ "Effect": "Deny", "Action": "autoscaling:DeleteAutoScalingGroup", "Resource": "*", "Condition": { "Bool": { "autoscaling:ForceDelete": "true" } } }] }

Como alternativa, se você não estiver usando chaves de condição para controlar o acesso aos grupos do Auto Scaling, você pode especificar o ARNs número de recursos no Resource elemento para controlar o acesso.

A política a seguir dá aos usuários permissões para usar a ação da DeleteAutoScalingGroup API, mas somente para grupos de Auto Scaling cujo nome começa com. devteam-

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "autoscaling:DeleteAutoScalingGroup", "Resource": "arn:aws:autoscaling:us-east-1:111122223333:autoScalingGroup:*:autoScalingGroupName/devteam-*" } ] }

Você também pode especificar vários ARNs colocando-os em uma lista. A inclusão da UUID garante que o acesso seja concedido ao grupo do Auto Scaling específico. O UUID de um novo grupo é diferente do UUID de um grupo excluído com o mesmo nome.

"Resource": [ "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-1", "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-2", "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-3" ]

Para obter exemplos adicionais de políticas do IAM para o Amazon EC2 Auto Scaling, incluindo políticas que controlam as permissões de exclusão, consulte. Exemplos de políticas baseadas em identidade