AWS Elastic Beanstalk
AWS Elastic Beanstalk is an orchestration service offered by Amazon Web Services for deploying applications which orchestrates various AWS services, including EC2, S3, Simple Notification Service (SNS), CloudWatch, autoscaling, and Elastic Load Balancers.[2] Elastic Beanstalk provides an additional layer of abstraction over the bare server and OS; users instead see a pre-built combination of OS and platform, such as "64bit Amazon Linux 2014.03 v1.1.0 running Ruby 2.0 (Puma)" or "64bit Debian jessie v2.0.7 running Python 3.4 (Preconfigured - Docker)".[3] Deployment requires a number of components to be defined: an 'application' as a logical container for the project, a 'version' which is a deployable build of the application executable, a 'configuration template' that contains configuration information for both the Beanstalk environment and for the product. Finally an 'environment' combines a 'version' with a 'configuration' and deploys them.[3] Executables themselves are uploaded as archive files to S3 beforehand and the 'version' is just a pointer to this.[3]
Developer(s) | Amazon Web Services |
---|---|
Initial release | January 19, 2011 [1] |
Type | Web development |
License | Proprietary |
Website | aws |
Name
The name "Elastic beanstalk" is a reference to the beanstalk that grew all the way up to the clouds in the fairy tale Jack and the Beanstalk.
Applications and software stacks
Supported applications and software stacks include[4]:
- Apache Tomcat for Java applications
- Apache HTTP Server for PHP applications
- Apache HTTP Server for Python applications
- Nginx or Apache HTTP Server for Node.js applications
- Passenger or Puma for Ruby applications
- Microsoft IIS 7.5, 8.0, and 8.5 for .NET applications
- Java SE
- Docker
- Go
Deployment methods
Supported deployment methods include:
- Zip files
- Java Web Application Archive (
.WAR
file) - Docker containers[5]
- Git
- AWS CodePipeline
Alternative AWS technologies
- AWS CloudFormation provides a declarative template-based Infrastructure as Code model for configuring AWS.[6]
- AWS OpsWorks provides configuration of EC2 services using Chef.
References
- "Release: AWS Elastic Beanstalk". Retrieved 2013-05-06.
- "What Is AWS Elastic Beanstalk and Why Do I Need It?". Retrieved 2013-05-27.
- Wittig, Andreas; Wittig, Michael (2016). Amazon Web Services in Action. Manning Press. p. 132-133. ISBN 978-1-61729-288-0.
- "AWS Elastic Beanstalk FAQ". Retrieved 2020-03-17.
- "AWS Elastic Beanstalk adds Docker support". Retrieved 2014-05-06.
- AWS in Action & Wittig (2016), p. 112.