Migre seus grupos do Auto Scaling para modelos de execução - Amazon EC2 Auto Scaling

Migre seus grupos do Auto Scaling para modelos de execução

Desde 1º de janeiro de 2023, não há mais suporte para os novos tipos de instância nas configurações de execução. Isso se aplica a quaisquer tipos de instâncias adicionadas a uma Região da AWS após o lançamento inicial da região. Além disso, talvez você consiga criar uma configuração de execução com um tipo de instância que não tenha mais suporte em uma região. Para obter mais informações, consulte Configurações de execução do Auto Scaling.

Para migrar seus grupos de Auto Scaling de configurações de inicialização para modelos de inicialização, consulte as seguintes etapas.

Importante

Certifique-se de que você tenha as permissões necessárias para trabalhar com modelos de execução. Para obter mais informações, consulte Permissões para trabalhar com modelos de inicialização.

Certifique-se de que os recursos associados à configuração de execução, como grupos de segurança e perfis de instâncias do IAM, não sejam excluídos acidentalmente.

Teste a operação de reversão para garantir que as alterações possam ser revertidas com segurança.

Etapa 1: encontrar grupos do Auto Scaling que usem configurações de execução

Para identificar se você tem grupos do Auto Scaling que ainda estão usando configurações de execução, execute o comando describe-auto-scaling-groups a seguir usando o AWS CLI. Substitua REGIÃO pela sua Região da AWS.

aws autoscaling describe-auto-scaling-groups --region REGION \ --query 'AutoScalingGroups[?LaunchConfigurationName!=`null`]'

O seguinte é um exemplo de saída.

[ { "AutoScalingGroupName": "group-1", "AutoScalingGroupARN": "arn", "LaunchConfigurationName": "my-launch-config", "MinSize": 1, "MaxSize": 5, "DesiredCapacity": 2, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a", "us-west-2b", "us-west-2c" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 300, "Instances": [ { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchConfigurationName": "my-launch-config", "InstanceId": "i-05b4f7d5be44822a6", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "InService" }, { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2b", "LaunchConfigurationName": "my-launch-config", "InstanceId": "i-0c20ac468fa3049e8", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "InService" } ], "CreatedTime": "2023-03-09T22:15:11.611Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "EnabledMetrics": [], "Tags": [ { "ResourceId": "group-1", "ResourceType": "auto-scaling-group", "Key": "environment", "Value": "production", "PropagateAtLaunch": true } ], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN": "arn", "TrafficSources": [] }, ... additional groups ... ]

Como alternativa, para remover tudo, exceto os nomes dos grupos do Auto Scaling com os nomes de suas respectivas configurações de execução e tags na saída, execute o seguinte comando:

aws autoscaling describe-auto-scaling-groups --region REGION \ --query 'AutoScalingGroups[?LaunchConfigurationName!=`null`].{AutoScalingGroupName: AutoScalingGroupName, LaunchConfigurationName: LaunchConfigurationName, Tags: Tags}'

Veja a seguir um exemplo de saída.

[ { "AutoScalingGroupName": "group-1", "LaunchConfigurationName": "my-launch-config", "Tags": [ { "ResourceId": "group-1", "ResourceType": "auto-scaling-group", "Key": "environment", "Value": "production", "PropagateAtLaunch": true } ] }, ... additional groups ... ]

Para obter mais informações sobre filtragem, consulte Filtragem da saída da AWS CLI no Guia do usuário da AWS Command Line Interface.

Etapa 2: copiar uma configuração de execução para um modelo de execução

Você pode copiar uma configuração de execução para um modelo de execução usando o procedimento a seguir. Em seguida, você pode adicioná-lo ao seu grupo do Auto Scaling.

Copiar várias configurações de execução resulta em modelos de execução com nomes idênticos. Para alterar o nome dado a um modelo de execução durante o processo de cópia, é necessário copiar as configurações de execução uma a uma.

nota

O recurso de cópia só está disponível no console.

Para copiar uma configuração de execução para um modelo de execução (console)
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, em Ajuste de escala automático, escolha Grupos do Auto Scaling.

  3. Escolha Configurações de execução na parte superior da página. Quando a confirmação for solicitada, escolha Exibir configurações de lançamento para confirmar que você deseja visualizar a página de Configurações de execução.

  4. Selecione a configuração de execução que você deseja copiar e escolha Copy to launch template, Copy selected (Copiar para modelo de execução, Copiar selecionado). Um novo modelo de execução é criado com o mesmo nome e as mesmas opções da configuração de execução que você selecionou.

  5. Em New launch template name (Novo nome de modelo de execução), você pode usar o nome da configuração de execução (o padrão) ou digitar um novo nome. Os nomes de modelo de execução devem ser exclusivos.

  6. (Opcional) Selecione Criar um grupo do Auto Scaling usando o novo modelo.

    Você pode pular esta etapa para concluir a cópia da configuração de execução. Você não precisa criar um novo grupo do Auto Scaling.

  7. Escolha Copiar.

Para copiar todas as configurações de execução para modelos de execução (console)
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, em Auto Scaling, escolha Launch Configurations (Configurações de execução).

  3. Selecione Copy to launch template, Copy all (Copiar para modelo de execução, Copiar tudo). Isso copia cada configuração de execução na região atual para um novo modelo de execução com o mesmo nome e as mesmas opções.

  4. Escolha Copiar.

Etapa 3: atualizar um grupo do Auto Scaling para usar um modelo de execução

Depois de criar um modelo de execução, você estará pronto para adicioná-lo ao seu grupo do Auto Scaling.

Para atualizar um grupo do Auto Scaling para usar um modelo de execução (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, mostrando informações sobre o grupo selecionado.

  3. Na guia Details (Detalhes), escolha Launch configuration (Configuração de execução), Edit (Editar).

  4. Escolha Switch to launch template (Alternar para modelo de execução).

  5. Em Launch template (Modelo de execução), selecione seu modelo de execução.

  6. Em Version (Versão), selecione a versão do modelo de execução, conforme necessário. Assim quer criar as versões do modelo de execução, poderá escolher se o grupo do Auto Scaling deve usar a versão padrão ou a versão mais recente do modelo de execução ao se ampliar.

  7. Selecione Atualizar.

Para atualizar um grupo do Auto Scaling para usar um modelo de execução (AWS CLI)

O comando update-auto-scaling-group a seguir atualiza o grupo do Auto Scaling especificado para usar a versão inicial do modelo de execução especificado.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='1'

Para obter exemplos de uso de comandos da CLI para atualizar um grupo do Auto Scaling para usar um modelo de execução, consulte Atualizar um grupo do Auto Scaling para usar um modelo de execução.

Etapa 4: substituir suas instâncias

Depois que você substituir a configuração de execução por um modelo de execução, todas as novas instâncias usarão o novo modelo de execução. As instâncias existentes não são afetadas.

Para atualizar as instâncias existentes, você pode iniciar uma atualização de instância para substituir as instâncias em seu grupo do Auto Scaling em vez de substituir manualmente algumas instâncias de cada vez. Para obter mais informações, consulte Use uma atualização de instância para atualizar instâncias em um grupo do Auto Scaling. Se o grupo for grande, uma atualização de instância pode ser particularmente útil.

Como alternativa, você pode permitir que a escalabilidade automática substitua gradualmente as instâncias existentes por novas instâncias com base nas políticas de encerramento do grupo, ou você pode encerrá-las. O encerramento manual força seu grupo do Auto Scaling a lançar novas instâncias para manter a capacidade desejada do grupo. Para obter mais informações, consulte Terminar uma instância no Guia do usuário do Amazon EC2.

Mais informações

Para mais informações, consulte Amazon EC2 Auto Scaling will no longer add support for new EC2 features to Launch Configurations (O Amazon EC2 Auto Scaling não adicionará mais suporte para novos recursos do EC2 para configurações de execução) no Blog AWS Compute.

Para ver um tópico que mostra como migrar pilhas AWS CloudFormation de configurações de execução para modelos de execução, consulte Migre pilhas da AWS CloudFormation para modelos de execução.