Instâncias de contêiner do Amazon ECS - Amazon Elastic Container Service

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á.

Instâncias de contêiner do Amazon ECS

UmaAmazon ECSinstância de contêiner é umaAmazon EC2que está executando oAmazon ECSAgente de contêiner e foi registrado em umAmazon ECSCluster do. Quando você executa tarefas comAmazon ECSUsar oEC2ou umAuto ScalingProvedor de capacidade de grupo, suas tarefas são colocadas nas suas instâncias de contêiner ativas.

nota

As tarefas que usam o tipo de inicialização Fargate são implantadas em uma infraestrutura gerenciada pela AWS, portanto, este tópico não se aplica.

Conceitos de instância do

  • Sua instância de contêiner deve estar executando o agente de contêiner do Amazon ECS. O agente de contêiner é capaz de registrar a instância em um de seus clusters. Se você estiver usando um Amazon ECS-optimized AMI, significa que o agente já está instalado. Para usar um sistema operacional diferente, instale o agente. Para obter mais informações, consulte Amazon ECSAgente do contêiner.

  • Como o agente de contêiner do Amazon ECS faz chamadas ao Amazon ECS em seu nome, você deve iniciar instâncias de contêiner com uma função de IAM que autentique a sua conta e forneça as permissões de recursos necessárias. Para obter mais informações, consulte Amazon ECSinstância de contêinerIAMfunção do.

  • A partir da Amazon ECS-optimized AMI versão 20200430 e posterior do Linux, o Serviço de metadados da instância versão 2 (IMDSv2) do Amazon EC2 é compatível em suas instâncias do contêiner. Para Amazon ECS-optimized AMIs anteriores à versão 20200430, o Serviço de metadados da instância versão 1 (IMDSv1) do Amazon EC2 é compatível. Para obter mais informações, consulte Configurar o serviço de metadados de instância no Guia do usuário do Amazon EC2 para instâncias do Linux.

  • Se algum dos contêineres associados às tarefas exigirem conectividade externa, é possível mapear as portas de rede às portas na instância de contêiner do host do Amazon ECS, a fim de que ele possa ser acessados pela internet. Seu security group da instância de contêiner deve permitir acesso de entrada às portas que deseja expor. Para obter mais informações, consulte Criar um grupo de segurança em Guia de conceitos básicos do Amazon VPC.

  • Recomendamos iniciar suas instâncias de contêiner em um VPC, pois o Amazon VPC oferece mais controle sobre sua rede e recursos de configuração mais abrangentes. Para obter mais informações, consulte Amazon EC2 e Amazon Virtual Private Cloud no Guia do usuário do Amazon EC2 para instâncias do Linux.

  • Instâncias de contêiner precisam de acesso para se comunicar com o endpoint de serviço do Amazon ECS. Isso pode ser feito por meio de um VPN endpoint ou por meio de instâncias de contêiner com endereços IP públicos.

    Para obter mais informações sobre VPN endpoint de interface, consulte Amazon ECSVPC endpoints de interface (AWS PrivateLink).

    Se você não tiver um VPC endpoint de interface configurado e suas instâncias de contêiner 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 NAT Gateways no Guia do usuário da Amazon VPC e Configuração do proxy HTTP neste guia. Para obter mais informações, consulte Tutorial: como criar uma VPC com sub-redes públicas e privadas para seus ClustersAmbientes de computação.

  • O tipo de instância do Amazon EC2 escolhido para as instâncias de contêiner determina os recursos disponíveis no cluster. O Amazon EC2 fornece tipos de instância diferentes, cada um com CPU, memória, armazenamento e capacidade de rede diferentes que você pode usar para executar as tarefas. Para obter mais informações, consulte Instâncias do Amazon EC2.

  • Como cada instância de contêiner tem informações de estado exclusivas que são armazenadas localmente na instância de contêiner e no Amazon ECS:

    • Você não deve cancelar o registro de uma instância de cluster e registrar novamente em outra instância. Para reposicionar recursos de instância de contêiner, recomendamos que você encerre as instâncias de contêiner de um cluster e execute novas instâncias com a Amazon ECS-optimized Amazon Linux 2 AMI mais recente no novo cluster. Para obter mais informações, consulte Encerrar sua instância no Guia do usuário do Amazon EC2 para instâncias do Linux e Lançando umaAmazon ECSinstância de contêiner.

    • Você não pode interromper uma instância de contêiner e alterar seu tipo de instância. Em vez disso, recomendamos que você encerre a instância de contêiner e execute uma nova instância com o tamanho de instância desejado e a Amazon ECS-optimized Amazon Linux 2 AMI mais recente em seu cluster. Para obter mais informações, consulte Encerrar sua instância no Guia do usuário do Amazon EC2 para instâncias do Linux e Lançando umaAmazon ECSinstância de contêiner neste guia.

Ciclo vida da instância

Quando oAmazon ECSO agente de contêiner registra umAmazon EC2em seu cluster, a instânciaAmazon EC2relata seu status comoACTIVEe seu status de conexão do agente comoTRUE. Essa instância de contêiner pode aceitarRunTasksolicitações.

Se você interrompe (sem concluir) uma instância de contêiner de Amazon ECS, o status permanece ACTIVE, mas o status de conexão do agente muda para FALSE em instantes. As tarefas que estavam sendo executadas na instância de contêiner são interrompidas. Se você iniciar a instância de contêiner novamente, o agente de contêiner se reconecta com o serviço Amazon ECS, e você pode executar novamente tarefas na instância.

Importante

Se você interrompe e inicia uma instância de contêiner, ou reinicia essa instância, algumas versões do agente de contêiner do Amazon ECS mais antigas registram a instância novamente sem cancelar o registro de ID da instância de contêiner original. Nesse caso, o Amazon ECS lista mais instâncias de contêiner em seu cluster do que você realmente possui. (Se você tiver IDs duplicados de instância de contêiner para o mesmo ID de instância de Amazon EC2, você pode com segurança cancelar o registro das duplicatas que são listadas como ACTIVE com status de FALSE da conexão do agente.) Este problema foi corrigido na versão atual do agente de contêiner do Amazon ECS. Para obter mais informações sobre como atualizar a versão atual, consulte Atualização doAmazon ECSAgente do contêiner.

Se você alterar o status de uma instância de contêiner para DRAINING, as novas tarefas não serão posicionadas na instância de contêiner. Todas as tarefas de serviço em execução na instância de contêiner são removidas, se possível, de modo que você possa realizar atualizações de sistema. Para obter mais informações, consulte Drenagem de instâncias de contêineres.

Se você cancela o registro ou encerra uma instância de contêiner, seu status muda para INACTIVE imediatamente, e ela não é mais referida não quando você lista suas instâncias de contêiner. No entanto, você ainda pode descrever a instância de contêiner por uma hora depois do encerramento. Depois desse período, a descrição de instância não estará mais disponível.

Verifique a instânciaIAMFunção da conta

O agente de contêiner Amazon ECS faz chamadas para as APIs do Amazon ECS em seu nome. As instâncias de contêiner executando o agente exigem uma política e função de IAM para o serviço de forma a poder saber se o agente pertence a você.

Na maioria dos casos, a função de instância do Amazon ECS é criada para você automaticamente na primeira execução do console. Você pode usar o procedimento a seguir para verificar e saber se a conta já tem uma função de serviço Amazon ECS.

Para verificar ecsInstanceRole no console do IAM

  1. Faça login no Console de gerenciamento da AWS e abra o console da IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, selecione Roles.

  3. Procure ecsInstanceRole na lista de funções. Se a função existir, você não precisará criá-la. Se a função não existir, siga os procedimentos em Amazon ECSinstância de contêinerIAMfunção do para criar a função.