AWS Elastic Beanstalk
Platform-as-a-Service that deploys and runs your code on AWS-managed infrastructure you still own and can access.
Verified against AWS documentation · 2026-08-27
Key facts
- 01Upload code, Beanstalk provisions everything — EC2, ALB, Auto Scaling, monitoring — you keep full access to the underlying resources
- 02Two environment tiers: web server (handles HTTP) and worker (pulls jobs from an SQS queue)
- 03Platforms: Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker — one runtime per environment
- 04Deployment policies: all-at-once, rolling, rolling with additional batch, immutable, traffic splitting; blue/green via CNAME swap between two environments
Exam triggers
Phrases and scenarios that point here.
- "Deploy quickly without managing infrastructure" but still on EC2 (not serverless) → Beanstalk
- "Developers want to focus on code, not provisioning" → Beanstalk
- Zero-downtime deploy with instant rollback → immutable deployment or blue/green CNAME swap
- Migrating a traditional web app to AWS with minimal re-architecture → Beanstalk
Not this service
- Full control over infrastructure as code templates → CloudFormation
- Container orchestration at scale → ECS/EKS
- Event-driven, no servers at all → Lambda
- Deploying to on-premises or hybrid fleets → CodeDeploy
Use cases
- 01A three-person startup ships a Django app to production in an afternoon — no one on the team has written a CloudFormation template or wants to
- 02Lift-and-shift of an aging PHP monolith from a rented VPS: same code, but now with a load balancer, auto scaling, and health dashboards for free
- 03Worker tier chewing through a nightly invoice-generation queue — Beanstalk manages the SQS polling daemon so your code only sees HTTP POSTs
- 04Blue/green releases for a booking site that can't afford a bad Friday deploy: stand up the new environment, test it, swap CNAMEs, swap back in seconds if it breaks
How it's charged
- 01Beanstalk itself is free — you pay only for the resources it provisions (EC2, ALB, S3, EBS, RDS if attached)
- 02The billing surprise is what it quietly creates: a load balancer alone runs ~USD 16+/month even at zero traffic
- 03Terminating an environment deletes its resources, but application versions sit in S3 forever unless you set a lifecycle policy — small cost, real clutter
- 04An RDS instance created inside the environment is deleted with it — attach databases externally for anything you want to keep