Executar instâncias do Ec2 usando um modelo de execução - Amazon Elastic Compute Cloud

Executar instâncias do Ec2 usando um modelo de execução

Um modelo de execução do Amazon EC2 armazena parâmetros de execução de instâncias para que não seja necessário especificá-los sempre que executar uma instância.

Vários serviços de execução de instâncias podem, opcionalmente, usar modelos de execução ao executar instâncias, enquanto para outros serviços, como o EC2 Fleet, as instâncias não podem ser executadas a menos que um modelo de execução seja usado. Este tópico descreve como usar um modelo de inicialização ao iniciar uma instância usando o assistente de inicialização de instâncias do EC2, o Amazon EC2 Auto Scaling, a Frota do EC2 e a frota spot.

Para obter mas informações sobre modelos de execução, incluindo como criar um modelo de execução, consulte Armazenar os parâmetros de execução de instâncias nos modelos de execução do Amazon EC2.

Executar uma instância do Amazon EC2 usando um modelo de execução

Você pode usar os parâmetros incluídos em um modelo de execução para executar uma instância do Amazon EC2. Depois de selecionar o modelo de execução, mas antes de executar a instância, você pode modificar os parâmetros de execução.

As instâncias executadas por meio de um modelo de execução recebem automaticamente duas tags com as chaves aws:ec2launchtemplate:id e aws:ec2launchtemplate:version. Você não pode remover ou editar essas tags.

Console
Para executar uma instância usando um modelo de execução
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. Use uma das seguintes opções para selecionar o modelo de execução:

    • No painel do console do Amazon EC2, escolha a seta para baixo ao lado de Executar instância e depois Executar instância no modelo. Em Modelo de origem, selecione um modelo de execução.

    • No painel de navegação, escolha Modelos de execução, selecione o modelo de execução e, então, escolha Ações, Executar instância no modelo.

  3. Em Source template version (Versão do modelo de origem), selecione a versão do modelo de execução a ser usado.

  4. (Opcional) Você pode modificar os valores de qualquer um dos parâmetros de execução. Se você não modificar um valor, o sistema usará o valor definido pelo modelo de execução. Se nenhum valor foi especificado no modelo de execução, o valor padrão do parâmetro será usado.

  5. No painel Resumo, em Número de instâncias, especifique o número de instâncias a serem executadas.

  6. Escolha Iniciar instância.

    Se a instância não executar ou o estado passar imediatamente para terminated, em vez de running, consulte Solucionar problemas de inicialização de instâncias do Amazon EC2.

AWS CLI
Para executar uma instância em um modelo de execução
  • Use o comando run-instances e especifique o parâmetro --launch-template. Se desejar, especifique a versão de modelo de execução a ser usada. Se você não especificar a versão, a versão padrão será usada.

    aws ec2 run-instances \ --launch-template LaunchTemplateId=lt-0abcd290751193123,Version=1
  • Para substituir um parâmetro de modelo de execução, especifique o parâmetro no comando run-instances. O exemplo a seguir substitui o tipo de instância especificado no modelo de execução (se houver algum).

    aws ec2 run-instances \ --launch-template LaunchTemplateId=lt-0abcd290751193123 \ --instance-type t2.small
  • Se você especificar um parâmetro aninhado que faça parte de uma estrutura complexa, a instância será executada por meio da estrutura complexa conforme especificado no modelo de execução, além de quaisquer parâmetros aninhados adicionais que você especificar.

    No exemplo a seguir, a instância é executada com a tag Owner=TeamA, bem como com quaisquer outras tags especificadas no modelo de execução. Se o modelo de execução tiver uma tag com uma chave Owner, o valor será substituído por TeamA.

    aws ec2 run-instances \ --launch-template LaunchTemplateId=lt-0abcd290751193123 \ --tag-specifications "ResourceType=instance,Tags=[{Key=Owner,Value=TeamA}]"

    No exemplo a seguir, a instância é executada com um volume com o nome de dispositivo /dev/xvdb, bem como com quaisquer outros mapeamentos de dispositivos de blocos especificados no modelo de execução. Se o modelo de execução tiver um volume existente definido para /dev/xvdb, seus valores serão substituídos pelos valores especificados.

    aws ec2 run-instances \ --launch-template LaunchTemplateId=lt-0abcd290751193123 \ --block-device-mappings "DeviceName=/dev/xvdb,Ebs={VolumeSize=20,VolumeType=gp2}"

Se a instância não executar ou o estado passar imediatamente para terminated, em vez de running, consulte Solucionar problemas de inicialização de instâncias do Amazon EC2.

PowerShell
Como executar uma instância a partir de um modelo de execução usando a AWS Tools for PowerShell
  • Use o comando New-EC2Instance e especifique o parâmetro -LaunchTemplate. Se desejar, especifique a versão de modelo de execução a ser usada. Se você não especificar a versão, a versão padrão será usada.

    Import-Module AWS.Tools.EC2 New-EC2Instance ` -LaunchTemplate ( New-Object -TypeName Amazon.EC2.Model.LaunchTemplateSpecification -Property @{ LaunchTemplateId = 'lt-0abcd290751193123'; Version = '4' } )
  • Para substituir um parâmetro de modelo de execução, especifique o parâmetro no comando New-EC2Instance. O exemplo a seguir substitui o tipo de instância especificado no modelo de execução (se houver algum).

    Import-Module AWS.Tools.EC2 New-EC2Instance ` -InstanceType t4g.small ` -LaunchTemplate ( New-Object -TypeName Amazon.EC2.Model.LaunchTemplateSpecification -Property @{ LaunchTemplateId = 'lt-0abcd290751193123'; Version = '4' } )
  • Se você especificar um parâmetro aninhado que faça parte de uma estrutura complexa, a instância será executada por meio da estrutura complexa conforme especificado no modelo de execução, além de quaisquer parâmetros aninhados adicionais que você especificar.

    No exemplo a seguir, a instância é executada com a tag Owner=TeamA, bem como com quaisquer outras tags especificadas no modelo de execução. Se o modelo de execução tiver uma tag com uma chave Owner, o valor será substituído por TeamA.

    Import-Module AWS.Tools.EC2 New-EC2Instance ` -InstanceType t4g.small ` -LaunchTemplate ( New-Object -TypeName Amazon.EC2.Model.LaunchTemplateSpecification -Property @{ LaunchTemplateId = 'lt-0abcd290751193123'; Version = '4' } ) ` -TagSpecification ( New-Object -TypeName Amazon.EC2.Model.TagSpecification -Property @{ ResourceType = 'instance'; Tags = @( @{key = "Owner"; value = "TeamA" }, @{key = "Department"; value = "Operations" } ) } )

    No exemplo a seguir, a instância é executada com um volume com o nome de dispositivo /dev/xvdb, bem como com quaisquer outros mapeamentos de dispositivos de blocos especificados no modelo de execução. Se o modelo de execução tiver um volume existente definido para /dev/xvdb, seus valores serão substituídos pelos valores especificados.

    Import-Module AWS.Tools.EC2 New-EC2Instance ` -InstanceType t4g.small ` -LaunchTemplate ( New-Object -TypeName Amazon.EC2.Model.LaunchTemplateSpecification -Property @{ LaunchTemplateId = 'lt-0abcd290751193123'; Version = '4' } ) ` -BlockDeviceMapping ( New-Object -TypeName Amazon.EC2.Model.BlockDeviceMapping -Property @{ DeviceName = '/dev/xvdb'; EBS = ( New-Object -TypeName Amazon.EC2.Model.EbsBlockDevice -Property @{ VolumeSize = 25; VolumeType = 'gp3' } ) } )

Se a instância não executar ou o estado passar imediatamente para terminated, em vez de running, consulte Solucionar problemas de inicialização de instâncias do Amazon EC2.

Executar instâncias em um grupo do Amazon EC2 Auto Scaling usando um modelo de execução

É possível criar um grupo do Auto Scaling e especificar um modelo de execução a ser usado no grupo. Quando o Amazon EC2 Auto Scaling executar instâncias no grupo do Auto Scaling, ele usará os parâmetros de execução definidos no modelo de execução associado.

Antes de criar um grupo do Auto Scaling usando um modelo de execução, você deve primeiro criar um modelo de execução que inclua os parâmetros necessários para executar uma instância em um grupo do Auto Scaling. Alguns parâmetros são obrigatórios, como o ID da AMI, e alguns parâmetros não estão disponíveis para uso com um grupo do Auto Scaling. O console fornece orientações para ajudar você a criar um modelo que pode ser usado com o Amazon EC2 Auto Scaling.

Para criar um grupo do Auto Scaling usando um modelo de execução usando o console
Criar ou atualizar um grupo do Auto Scaling com um modelo de execução usando a AWS CLI

Para obter mais informações, consulte os seguintes tópicos no Guia do usuário do Amazon EC2 Auto Scaling:

Executar um EC2 Fleet usando um modelo de execução

Um modelo de execução é um requisito ao criar uma solicitação do EC2 Fleet. Quando o Amazon EC2 atender à solicitação do Frota do EC2, ele usará os parâmetros de execução definidos no modelo de execução associado. É possível substituir alguns parâmetros especificados no modelo de execução. Para ter mais informações, consulte Criar uma Frota do EC2..

Para criar uma EC2 Fleet com um modelo de execução usando a AWS CLI
  • Use o comando create-fleet. Use o parâmetro --launch-template-configs para especificar o modelo de execução e quaisquer substituições para o modelo de execução.

Executar uma frota spot usando um modelo de execução

Um modelo de execução é opcional ao criar uma solicitação de frota spot. Se você não usar um modelo de execução, você poderá especificar manualmente os parâmetros de execução. Caso use um modelo de execução, quando o Amazon EC2 atender à solicitação da frota spot, ele usará os parâmetros de execução definidos no modelo de execução associado. É possível substituir alguns parâmetros especificados no modelo de execução. Para ter mais informações, consulte Criar uma Frota spot.

Para criar uma solicitação de frota spot usando um modelo de execução
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, selecione Solicitações spot.

  3. Selecione Request Spot Instances (Solicitar instâncias spot).

  4. Em Launch parameters (Parâmetros de inicialização), escolha Use a launch template (Usar um modelo de inicialização).

  5. Em Launch template (Modelo de inicialização), escolha um modelo de inicialização e, no campo à direita, escolha a versão do modelo de inicialização.

  6. Configure a frota Spot selecionando diferentes opções nessa tela. Para obter mais informações sobre essas opções, consulte Criar uma solicitação de frota spot usando parâmetros definidos (console).

  7. Quando você estiver pronto para criar uma frota spot, escolha Launch (Iniciar).

Para criar uma solicitação de frota spot usando um modelo de execução
  • Use o comando request-spot-fleet. Use o parâmetro LaunchTemplateConfigs para especificar o modelo de execução e quaisquer substituições para o modelo de execução.