O que é o Elastic Beanstalk?
O AWS Elastic Beanstalk é um serviço PaaS (Platform as a Service) que facilita o deploy e gerenciamento de aplicações web. Você faz upload do código e o Beanstalk automaticamente cuida do provisionamento, balanceamento de carga, escalabilidade e monitoramento.
Conceitos-Chave
Aplicação
Container lógico para componentes do Beanstalk (ambientes, versões, configurações).
Versão da Aplicação
Versão específica do código da aplicação armazenada no S3.
Ambiente
Versão da aplicação em execução na infraestrutura AWS. Tipos:
- Web Server: Para aplicações web tradicionais
- Worker: Para processar tarefas em background
Plataformas Suportadas
- Java, .NET, PHP, Node.js
- Python, Ruby, Go
- Docker (single e multi-container)
O que o Beanstalk Gerencia
- Instâncias EC2
- Load Balancer (ELB)
- Auto Scaling Groups
- Security Groups
- Banco de dados RDS (opcional)
- Monitoramento (CloudWatch)
Níveis de Controle
- Totalmente gerenciado: Beanstalk cuida de tudo
- Controle total: Você pode acessar e configurar recursos subjacentes
- Acesso SSH às instâncias EC2
- Customização via arquivos de configuração (.ebextensions)
Deployment Policies
- All at once: Deploy em todas as instâncias simultaneamente (downtime)
- Rolling: Deploy em lotes (capacidade reduzida temporariamente)
- Rolling with additional batch: Mantém capacidade total
- Immutable: Cria novas instâncias, depois substitui as antigas
- Blue/Green: Ambiente completamente novo, depois troca
Casos de Uso
- Deploy rápido de aplicações web
- Ambientes de desenvolvimento e teste
- Aplicações que precisam escalar automaticamente
- Quando você quer focar no código, não na infraestrutura
Precificação
Elastic Beanstalk é gratuito! Você paga apenas pelos recursos AWS utilizados (EC2, ELB, S3, etc).
💡 Pontos Importantes para a Certificação
- Beanstalk é PaaS - você foca no código, AWS gerencia infraestrutura
- O serviço em si é gratuito - paga apenas pelos recursos
- Você mantém controle total dos recursos subjacentes
- Suporta múltiplas linguagens e Docker
- Ideal para desenvolvedores que querem deploy rápido
- Automatiza provisionamento, load balancing e auto scaling
- Diferentes estratégias de deployment para diferentes necessidades
🎯 Dicas de Estudo
- Beanstalk = PaaS = Foco no código, não na infraestrutura
- Diferente de Lambda (serverless) - usa EC2 por baixo
- Você pode acessar e modificar recursos (EC2, ELB, etc)
- Gratuito - paga apenas pelos recursos AWS utilizados
- Ideal para "lift and shift" de aplicações tradicionais
- Suporta ambientes Blue/Green para deploy sem downtime
