Understanding Elastic Beanstalk
- AWS Elastic Beanstalk is an orchestration service that can deploy applications & also orchestrate number of AWS Services such as
- EC2 instances
- S3 buckets
- CloudWatch
- SNS
- ELB
- Autoscaling
- AWS Elastic Beanstalk support web applications written in
- Java
- PHP
- .net
- Nodejs
- Python
- Ruby
- Go
- Docker
- It Supports Web Servers such as
- Apache
- Nginx
- Passenger
- IIS
- AWS Elastic Beanstalk has no charges. You will be charged for the resources like ec2 instances, s3 buckets etc created as part of Elastic BeanStalk
- Elastic Beanstalk Components:
- Application:
- Is logical collection of Elastic Beanstalk Components, includes environment, versions and environment
- Application version:
- This refers to specific source code version of web application. Application versions point to s3 bucket objects.
- Environment: Two types of environments
- Web Server Env: This listens to http(s) and processes the request
- Worker Env: They process background tasks that listens to message on SQS (Simple Queue Server)
- Application:
- Environment Configuration:
- Configuration template.
- Experiment: Create a tomcat based elastic beanstalk application
- Now lets try to deploy a new application from here
- Now navigate to application versions
- Switching between application versions is simple.
Elastic Beanstalk Environment tier
- Lets look at environment configuration of the above example b4 we look at tiers