Ilustração 3D fotorrealista de uma placa de circuito eletrônico com trilhas douradas interconectadas, chip central AWS Graviton iluminado em azul elétrico, componentes metálicos representando serviços cloud, gráficos de barras em verde e azul, moedas douradas e placa metálica azul com o texto KXC: Powering Efficient Architectures.

Do Registro à Execução: a anatomia real da orquestração com ECS e ECR

Container é a unidade fundamental da modernização mas a jornada entre buildar uma imagem e tê-la rodando com resiliência em produção ainda é uma caixa preta para muitas equipes. Neste artigo, abrimos essa caixa.

Em projetos de migração e modernização, um padrão se repete: a equipe entrega a imagem, o pipeline funciona no staging e então surgem as perguntas. Como o ECS sabe qual imagem puxar? O que acontece se o container travar? Como garantimos zero downtime em um deploy?

A resposta está na forma como o Amazon ECS e o ECR se comunicam por baixo dos panos. Quando você entende esse ciclo de vida, a infraestrutura deixa de parecer magia e passa a ser um sistema previsível, auditável e sobretudo controlável.


O ECR não é só um repositório é a fundação de segurança da sua stack

O Amazon Elastic Container Registry (ECR) é frequentemente tratado como um “DockerHub privado”. Essa simplificação esconde o que ele realmente entrega: um registro gerenciado com controles de segurança enterprise nativos.

A autenticação entre ECS e ECR não usa credenciais manuais ela é governada por IAM Roles. A Task Execution Role assume a identidade necessária para o pull da imagem, sem nenhuma chave de acesso exposta no código ou nas variáveis de ambiente.

Na KXC, configuramos o ECR com duas práticas não-negociáveis: imutabilidade de tags, que impede sobrescrever uma versão já publicada (garantia de rastreabilidade em auditoria), e scan automático de vulnerabilidades, que bloqueia imagens com falhas críticas antes mesmo de chegarem ao cluster.

IAM Task Execution Role Image Tag Immutability ECR Vulnerability Scan AWS KMS Encryption

A separação que muda tudo: Control Plane vs. Data Plane

Para operar o ECS com confiança, é preciso entender quem decide e quem executa são responsabilidades distintas, e confundi-las gera diagnósticos errados quando algo falha.

CamadaPapelNa prática
Control PlaneOrquestra o estado desejadoDecide em qual AZ rodar, monitora saúde, reinicia tasks com falha e aciona rollbacks
Data Plane: FargateExecuta sem gestão de SOProvisiona o ambiente de execução isolado; patches e escalonamento são responsabilidade da AWS
Data Plane: EC2Executa com mais controleMais flexibilidade de hardware e custo; requer gerenciamento de instâncias pela equipe

Na maioria dos projetos que conduzimos, optamos pelo AWS Fargate. A decisão não é técnica é estratégica: remover a sobrecarga de patching de SO e dimensionamento de instâncias significa que a equipe do cliente foca em produto, não em infraestrutura.

O ciclo de vida da Task: o que acontece quando você faz um deploy

Todo deploy no ECS percorre estados bem definidos. Conhecê-los é o que separa quem reage a incidentes de quem os previne.

A · Provisioning & Pending: a ponte com o ECR

O scheduler decide em qual zona de disponibilidade rodar. O agente do ECS autentica via IAM e inicia o pull das camadas da imagem diretamente do ECR. Em arquiteturas de alta performance, usamos VPC Endpoints para que esse download ocorra inteiramente dentro da rede privada da AWS, sem latência de internet, sem custo de NAT Gateway.

B · Running: operação e vigilância contínua

Uma vez em execução, o ECS integra-se ao Application Load Balancer (ALB) para Health Checks em nível de aplicação (L7). Se o processo principal falhar, a task é encerrada e uma nova é provisionada automaticamente. O estado desejado é sempre restaurado sem intervenção humana.

C · Deprovisioning: draining sem downtime

Atualizações de software não geram indisponibilidade. O ECS sinaliza ao ALB para parar de encaminhar novas requisições ao container antigo (SIGTERM), aguarda a conclusão das conexões em curso e só então encerra a task, depois que a nova já passou no Health Check e está saudável.

Quando a aplicação entra em loop: como o ECS detecta, age e reverte

Um dos cenários mais críticos em produção é o crash loop: a aplicação sobe, falha em segundos, é reiniciada automaticamente e repete esse ciclo indefinidamente. Sem orquestração inteligente, esse padrão derruba o serviço silenciosamente enquanto o time ainda está analisando logs.

O ECS foi desenhado para esse cenário. Ele não apenas detecta o loop: ele interrompe a degradação, protege o tráfego ativo e, quando configurado com Deployment Circuit Breaker, reverte automaticamente para a versão estável anterior.

Cenário real: Uma nova versão de imagem é deployada com uma variável de ambiente ausente. O container inicia, lança uma exceção não tratada na inicialização e encerra em menos de 5 segundos. O ECS tenta restartá-lo e o mesmo ciclo se repete.

Veja como o ECS orquestra a resposta a esse evento, fase a fase:

1. Detecção O Health Check do ALB ou o exit code do container (STOPPED com código de erro) é registrado pelo Control Plane. O ECS identifica que a task não atingiu o estado RUNNING estável dentro da janela configurada.

2. Contenção O ECS para de direcionar tráfego do ALB para as tasks problemáticas. As tasks da versão anterior, se ainda estiverem em draining, são mantidas ativas para absorver as requisições, evitando impacto ao usuário final.

3. Limite de falhas Após atingir o threshold definido no Deployment Circuit Breaker (por padrão, 10 tasks consecutivas com falha), o ECS marca o deployment como FAILED e interrompe novas tentativas de substituição, evitando o loop infinito de restarts.

4. Rollback automático Com o parâmetro rollback: true ativado no Circuit Breaker, o ECS reverte automaticamente o serviço para o último deployment estável registrado, sem nenhuma ação manual da equipe. O serviço volta a operar na versão anterior em questão de minutos.

Resultado prático: Com o Deployment Circuit Breaker habilitado, um deploy com crash loop não derruba a produção. O ECS detecta o padrão, preserva a versão estável e registra o evento no CloudTrail. Tudo sem pager, sem chamada de madrugada, sem impacto ao usuário final.

Na KXC, habilitamos o Deployment Circuit Breaker com rollback como configuração padrão em todos os serviços ECS que entregamos. É uma linha de código na task definition que elimina uma classe inteira de incidentes em produção.

Governança e segurança: o princípio do menor privilégio em prática

A segurança na integração ECS/ECR não é uma camada adicional: ela é estrutural. Toda a comunicação é construída sobre três pilares:

Criptografia Imagens são criptografadas em repouso via AWS KMS e em trânsito via TLS. Nenhum dado trafega em texto claro entre o ECR e o cluster.

Isolamento de Rede Security Groups granulares garantem que cada container só pode se comunicar com os recursos estritamente necessários: banco de dados, cache ou APIs externas definidas explicitamente na task definition.

Identidade por IAM Nenhuma credencial estática. Cada task assume uma role com escopo mínimo, rotacionada automaticamente. Auditoria completa via CloudTrail, sem necessidade de gestão manual de chaves.


Infraestrutura clara é vantagem competitiva

O Amazon ECS com ECR automatiza o pull de imagens, monitora a saúde contínua dos containers, garante que deploys ocorram sem impacto ao usuário final e, quando algo dá errado, age antes que o time perceba. Para o negócio, isso se traduz em uma palavra: previsibilidade.

Na KXC, não entregamos containers rodando: entregamos um ecossistema onde o ciclo de vida da aplicação é totalmente automatizado, seguro e orientado à resiliência. Se a sua infraestrutura ainda parece uma caixa preta, é hora de torná-la legível.

Sobre a KXC Partner

A KXC Partner apoia empresas na evolução de sua maturidade em nuvem, com foco em governança, otimização de custos, segurança e automação.

Acompanhe nosso blog para mais conteúdos técnicos e estratégicos sobre AWS e transformação digital.

Referências Técnicas

Quer uma solução personalizada para seu negócio?

Nossos especialistas em cloud computing analisam seu caso e criam uma estratégia sob medida.

Compartilhe essa publicação
Sobre o autor
Foto de José Neto

José Neto

Arquiteto de Soluções com foco em modernização de infraestrutura e cultura DevOps. Certificado AWS Solutions Architect e Developer, utilizo as melhores práticas do Well-Architected Framework para projetar ambientes críticos. Experiência profunda em automação de esteiras CI/CD, containerização e arquiteturas serverless, garantindo que a tecnologia seja o motor de crescimento e estabilidade para os clientes.

Ver perfil e posts