Clusters do Amazon ECS para o tipo de inicialização externa
O Amazon ECS Anywhere fornece suporte para registrar uma Instância externa, como um servidor on-premises ou uma máquina virtual (VM), no cluster do Amazon ECS. As instâncias externas são otimizadas para executar aplicações que geram tráfego de saída ou dados de processo. Se sua aplicação exigir tráfego de entrada, a falta de suporte do Elastic Load Balancing torna a execução dessas workloads menos eficiente. O Amazon ECS adicionou um novo tipo de inicialização EXTERNAL
que você pode usar para criar serviços ou executar tarefas nas instâncias externas.
A seguir, é mostrada uma visão geral da arquitetura de sistema de alto nível do Amazon ECS Anywhere. O servidor on-premises tem o agente do Amazon ECS e o agente do SSM instalados.
Sistemas operacionais e arquiteturas de sistema compatíveis
Veja a seguir a lista de sistemas operacionais e arquiteturas de sistemas compatíveis.
-
Amazon Linux 2
-
Amazon Linux 2023
-
CentOS 7
-
CentOS Stream 9
-
RHEL 7, RHEL 8: nenhum dos repositórios de pacotes abertos do Docker ou do RHEL oferece suporte à instalação do Docker nativamente no RHEL. É preciso garantir que o Docker esteja instalado antes da execução do script de instalação descrito neste documento.
-
Fedora 32, Fedora 33, Fedora 40
-
openSUSE Tumbleweed
-
Ubuntu 18, Ubuntu 20, Ubuntu 22, Ubuntu 24
-
Debian 10
Importante
O suporte a longo prazo do Debian 9 (suporte a LTS) terminou em 30 de junho de 2022 e não há mais suporte pelo Amazon ECS Anywhere.
-
Debian 11
-
Debian 12
-
SUSE Enterprise Server 15
-
As arquiteturas de CPU
x86_64
eARM64
são compatíveis. -
Há suporte para as seguintes versões do sistema operacional Windows:
-
Windows Server 2022
-
Windows Server 2019
-
Windows Server 2016
-
Windows Server 20H2
-
Considerações
Antes de começar a usar instâncias externas, esteja ciente das seguintes considerações.
-
É possível registrar uma instância externa em um cluster de cada vez. Para obter instruções sobre como registrar uma instância externa em um cluster diferente, consulte Cancelamento do registro de uma instância externa do Amazon ECS.
-
As instâncias externas exigem uma função do IAM que permita que elas se comuniquem com APIs da AWS. Para ter mais informações, consulte Perfil do IAM para o Amazon ECS Anywhere.
-
As instâncias externas não devem ter uma cadeia de credenciais de instânciaa pré-configurada definida localmente, pois isso interferirá com o script de registro.
-
Para enviar logs de contêiner para o CloudWatch Logs, crie e especifique uma função do IAM de execução de tarefa na definição de tarefa.
-
Quando uma instância externa é registrada em um cluster, o atributo
ecs.capability.external
é associado à instância. Esse atributo identifica a instância como uma instância externa. É possível adicionar atributos personalizados às instâncias externas para usar como uma restrição de posicionamento de tarefas. Para ter mais informações, consulte Atributos personalizados. -
É possível adicionar etiquetas de recurso à instância externa. Para ter mais informações, consulte Instâncias de contêiner externas.
-
Há suporte para o ECS Exec em instâncias externas. Para ter mais informações, consulte Monitoramento de contêineres do Amazon ECS com o ECS Exec.
-
Veja a seguir considerações adicionais que são específicas para as redes com instâncias externas. Para ter mais informações, consulte Redes .
-
O balanceamento de carga do serviço não é compatível.
-
A descoberta de serviço não é compatível.
-
Tarefas executadas em instâncias externas devem usar os modos de rede
bridge
,host
ounone
. O modo de redeawsvpc
não é compatível. -
Há domínios de serviço do Amazon ECS em cada região da AWS. Esses domínios de serviço devem ter permissão para enviar tráfego para as instâncias externas.
-
O SSM Agent instalado na instância externa mantém as credenciais do IAM que são alternadas a cada 30 minutos com o uso de uma impressão digital de hardware. Se a instância externa perder conexão com a AWS, o SSM Agent atualiza automaticamente as credenciais após a conexão ser restabelecida. Para obter mais informações, consulte Validar servidores on-premises e máquinas virtuais usando uma impressão digital de hardware no Guia do usuário do AWS Systems Manager.
-
-
A API
UpdateContainerAgent
não é compatível. Para obter instruções sobre como atualizar o SSM Agent ou o agente do Amazon ECS nas instâncias externas, consulte Atualização do agente do AWS Systems Manager e o agente de contêiner do Amazon ECS em uma instância externa. -
Provedores de capacidade do Amazon ECS não são compatíveis. Para criar um serviço ou executar uma tarefa autônoma nas instâncias externas, use o tipo de inicialização
EXTERNAL
. -
SELinux não é compatível.
-
Usar volumes do Amazon EFS ou especificar um
EFSVolumeConfiguration
não é compatível. -
A integração com o App Mesh não é compatível.
-
Se você usar o console para criar uma definição de tarefa de instância externa, deverá criar a definição da tarefa com o editor JSON do console.
-
Quando você executa o ECS Anywhere no Windows, você deve usar sua própria licença do Windows na infraestrutura on-premises.
-
Ao usar uma AMI não otimizada para o Amazon ECS, execute os comandos a seguir na instância de contêiner externa para configurar regras para usar perfis do IAM em tarefas. Para ter mais informações, consulte Configuração adicional para instância externa.
$ sysctl -w net.ipv4.conf.all.route_localnet=1 $ iptables -t nat -A PREROUTING -p tcp -d 169.254.170.2 --dport 80 -j DNAT --to-destination 127.0.0.1:51679 $ iptables -t nat -A OUTPUT -d 169.254.170.2 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 51679
Redes
As instâncias externas do Amazon ECS são otimizadas para executar aplicações que geram tráfego de saída ou dados de processo. Se sua aplicação exigir tráfego de entrada, como um serviço da Web, a falta de suporte do Elastic Load Balancing torna a execução dessas workloads menos eficiente porque não há suporte para colocar essas workloads atrás de um balanceador de carga.
Veja a seguir considerações adicionais que são específicas para as redes com instâncias externas.
-
O balanceamento de carga do serviço não é compatível.
-
A descoberta de serviço não é compatível.
-
Tarefas do Linux executadas em instâncias externas devem usar os modos de rede
bridge
,host
ounone
. O modo de redeawsvpc
não é compatível.Para obter mais informações sobre cada modo de rede, consulte Escolher um modo de rede no Guia de práticas recomendadas do Amazon ECS.
-
Tarefas do Windows executadas em instâncias externas devem usar o modo de rede
default
. -
Há domínios de serviço do Amazon ECS em cada região e você deve ter permissão para enviar tráfego para as instâncias externas.
-
O SSM Agent instalado na instância externa mantém as credenciais do IAM que são alternadas a cada 30 minutos com o uso de uma impressão digital de hardware. Se a instância externa perder conexão com a AWS, o SSM Agent atualiza automaticamente as credenciais após a conexão ser restabelecida. Para obter mais informações, consulte Validar servidores on-premises e máquinas virtuais usando uma impressão digital de hardware no Guia do usuário do AWS Systems Manager.
Os domínios a seguir são usados para comunicação entre o serviço do Amazon ECS e o agente do Amazon ECS instalado na instância externa. Certifique-se de que o tráfego seja permitido e que a resolução DNS funcione. Para cada endpoint, região
representa o identificador da região da AWS com suporte do Amazon ECS, como us-east-2
, para a região Leste dos EUA (Ohio). Os endpoints de todas as regiões que você usa devem ser permitidos. Para os endpoints ecs-a
e ecs-t
, você deve incluir um asterisco (por exemplo, ecs-a-*
).
-
ecs-a-*.
: este endpoint é usado quando são gerenciadas tarefas.region
.amazonaws.com -
ecs-t-*.
: este endpoint é usado para gerenciar métricas de tarefas e contêineres.region
.amazonaws.com -
ecs.
: este é um endpoint de serviço do Amazon ECS.region
.amazonaws.com -
ssm.
: este é um endpoint de serviço para o AWS Systems Manager.region
.amazonaws.com -
ec2messages.
: este é o endpoint de serviço que o AWS Systems Manager usa para se comunicar entre o agente Systems Manager e o serviço Systems Manager na nuvem.region
.amazonaws.com -
ssmmessages.
: este é o endpoint de serviço necessário para criar e excluir canais de sessão com o serviço Session Manager na nuvem.region
.amazonaws.com -
Se as tarefas requerem comunicação com quaisquer outros serviços da AWS, certifique-se de que esses endpoints sejam permitidos. Exemplos da aplicações incluem o uso do Amazon ECR para extrair imagens de contêiner ou o uso do CloudWatch para CloudWatch Logs. Para obter mais informações, consulte Endpoints de serviço na Referência geral da AWS.
Amazon FSx for Windows File Server com ECS Anywhere
Para usar o Amazon FSx for Windows File Server com instâncias externas do Amazon ECS, você deve estabelecer uma conexão do entre seu data center on-premises e o Nuvem AWS. Para obter mais informações sobre as opções para conexão de sua rede a sua VPC, consulte Opções de conectividade do Amazon Virtual Private Cloud.
gMSA com ECS Anywhere
Há suporte para os casos de uso a seguir no ECS Anywhere.
-
O Active Directory está na Nuvem AWS: para essa configuração, você cria uma conexão da entre sua rede on-premises e a Nuvem AWS usando uma conexão AWS Direct Connect. Para obter informações sobre como criar a conexão, consulte Opções de conectividade da Amazon Virtual Private Cloud. Você cria um Active Directory na Nuvem AWS. Para obter informações sobre como começar a usar o AWS Directory Service, consulte Configuração doAWS Directory Service no Guia de administração do AWS Directory Service. Em seguida, você pode associar suas instâncias externas ao domínio usando a conexão AWS Direct Connect. Para obter informações sobre como trabalhar com o gMSA com o Amazon ECS, consulte Saiba como usar gMSAs para contêineres do Windows do Amazon EC2 para o Amazon ECS.
-
O Active Directory está no data center on-premises. - Para essa configuração, você une suas instâncias externas ao Active Directory on-premises. Em seguida, você usa as credenciais disponíveis localmente ao executar as tarefas do Amazon ECS.