ENES

AWS Elastic Beanstalk

Upload your web app's code and AWS sets up the servers to run it.

A zip of application code goes into Elastic Beanstalk, which sets up a load balancer, two servers and monitoring

AWS Elastic Beanstalk is a service for putting a web application online without assembling the infrastructure piece by piece. You upload your code, written in something like Python, Node.js, Java, PHP, Ruby, Go or .NET, or packaged as a Docker container. Beanstalk then creates what the app needs to run: EC2 servers, a load balancer, automatic scaling when traffic grows, health checks and CloudWatch monitoring.

What makes it different from a fully hidden platform is that nothing is a black box. Everything Beanstalk creates lives in your account, built with CloudFormation behind the scenes, and you can inspect it and tweak it. Beanstalk itself costs nothing extra; you pay for the servers and other resources it creates. It also handles updates with strategies like rolling deployments, which replace servers a few at a time so the site never goes fully down.

Beanstalk has been around since 2011, and it remains a quick path for a classic web app or API with a database behind it. Many newer projects choose containers on ECS or Fargate, or serverless with Lambda, which give more control or less to manage. Knowing Beanstalk still helps, because plenty of production systems run on it.

Keep in mind

Go deeper

Related terms

More in AWS