AWS SAA-C03/08 - Serverless e Containers2 min
ECS e Fargate
Responda com suas palavras antes de ler o resto da nota.
- Que problema isso resolve?
- Quando usar / quando NÃO usar?
- Qual o principal trade-off (custo, latência, operação)?
- Que sinal no enunciado aponta pra isso?
- Com o que isso é confundido na prova?
Conceito
ECS é o orquestrador de containers próprio da AWS. Fargate não é orquestrador — é o modo de execução sem servidor que ECS (e EKS) podem usar.
| Launch type | Quem gerencia as instâncias | Quando usar |
|---|---|---|
| EC2 | Você (patch, escala, capacidade) | Precisa de controle do host, GPU, ou já tem RI/Spot |
| Fargate | AWS — você não vê servidor | Mínima operação, carga variável |
Conceitos
| Peça | O que é |
|---|---|
| Task Definition | O molde: imagem, CPU, memória, portas, variáveis, volumes |
| Task | Uma execução da task definition |
| Service | Mantém N tasks rodando, integra com ELB, faz rolling update |
| Cluster | Agrupamento lógico |
| ECR | Registro de imagens Docker |
As duas roles que a prova confunde
| Role | Quem usa | Para quê |
|---|---|---|
| Task Role | O seu container | Acessar S3, DynamoDB, Secrets Manager |
| Task Execution Role | O agente ECS | Puxar imagem do ECR, escrever log no CloudWatch |
Se a questão diz "o container não consegue acessar o S3", é a Task Role. Se diz "a task não inicia, erro ao baixar a imagem", é a Task Execution Role.
Modos de rede
awsvpc (padrão no Fargate): cada task ganha a própria ENI e o próprio Security Group — é o modo esperado nas respostas. Também existem bridge, host e none no launch type EC2.
Escala
- Service Auto Scaling por CPU, memória ou requisições no ALB
- Capacity Providers misturam On-Demand e Spot (inclusive Fargate Spot, até 70% mais barato)
- Integra com ALB por dynamic port mapping (EC2) ou por ENI (awsvpc)
Trade-offs
Fargate remove a gestão de instância e cobra mais por vCPU/hora — em carga constante e alta, um cluster EC2 com Reserved Instances ou Spot sai bem mais barato. Fargate ganha em carga variável, em times pequenos e onde "mínima sobrecarga operacional" é requisito.
ECS é mais simples que EKS e amarra você à AWS; EKS entrega Kubernetes portável ao custo de complexidade e de uma taxa por cluster.
Sinais de prova
- "Containers na AWS com mínima operação" → ECS on Fargate
- "Já usamos Kubernetes on-premises" → EKS
- "Container não acessa o S3" → Task Role
- "Task falha ao puxar a imagem do ECR" → Task Execution Role
- "Reduzir custo de containers tolerantes a interrupção" → Fargate Spot
- "Cada container precisa do próprio Security Group" → modo awsvpc
- "Job em lote que passa de 15 min" → ECS/Fargate task ou AWS Batch, não Lambda
Relacionado
Parte de 08 - MOC Serverless e Containers · Documentação AWS