Orquestração de containers
Por que orquestrar?
docker runVocê escolhe o host, a porta e reinicia na mão quando cai.
Funciona para testardocker compose upVários serviços num host, com rede e volumes declarados em YAML.
Valida a stack em ambiente localdezenas de hosts · centenas de containersUm host sozinho é ponto único de falha e tem limite de CPU e memória.
Precisa de um orquestradorImperativo × declarativo
Imperativo: você diz como
docker run -d --name web1 app:v2
docker run -d --name web2 app:v2
docker run -d --name web3 app:v2
# web2 caiu? alguém precisa perceber e rodar de novoCada passo é um comando. Se algo muda depois, ninguém corrige sozinho.
Declarativo: você diz o quê
replicas: 3
image: app:v2
# o orquestrador garante 3 réplicas o tempo todoVocê descreve o estado final. O orquestrador compara com o que está rodando e corrige a diferença, para sempre.
Esse ciclo, chamado loop de reconciliação, roda sem parar. É o mesmo princípio do Swarm (Aula 02), do ECS e do Kubernetes, e também da infraestrutura como código e do GitOps.
O que todo orquestrador entrega
| Capacidade | O que faz | No ECS | No Kubernetes |
|---|---|---|---|
| Scheduling | Escolhe onde cada container roda, conforme CPU, memória e regras | Placement do ECS / Fargate | kube-scheduler |
| Auto-reparo | Container ou nó caiu: sobe outro no lugar | Service | ReplicaSet / Deployment |
| Escala | Aumenta e reduz réplicas, manual ou automaticamente | Service Auto Scaling | HPA |
| Service discovery e balanceamento | Um endereço estável na frente de réplicas que mudam | ALB, Service Connect | Service, Ingress |
| Deploy sem downtime | Troca de versão gradual e rollback | Rolling update, blue/green | RollingUpdate |
| Configuração e segredos | Injeta variáveis e credenciais nos containers | Task definition + Secrets Manager | ConfigMap, Secret |
Orquestradores de containers: não gerenciados
Liberdade total de configuração, em troca de operar upgrades, alta disponibilidade, backup do etcd e segurança do control plane.
Orquestradores de containers: gerenciados
Menos operação e SLA do provedor, em troca de menos controle e de dependência do fornecedor. Nesta aula: Amazon ECS (orquestrador da AWS). Na Aula 04: Kubernetes (k3d, local). Na Aula 05: Amazon EKS.