Skip to content
Latchkey

O Que É o Elastic Beanstalk? A Plataforma como Serviço da AWS

O AWS Elastic Beanstalk é uma plataforma como serviço: você faz upload do seu app e o Beanstalk provisiona e gerencia as instâncias EC2, o load balancer e o escalonamento nos bastidores.

O Beanstalk é para equipes que querem fazer deploy de um app web na AWS sem configurar EC2, load balancers e auto-scaling manualmente. Você escolhe uma plataforma (Node.js, Python, Java, Docker e mais), envia seu código, e o Beanstalk monta o ambiente. Você ainda pode descer até os recursos subjacentes quando necessário.

O que o Beanstalk provisiona

A partir de uma única application version, o Beanstalk cria um ambiente com instâncias EC2, um Auto Scaling group, um Elastic Load Balancer, security groups e monitoramento de saúde. Ele conecta tudo isso para que seu app esteja acessível e escalável desde o início.

Aplicações, versões e ambientes

  • Application - o projeto lógico.
  • Application version - um build específico enviado.
  • Environment - um deploy em execução (por exemplo staging ou production).

Você mantém o controle

Embora o Beanstalk gerencie recursos, você pode configurá-los por meio de option settings ou .ebextensions, e mantém acesso total às instâncias EC2 e outros recursos que ele cria. É conveniência gerenciada sem ser uma caixa-preta.

Políticas de deploy

O Beanstalk suporta deploys all-at-once, rolling, rolling com batch adicional e immutable. As políticas mais seguras sobem novas instâncias antes de aposentar as antigas, trocando velocidade de deploy por atualizações sem downtime.

Papel no CI/CD

Um pipeline empacota o app, envia uma nova application version e diz ao Beanstalk para fazer deploy dela em um ambiente. A AWS CLI ou a EB CLI faz isso, autenticada com uma role IAM/OIDC. O CI cuida do build e dos testes; o Beanstalk cuida do provisionamento e da política de liberação.

Principais conclusões

  • O Elastic Beanstalk é o PaaS da AWS: envie o código e ele provisiona a infraestrutura.
  • Ele gerencia EC2, load balancing e escalonamento, mantendo os recursos acessíveis.
  • Pipelines fazem deploy enviando uma nova application version e acionando uma liberação.

Guias relacionados