Criar uma configuração de execução - Amazon EC2 Auto Scaling

Criar uma configuração de execução

Importante

Limitações:

  • Desde 1º de janeiro de 2023 não há mais suporte para os novos tipos de instância do Amazon EC2 nas configurações de execução. Isso inclui suporte para qualquer tipo de instância adicionada a uma Região da AWS após o lançamento inicial da região.

  • As contas criadas em ou após 1º de junho de 2023 não podem criar novas configurações de execução usando o console.

  • As contas criadas em ou após 1º de outubro de 2024 não podem criar novas configurações de execução usando nenhum método (console, API, AWS CLI ou CloudFormation).

Migre para modelos de execução para garantir que você não precise criar novas configurações de execução agora ou no futuro. Para obter informações sobre como migrar seu grupo do Auto Scaling, para lançar modelos, consulte Migre seus grupos do Auto Scaling para modelos de execução.

nota

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. Recomendamos migrar para modelos de execução.

Este tópico descreve como criar uma configuração de inicialização. Fornecemos informações sobre configurações de execução para clientes que ainda não migraram das configurações de execução para os modelos de execução.

Não é possível modificar uma configuração de execução de uma instância após criá-la. Em vez disso, é necessário criar uma nova configuração de inicialização.

Para associar uma nova configuração de inicialização a um grupo do Auto Scaling existente, consulte Alterar a configuração de execução de um grupo do Auto Scaling. Para criar um grupo do Auto Scaling, consulte Criar um grupo do Auto Scaling usando uma configuração de execução

Criar uma configuração de execução

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

  2. Na barra de navegação, selecione sua região da AWS.

  3. No painel de navegação esquerdo, em Auto Scaling, escolha Grupos do Auto Scaling.

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

  5. SelecioneCreate launch configuration (Criar uma configuração de execução), e insira um nome para sua configuração de execução.

  6. Em Amazon machine image (AMI) (Imagem de máquina da Amazon (AMI)), escolha uma AMI. Para escolher uma AMI específica, você pode encontrar uma AMI adequada, anotar seu ID e inserir o ID como critério de pesquisa.

    Para obter a ID da AMI do Amazon Linux 2:

    1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

    2. No painel de navegação esquerdo, em Instâncias, escolha Instâncias e, em seguida, escolha Iniciar instâncias.

    3. Na guia Quick Start (Início rápido) da página Choose an Amazon Machine Image (Escolha uma Imagem de máquina da Amazon), observe o ID da AMI ao lado de Amazon Linux 2 AMI (HVM).

  7. Na etapa Choose Instance Type (Escolher tipo de instância), selecione uma configuração de hardware para suas instâncias.

  8. Em Additional configuration (Configuração adicional), preste atenção aos seguintes campos:

    1. (Opcional) Para Purchasing option (Opção de compra), você pode escolher Request Spot Instances (Solicitar instâncias spot) para solicitar instâncias spot ao preço spot, limitado ao preço sob demanda. Opcionalmente, você pode especificar um preço máximo por hora de instância para suas instâncias spot.

      nota

      As instâncias spot são uma opção econômica em comparação com as instâncias sob demanda, se você puder ser flexível sobre quando suas aplicações são executadas e se for possível interromper suas aplicações. Para obter mais informações, consulte Solicitar instâncias spot para aplicações flexíveis e com tolerância a falhas.

    2. (Opcional) Em IAM instance profile (Perfil de instância do IAM) selecione um perfil a ser associado às instâncias. Para obter mais informações, consulte Perfis do IAM para aplicações que são executadas em instâncias do Amazon EC2.

    3. (Opcional) Em Monitoring (Monitoramento), escolha se as instâncias devem publicar dados métricos em intervalos de 1 minuto no Amazon CloudWatch habilitando o monitoramento detalhado. Aplicam-se cobranças adicionais. Para obter mais informações, consulte Configurar monitoramento para instâncias do Auto Scaling.

    4. (Opcional) Em Advanced details (Detalhes avançados), User data (Dados do usuário), você pode especificar dados do usuário para configurar uma instância durante a execução ou para executar um script de configuração após a instância ser iniciada.

    5. (Opcional) Em Advanced details (Detalhes avançados), IP address type (Tipo de endereço IP), escolha se deseja atribuir um public IP address (endereço IP público) às instâncias do grupo. Se você não definir um valor, o padrão é usar as configurações de IP público de atribuição automática das sub-redes nas quais suas instâncias são iniciadas.

  9. (Opcional) Em Storage (volumes) (Armazenamento - volumes), se não precisar de armazenamento adicional, ignore esta seção. Caso contrário, para especificar os volumes a serem anexados às instâncias, além dos volumes especificados pela AMI, escolha Add new volume (Adicionar novo volume). Em seguida, escolha as opções desejadas e os valores associados para Devices (Dispositivos), Snapshot, Size (Tamanho), Volume type (Tipo de volume), IOPS, Throughput (Taxa de transferência),Delete on termination (Excluir ao término), e Encrypted (Criptografado).

  10. Em Security groups (Grupos de segurança), crie ou selecione o grupo de segurança para associar às instâncias do grupo. Se você mantiver a opção Create a new security group (Criar um novo grupo de segurança) selecionada, uma regra de SSH padrão será configurada para instâncias do Amazon EC2 que executem Linux. Uma função do RDP padrão é configurada para instâncias do Amazon EC2 que executem o Windows.

  11. Em Key pair (login) (Par de chaves - login), escolha uma opção em Key pair options (Opções de par de chaves).

    Se já tiver configurado um par de chaves de instância do Amazon EC2, você pode escolhê-lo aqui.

    Caso você ainda não tenha um par de chaves da instância do Amazon EC2, escolha Create a new key pair (Criar um novo par de chaves) e atribua a ele um nome reconhecível. Escolha Download key pair (Fazer download do par de chaves) para fazer baixar o par de chaves para seu computador.

    Importante

    Não escolha Proceed without a key pair (Continuar sem um par de chaves) se você precisar se conectar à sua instância.

  12. Selecione a caixa de confirmação e escolha Criar configuração de execução.

Para criar uma configuração de inicialização a partir de uma configuração de inicialização existente (console)
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. Na barra de navegação, selecione sua região da AWS.

  3. No painel de navegação esquerdo, em Auto Scaling, escolha Grupos do Auto Scaling.

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

  5. Selecione a configuração de execução e escolha Ações, Copiar configuração de execução. Isso configura uma nova configuração de execução com as mesmas opções da original, mas com "Copy" adicionado ao nome.

  6. Na página Copiar configuração de execução, edite as opções de configuração conforme o necessário e escolha Criar configuração de execução.

Para criar uma configuração de execução usando a linha de comando

Você pode usar um dos comandos a seguir:

Configurar as opções de metadados da instância

O Amazon EC2 Auto Scaling oferece suporte à configuração do Serviço de metadados da instância (IMDS) em configurações de execução. Isso oferece a opção de usar configurações de execução para configurar as instâncias do Amazon EC2 em seus grupos do Auto Scaling para exigir o Instance Metadata Service Version 2 (IMDSv2), que é um método orientado a sessão para solicitar metadados de instância. Para obter detalhes sobre as vantagens do IMDSv2, consulte este artigo no blog da AWS sobre melhorias na adição de defesa profunda ao serviço de metadados da instância do EC2.

Você pode configurar o IMDS para oferecer suporte a IMDSv2 e IMDSv1 (o padrão) ou para exigir o uso de IMDSv2. Se você estiver usando a AWS CLI ou um dos SDKs para configurar o IMDS, é necessário usar a versão mais recente da AWS CLI ou o SDK para exigir o uso do IMDSv2.

Você pode configurar sua configuração de execução para:

  • Exigir o uso do IMDSv2 ao solicitar metadados de instância

  • Especificar o limite de salto de resposta PUT

  • Desativar o acesso aos metadados da instância

Você pode encontrar mais detalhes sobre como configurar o Serviço de metadados da instância no tópico a seguir: Configuração do serviço de metadados da instância no Manual do usuário do Amazon EC2.

Use o seguinte procedimento para configurar as opções do IMDS em uma configuração de execução. Depois de criar sua configuração de execução, você pode associá-la ao seu grupo do Auto Scaling. Se você associar a configuração de execução a um grupo do Auto Scaling existente, a configuração de execução existente será desassociada do grupo do Auto Scaling e as instâncias existentes precisarão ser substituídas para usar as opções de IMDS especificadas na nova configuração de execução. Para obter mais informações, consulte Alterar a configuração de execução de um grupo do Auto Scaling.

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

  2. Na barra de navegação, selecione sua região da AWS.

  3. No painel de navegação esquerdo, em Auto Scaling, escolha Grupos do Auto Scaling.

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

  5. Escolha Create launch configuration (Criar configuração de execução) e crie a configuração de execução da maneira usual. Inclua o ID da Imagem de máquina da Amazon (AMI), o tipo de instância e, opcionalmente, um par de chaves, um ou mais grupos de segurança e quaisquer volumes do EBS adicionais ou volumes de armazenamento de instâncias para suas instâncias.

  6. Para configurar opções de metadados de instância para todas as instâncias associadas a esta configuração de execução, em Additional configuration (Configurações adicionais), em Advanced details (Detalhes avançados), faça o seguinte:

    1. Em Metadata accessible (Metadados acessíveis): escolha se deseja habilitar ou desabilitar o acesso ao endpoint do serviço de metadados da instância. Por padrão, o endpoint de HTTP está habilitado. Se você optar por desabilitar o endpoint, o acesso aos metadados da instância será desativado. Só é possível especificar a condição para exigir IMDSv2 quando o endpoint HTTP estiver habilitado.

    2. Em Metadata version (Versão dos metadados), você pode escolher exigir o uso do Instance Metadata Service Version 2 (IMDSv2) ao solicitar metadados da instância. Se você não especificar um valor, o padrão é oferecer suporte a IMDSv1 e IMDSv2.

    3. Em Metadata token response hop limit (Limite de salto de resposta do token de metadados), você pode definir o número permitido de saltos de rede para o token de metadados. Se você não especificar um valor, o padrão é 1.

  7. Quando tiver concluído, escolha Create a launch configuration (Criar uma configuração de execução).

Para exigir o uso do IMDSv2 em uma configuração de execução usando a AWS CLI

Use o seguinte comando create-launch-configuration com --metadata-options definido como HttpTokens=required. Quando você especifica um valor para HttpTokens, você também deve definir HttpEndpoint como ativado. Como o cabeçalho de token seguro é definido como obrigatório para solicitações de recuperação de metadados, ele opta por exigir o uso do IMDSv2 na instância ao solicitar metadados de instância.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc-with-imdsv2 \ --image-id ami-01e24be29428c15b2 \ --instance-type t2.micro \ ... --metadata-options "HttpEndpoint=enabled,HttpTokens=required"
Como desabilitar o acesso aos metadados da instância

Use o seguinte comando create-launch-configuration para desativar o acesso aos metadados da instância. Você pode habilitar de novo o acesso posteriormente usando o comando modify-instance-metadata-options.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc-with-imds-disabled \ --image-id ami-01e24be29428c15b2 \ --instance-type t2.micro \ ... --metadata-options "HttpEndpoint=disabled"

Criar uma configuração de execução usando uma instância do EC2

A opção para criar uma configuração de execução usando os atributos de uma instância do EC2 em execução está disponível.

Há diferenças entre a criação de uma configuração de execução do zero e a criação de uma configuração de execução a partir de uma instância do EC2. Quando você cria uma configuração de execução do zero, você especifica o ID de imagem, o tipo de instância, os recursos opcionais (como dispositivos de armazenamento) e configurações opcionais (como monitoramento). Quando você cria uma configuração de execução a partir de uma instância em execução, o Amazon EC2 Auto Scaling gera atributos para a configuração de execução a partir da instância especificada. Os atributos são também derivados do mapeamento de dispositivos de blocos para a AMI da qual a instância foi executada, ignorando todos os outros dispositivos de blocos que foram adicionados após a execução.

Ao criar uma configuração de execução usando uma instância em execução, você pode substituir os atributos a seguir especificando-os como parte da mesma solicitação: AMI, dispositivos de blocos, par de chaves, perfil de instância, tipo de instância, kernel, monitoramento de instância, locação de localização, ramdisk, grupos de segurança, preço spot (máximo), dados do usuário, se a instância tem um endereço IP público e se a instância é otimizada para EBS.

nota

Se a instância especificada tiver propriedades que atualmente não são suportadas pelas configurações de execução, as instâncias executadas pelo grupo do Auto Scaling podem não ser idênticas à instância original do EC2.

Importante

A AMI usada para ativar a instância especificada ainda deve existir.

Criar uma configuração de execução a partir de uma instância do EC2 (AWS CLI)

Use o seguinte comando create-launch-configuration para criar uma configuração de execução a partir de uma instância usando os mesmos atributos que a instância. Todos os dispositivos de blocos adicionados após a execução são ignorados.

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance --instance-id i-a8e09d9c

Você pode usar o seguinte comando describe-launch-configurations para descrever a configuração de execução e verificar se os atributos correspondem aos da instância.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance

O seguinte é um exemplo de resposta.

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-05355a6c", "CreatedTime": "2014-12-29T16:14:50.382Z", "BlockDeviceMappings": [], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8422d1eb" ], "LaunchConfigurationName": "my-lc-from-instance", "KernelId": "null", "RamdiskId": null, "InstanceType": "t1.micro", "AssociatePublicIpAddress": true } ] }

Criar uma configuração de execução a partir de uma instância e substituir os dispositivos de blocos (AWS CLI)

Por padrão, o Amazon EC2 Auto Scaling usa os atributos da instância do EC2 que você especifica para criar a configuração de execução. No entanto, os dispositivos de blocos são provenientes da AMI usada para iniciar a instância, não a instância. Para adicionar dispositivos de blocos à configuração de execução, substitua o mapeamento de dispositivos de blocos para a configuração de execução.

Use o seguinte comando create-launch-configuration para criar uma configuração de execução usando uma instância do EC2, mas com um mapeamento de dispositivo de bloco personalizado.

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance-bdm --instance-id i-a8e09d9c \ --block-device-mappings "[{\"DeviceName\":\"/dev/sda1\",\"Ebs\":{\"SnapshotId\":\"snap-3decf207\"}},{\"DeviceName\":\"/dev/sdf\",\"Ebs\":{\"SnapshotId\":\"snap-eed6ac86\"}}]"

Use o seguinte comando describe-launch-configurations para descrever a configuração de execução e verificar se ela usa seu mapeamento de dispositivo de bloco personalizado.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance-bdm

A resposta do exemplo a seguir descreve a configuração de execução.

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-c49c0dac", "CreatedTime": "2015-01-07T14:51:26.065Z", "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "SnapshotId": "snap-3decf207" } }, { "DeviceName": "/dev/sdf", "Ebs": { "SnapshotId": "snap-eed6ac86" } } ], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8637d3e3" ], "LaunchConfigurationName": "my-lc-from-instance-bdm", "KernelId": null, "RamdiskId": null, "InstanceType": "t1.micro", "AssociatePublicIpAddress": true } ] }

Criar uma configuração de execução e substituir o tipo de instância (AWS CLI)

Por padrão, o Amazon EC2 Auto Scaling usa os atributos da instância do EC2 que você especifica para criar a configuração de execução. Dependendo dos seus requisitos, convém substituir atributos da instância e usar os valores que você precisa. Por exemplo, você pode substituir o tipo de instância.

Use o seguinte comando create-launch-configuration para criar uma configuração de execução usando uma instância do EC2, mas com um tipo de instância diferente (t2.medium, por exemplo) da instância (t2.micro, por exemplo).

aws autoscaling create-launch-configuration --launch-configuration-name my-lc-from-instance-changetype \ --instance-id i-a8e09d9c --instance-type t2.medium

Use o seguinte comando describe-launch-configurations para descrever a configuração de execução e verificar se o tipo de instância foi substituído.

aws autoscaling describe-launch-configurations --launch-configuration-names my-lc-from-instance-changetype

A resposta do exemplo a seguir descreve a configuração de execução.

{ "LaunchConfigurations": [ { "UserData": null, "EbsOptimized": false, "LaunchConfigurationARN": "arn", "InstanceMonitoring": { "Enabled": false }, "ImageId": "ami-05355a6c", "CreatedTime": "2014-12-29T16:14:50.382Z", "BlockDeviceMappings": [], "KeyName": "my-key-pair", "SecurityGroups": [ "sg-8422d1eb" ], "LaunchConfigurationName": "my-lc-from-instance-changetype", "KernelId": "null", "RamdiskId": null, "InstanceType": "t2.medium", "AssociatePublicIpAddress": true } ] }