Iniciar uma instância de contêiner do Linux do Amazon ECS - Serviço Amazon Elastic Container

Iniciar uma instância de contêiner do Linux do Amazon ECS

As instâncias de contêiner do Amazon ECS são criadas por meio do console do Amazon EC2. Antes de começar, é necessário concluir as etapas em Configuração para usar o Amazon ECS.

É possível iniciar uma instância usando vários métodos, incluindo o console do Amazon EC2, a AWS CLI e o SDK. O procedimento nesta página aborda o assistente de inicialização no console do Amazon EC2. Para obter informações sobre outros métodos para iniciar uma instância, consulte Iniciar uma instância no Guia do usuário do Amazon EC2 para instâncias do Linux.

Para obter mais informações sobre o assistente de inicialização, consulte Iniciar uma instância usando o novo assistente de inicialização de instância no Guia do usuário do Amazon EC2 para instâncias Linux.

Novo assistente de inicialização de instância do Amazon EC2

Você pode usar o assistente do Amazon EC2 para iniciar uma instância. O assistente de lançamento de instâncias especifica todos os parâmetros de início necessários para iniciar uma instância. É possível usar a seguinte lista para os parâmetros e deixar os parâmetros não listados como padrão. As instruções a seguir orientam você por cada grupo de parâmetros.

Iniciar a execução da instância

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

  2. Na barra de navegação na parte superior da tela, a região atual AWS é exibida [por exemplo, Leste dos EUA (Ohio)]. Selecione uma região na qual a instância será iniciada.

  3. No painel do console do Amazon EC2, selecione Launch instance (Executar instância).

    Se você vir o antigo assistente de inicialização, o novo assistente de inicialização de instância ainda não será a exibição padrão na região selecionada atualmente. Para abrir o novo assistente de inicialização de instância, escolha Opt-in to the new experience (Aderir à nova experiência) no canto superior direito da tela. Se você não vir Opt-in to the new experience (Optar pela nova experiência) no canto superior direito, significa que o assistente não está disponível na sua Região. Você pode iniciar uma instância com o assistente antigo. Para mais informações, consulte Assistente de inicialização de instância antigo do Amazon EC2.

Nome e tags

O nome da instância é uma tag em que a chave é Name (Nome) e o valor é o nome que você especificar. É possível aplicar tags na instância, sos volumes e nos elementos gráficos elásticos. Para instâncias spot, é possível marcar apenas a solicitação de instância spot.

A especificação de um nome de instância e de tags adicionais é opcional.

  • Em Name (Nome), insira um nome descritivo para a instância. Se você não especificar um nome, a instância poderá ser identificada por seu ID, que é gerado automaticamente quando você inicia a instância.

  • Para adicionar mais tags, selecione Add additional tag (Adicionar outra tag). Escolha Add tag (Adicionar tag), insira uma chave e um valor, e selecione o tipo de recurso a aplicar a tag. Escolha Add tag (Adicionar tag) para cada tag adicional a acrescentar.

Imagens de aplicações e sistemas operacionais (imagem de máquina da Amazon)

Uma imagem de máquina da Amazon (AMI) contém as informações necessárias para criar uma instância. Por exemplo, uma AMI pode conter o software necessário para atuar como servidor Web, por exemplo, Apache e seu site.

Use a barra Search (Pesquisa) para encontrar uma AMI otimizada para o Amazon ECS publicada pela AWS.

  1. Insira um dos seguintes termos na barra Search (Pesquisa).

  2. Pressione Enter.

  3. Na página Choose an Amazon Machine Image (AMI) (Escolher uma imagem de máquina da Amazon [AMI]), selecione a guia AWS Marketplace AMIs (AMIs do AWS Marketplace).

  4. No painel esquerdo Refine results (Refinar os resultados), selecione Amazon Web Services como o Publisher (Editor).

  5. Escolha Select (Selecionar) na linha da AMI que você deseja usar.

    Como alternativa, escolha Cancel (Cancelar) (no canto superior direito) para retornar ao assistente de inicialização de instância sem escolher uma AMI. Uma AMI padrão será selecionada. Certifique-se de que a AMI atenda aos requisitos descritos em instâncias do Linux.

Tipo de instância

O tipo de instância define a configuração do hardware e o tamanho da instância. Os tipos de instâncias maiores têm mais CPU e memória. Para obter mais informações, consulte Tipos de instância.

  • Em Instance type (Tipo de instância), selecione o tipo de instância da instância.

    O tipo de instância que você selecionar determinará os recursos disponíveis para execução de suas tarefas.

Par de chaves (login)

Em Key pair name (Nome do par de chaves), escolha um par de chaves existente ou escolha Create new key pair (Criar um novo par de chaves) para criar um novo.

Importante

Se você escolher a opção Proceed without key pair (Not recommended) (Prosseguir sem par de chaves, não recomendado), não conseguirá se conectar à instância a menos que escolha uma AMI configurada para permitir que os usuários façam login de outro modo.

Network settings (Configurações de rede)

Defina as configurações de rede, conforme necessário.

  • Networking platform (Plataforma de rede): escolha Virtual Private Cloud (VPC) (Nuvem privada virtual - VPC) e especifique a sub-rede na seção Network interfaces (Interfaces de rede).

  • VPC: selecione uma VPC existente na qual criar o grupo de segurança.

  • Subnet (Sub-rede): é possível executar uma instância em uma sub-rede associada a uma zona de disponibilidade, a uma zona local, a uma zona Wavelength ou a um Outpost.

    Para iniciar a instância em uma zona de disponibilidade, selecione a sub-rede na qual a instância será iniciada. Para criar uma nova sub-rede, escolha Create new subnet (Criar nova sub-rede) para acessar o console da Amazon VPC. Quando tiver concluído, retorne ao assistente de inicialização da instância e escolha o ícone Refresh (Atualizar) para carregar sua sub-rede na lista.

    Para iniciar a instância em uma zona local, selecione uma sub-rede que você criou na zona local.

    Para iniciar uma instância em um Outpost, selecione uma sub-rede em uma VPC associada ao Outpost.

  • Auto-assign Public IP (Atribuir IP público automaticamente): se sua instância tiver de ser acessada pela Internet pública, verifique se o campo Auto-assign Public IP (Atribuir IP público automaticamente) está definido como Enable (Habilitar). Em caso negativo, defina esse campo como Disable (Desabilitar).

    nota

    Instâncias de contêiner precisam de acesso para se comunicar com o endpoint do serviço do Amazon ECS. Isso pode ser feito por meio de uma interface do endpoint da VPC ou por meio dos recursos de computação das instâncias de contêiner que tenham endereços IP públicos.

    Para saber mais sobre endpoints da VPC de interface, consulte Endpoints da VPC de interface do Amazon ECS (AWS PrivateLink).

    Se você não tiver um endpoint da VPC de interface configurado e suas instâncias de contêiner não tiverem endereços IP públicos, elas deverão usar a conversão de endereço de rede (NAT) para fornecer esse acesso. Para obter mais informações, consulte Gateways NAT no Guia do usuário da Amazon VPC e Configuração de proxy HTTP neste guia.

  • Firewall (security groups) (Firewall, grupos de segurança): use um grupo de segurança para definir regras de firewall da sua instância de contêiner. Essas regras especificam qual tráfego de rede de entrada será fornecido para sua instância de contêiner. Todo o tráfego é ignorado.

    • Para selecionar um grupo de segurança existente, escolha Select an existing security group (Selecionar um grupo de segurança existente) e escolha o grupo de segurança criado em Configuração para usar o Amazon ECS.

Configurar armazenamento

A AMI que você selecionou inclui um ou mais volumes de armazenamento, incluindo o volume raiz. É possível especificar volumes adicionais a serem anexados à instância.

É possível usar a exibição Simple (Simples).

  • Storage type (Tipo de armazenamento): configure o armazenamento para a sua instância de contêiner.

    Se você estiver usando a AMI do Amazon Linux 2 otimizada para Amazon ECS, sua instância terá um único volume de 30 GiB configurado, que é compartilhado entre o sistema operacional e o Docker.

    Se você estiver usando a AMI otimizada para Amazon ECS, a instância terá dois volumes configurados. O volume Raiz é para uso do sistema operacional e o segundo volume do Amazon EBS (anexado a /dev/xvdcz) é para uso do Docker.

    Você também pode aumentar ou diminuir os tamanhos de volumes para a sua instância para atender às necessidades dos seus aplicativos.

Detalhes avançados

Em Advanced details (Detalhes avançados), expanda a seção para visualizar os campos e especifique quaisquer parâmetros adicionais para a instância.

  • Purchasing option (Opção de compra): escolha Request Spot instances (Solicitar instâncias Spot) para solicitar instâncias Spot. Também é necessário definir os outros campos relacionados a instâncias spot. Para obter mais informações, consulte Solicitações de instâncias spot.

    nota

    Se você estiver usando instâncias spot e vir uma mensagem Not available, pode ser necessário escolher um tipo de instância diferente.

    .

  • IAM instance profile (Perfil de instância do IAM): selecione a função do IAM de instância de contêiner. Isso geralmente é chamado de ecsInstanceRole.

    Importante

    Se você não iniciar a instância de contêiner com as permissões apropriadas do IAM, o agente do Amazon ECS não poderá se conectar ao cluster. Para mais informações, consulte Função do IAM de instância de contêiner do Amazon ECS.

  • (Opcional) User data (Dados do usuário): configure a instância de contêiner do Amazon ECS com os dados do usuário, como as variáveis de ambiente de agente de Configuração do agente de contêiner do Amazon ECS. Os scripts de dados do usuário do Amazon EC2 são executados apenas uma vez, quando a instância é iniciada pela primeira vez. Veja a seguir exemplos comuns de quais dados do usuário são usados.

    • Por padrão, sua instância de contêiner é executada em seu cluster padrão. Para executar em um cluster que não seja padrão, escolha a lista Detalhes avançados. Em seguida, cole o seguinte script no campo Dados do usuário substituindo your_cluster_name pelo nome do seu cluster.

      #!/bin/bash echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config
    • Se você tiver um arquivo ecs.config no Amazon S3 e tiver habilitado o acesso somente leitura do Amazon S3 à função de instância de contêiner, escolha a lista Advanced Details (Detalhes avançados). Em seguida, cole o seguinte script no campo User data (Dados do usuário) substituindo your_bucket_name pelo nome do seu bucket para instalar a AWS CLI e gravar seu arquivo de configuração no momento da inicialização.

      nota

      Para obter mais informações sobre essa configuração, consulte Armazenamento da configuração da instância de contêiner no Amazon S3.

      #!/bin/bash yum install -y aws-cli aws s3 cp s3://your_bucket_name/ecs.config /etc/ecs/ecs.config
    • Especifique tags para sua instância de contêiner usando o parâmetro de configuração ECS_CONTAINER_INSTANCE_TAGS. Isso cria etiquetas associadas somente ao Amazon ECS, elas não podem ser listadas usando a API do Amazon EC2.

      Importante

      Se você iniciar as instâncias de contêiner usando um grupo do Amazon EC2 Auto Scaling, deverá usar o parâmetro de configuração do agente ECS_CONTAINER_INSTANCE_TAGS para adicionar etiquetas. Isso é decorrente da maneira como as etiquetas são adicionadas às instâncias do Amazon EC2 que são iniciadas por meio de grupos do Auto Scaling.

      #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=your_cluster_name ECS_CONTAINER_INSTANCE_TAGS={"tag_key": "tag_value"} EOF
    • Especifique etiquetas para a instância de contêiner e use o parâmetro de configuração ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM para propagá-las do Amazon EC2 para o Amazon ECS

      Veja a seguir um exemplo de um script de dados do usuário que poderia propagar as tags associadas a uma instância de contêiner, bem como registrar a instância do contêiner com um cluster denominado your_cluster_name.

      #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=your_cluster_name ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM=ec2_instance EOF

    Para mais informações, consulte Bootstrap de instâncias de contêiner com dados de usuário do Amazon EC2.

Assistente de inicialização de instância antigo do Amazon EC2

Para executar uma instância de contêiner
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. Na barra de navegação, selecione a região a ser usada.

  3. No Painel do EC2, escolha Launch Instance (Iniciar instância).

  4. Na página Choose an Amazon Machine Image (AMI) (Escolha uma Imagem de máquina da Amazon (AMI)), conclua as seguintes etapas:

    1. Escolha AWS Marketplace.

    2. Escolha uma AMI para a instância de contêiner. Você pode pesquisar uma das AMIs otimizadas para Amazon ECS, por exemplo, a AMI do Amazon Linux 2 otimizada para Amazon ECS. Se você não escolher uma AMI otimizada para Amazon ECS, deverá seguir os procedimentos em Instalar o agente de contêiner do Amazon ECS.

      Para obter mais informações sobre as AMIs otimizadas para Amazon ECS mais recentes, consulte AMIs otimizadas para Amazon ECS.

      Importante

      A AMI do Amazon Linux otimizada para Amazon ECS está obsoleta desde 15 de abril de 2021. Depois dessa data, o Amazon ECS continua fornecendo atualizações de segurança essenciais e importantes para a AMI, mas não adicionará suporte para novos recursos.

  5. Na página Choose an Instance Type, é possível selecionar a configuração de hardware de sua instância. O tipo de instância t2.micro é selecionado por padrão. O tipo de instância que você selecionar determinará os recursos disponíveis para execução de suas tarefas.

    Selecione Next: Configure Instance Details (Próximo: Configurar detalhes da instância) quando terminar.

  6. Na página Configure Instance Details (Configurar os detalhes da instância), conclua as seguintes etapas:

    1. Defina o campo Número de instâncias de acordo com a quantidade de instâncias de contêiner que você deseja adicionar ao seu cluster.

    2. (Opcional) Para usar instâncias spot, em Purchasing option (Opção de compra), marque a caixa de seleção ao lado de Request Spot Instances (Solicitar instâncias spot). Também é necessário definir os outros campos relacionados a instâncias spot. Para obter mais informações, consulte Solicitações de instâncias spot.

      nota

      Se você estiver usando instâncias spot e vir uma mensagem Not available, pode ser necessário escolher um tipo de instância diferente.

    3. Em Network (Rede), escolha a VPC na qual executar sua instância de contêiner.

    4. Em Sub-rede, escolha uma sub-rede a ser usada, ou mantenha a opção padrão para escolher a sub-rede padrão em qualquer zona de disponibilidade.

    5. Defina o campo Auto-assign Public IP (Atribuir IP público automaticamente) de acordo com sua preferência de acesso à instância pela internet pública. Se sua instância tiver de ser acessada pela Internet pública, verifique se o campo Auto-assign Public IP (Atribuir IP público automaticamente) está definido como Enable (Habilitar). Em caso negativo, defina esse campo como Disable (Desabilitar).

      nota

      da instância de contêiner precisam de acesso para se comunicar com o endpoint do serviço do Amazon ECS. Isso pode ser feito por meio de uma interface do endpoint da VPC ou por meio dos recursos de computação das que tenham endereços IP públicos.

      Para obter mais informações sobre endpoints da VPC de interface, consulte Endpoints da VPC de interface do Amazon ECS (AWS PrivateLink).

      Se você não tiver um endpoint da VPC de interface configurado e seus recursos de computação das não tiverem endereços IP públicos, eles deverão usar a conversão de endereço de rede (NAT) para fornecer esse acesso. Para obter mais informações, consulte Gateways NAT no Guia do usuário da Amazon VPC e Configuração de proxy HTTP neste guia. Para mais informações, consulte Criar uma nuvem privada virtual.

    6. Selecione a função do IAM para a instância de contêiner. Isso geralmente é chamado de ecsInstanceRole.

      Importante

      Se você não iniciar a instância de contêiner com as permissões apropriadas do IAM, o agente do Amazon ECS não poderá se conectar ao cluster. Para mais informações, consulte Função do IAM de instância de contêiner do Amazon ECS.

    7. (Opcional) Configure a instância de contêiner do Amazon ECS com os dados do usuário, como as variáveis de ambiente de agente de Configuração do agente de contêiner do Amazon ECS. Os scripts de dados do usuário do Amazon EC2 são executados apenas uma vez, quando a instância é iniciada pela primeira vez. Veja a seguir exemplos comuns de quais dados do usuário são usados.

      • Por padrão, sua instância de contêiner é executada em seu cluster padrão. Para executar em um cluster que não seja padrão, escolha a lista Detalhes avançados. Em seguida, cole o seguinte script no campo Dados do usuário substituindo your_cluster_name pelo nome do seu cluster.

        #!/bin/bash echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config
      • Se você tiver um arquivo ecs.config no Amazon S3 e tiver habilitado o acesso somente leitura do Amazon S3 à função de instância de contêiner, escolha a lista Advanced Details (Detalhes avançados). Em seguida, cole o seguinte script no campo User data (Dados do usuário) substituindo your_bucket_name pelo nome do seu bucket para instalar a AWS CLI e gravar seu arquivo de configuração no momento da inicialização.

        nota

        Para obter mais informações sobre essa configuração, consulte Armazenamento da configuração da instância de contêiner no Amazon S3.

        #!/bin/bash yum install -y aws-cli aws s3 cp s3://your_bucket_name/ecs.config /etc/ecs/ecs.config
      • Especifique tags para sua instância de contêiner usando o parâmetro de configuração ECS_CONTAINER_INSTANCE_TAGS. Isso cria etiquetas associadas somente ao Amazon ECS, elas não podem ser listadas usando a API do Amazon EC2.

        Importante

        Se você iniciar as instâncias de contêiner usando um grupo do Amazon EC2 Auto Scaling, deverá usar o parâmetro de configuração do agente ECS_CONTAINER_INSTANCE_TAGS para adicionar etiquetas. Isso é decorrente da maneira como as etiquetas são adicionadas às instâncias do Amazon EC2 que são iniciadas por meio de grupos do Auto Scaling.

        #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=your_cluster_name ECS_CONTAINER_INSTANCE_TAGS={"tag_key": "tag_value"} EOF
      • Especifique etiquetas para a instância de contêiner e use o parâmetro de configuração ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM para propagá-las do Amazon EC2 para o Amazon ECS

        Veja a seguir um exemplo de um script de dados do usuário que poderia propagar as tags associadas a uma instância de contêiner, bem como registrar a instância do contêiner com um cluster denominado your_cluster_name.

        #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=your_cluster_name ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM=ec2_instance EOF

      Para mais informações, consulte Bootstrap de instâncias de contêiner com dados de usuário do Amazon EC2.

    8. Escolha Next: Add Storage.

  7. Na página Add Storage, configure o armazenamento para sua instância de contêiner.

    Se você estiver usando a AMI do Amazon Linux 2 otimizada para Amazon ECS, sua instância terá um único volume de 30 GiB configurado, que é compartilhado entre o sistema operacional e o Docker.

    Se você estiver usando a AMI otimizada para Amazon ECS, a instância terá dois volumes configurados. O volume Raiz é para uso do sistema operacional e o segundo volume do Amazon EBS (anexado a /dev/xvdcz) é para uso do Docker.

    Você também pode aumentar ou diminuir os tamanhos de volumes para a sua instância para atender às necessidades dos seus aplicativos.

    Depois de configurar seus volumes, escolha Next: Add Tags (Próximo: Adicionar tags).

  8. Na página Add Tags (Adicionar tags), especifique tags fornecendo combinações de chaves e valores para a instância de contêiner. Escolha Add another tag (Adicionar outra tag) para adicionar mais de uma tag à sua instância de contêiner. Para obter mais informações sobre as tags de recursos, consulte Recursos e tags.

    Escolha Next: Configure Security Group (Próximo: Configurar grupo de segurança) ao concluir.

  9. Na página Configure Security Group (Configurar grupo de segurança), use um grupo de segurança para definir regras do firewall para sua instância de contêiner. Essas regras especificam qual tráfego de rede de entrada será fornecido para sua instância de contêiner. Todo o tráfego é ignorado. Selecione ou crie um grupo de segurança da forma a seguir e escolha Review and Launch (Revisar e executar).

  10. Na página Review Instance Launch, em Security Groups, você verá que o assistente criou e selecionou um security group para você. Em vez disso, selecione o security group que você criou em Configuração para usar o Amazon ECS usando as seguintes etapas:

    1. Escolha Edit security groups (Editar grupos de segurança).

    2. Na página Configure Security Group, escolha a opção Select an existing security group.

    3. Selecione o security group criado para a sua instância de contêiner na lista de security groups existentes e escolha Review and Launch.

  11. Na página Review Instance Launch, escolha Launch.

  12. Na caixa de diálogo Select an existing key pair or create a new key pair (Selecionar um par de chaves existente ou criar um novo par de chaves), selecione Choose an existing key pair (Escolher um par de chaves existente) e selecione um par de chaves que você tenha criado durante a configuração.

    Quando estiver pronto, selecione o campo de confirmação e, então, escolha Launch Instances.

  13. Uma página de confirmação informa que sua instância está sendo executada. Selecione Visualizar instâncias para fechar a página de confirmação e voltar ao console.

  14. Na tela Instances, você pode visualizar o status de sua instância. Demora um pouco para executar uma instância. Ao executar uma instância, seu estado inicial é pending. Após o início da instância, seu estado muda para running e ela recebe um nome DNS público. Se a coluna DNS público estiver oculta, selecione Exibir/Ocultar, DNS público.