AWS Elastic Beanstalk is a service that allows developers to quickly deploy and manage applications in the AWS cloud without worrying about the underlying infrastructure. It provisions the required resources such as load balancers, EC2 instances, Auto Scaling, and storage and deploys the application. It also handles automatic scaling and high availability of the application. Developers can focus on coding applications while Elastic Beanstalk handles the deployment and management of the infrastructure.
15. • Choose your runtime
Java
Tomcat 6 or 7
Apache
Amazon Linux
16. • Choose your runtime
Java PHP
Tomcat 6 or 7 PHP 5.3
Apache Apache
Amazon Linux Amazon Linux
17. • Choose your runtime
Java PHP Python
Tomcat 6 or 7 PHP 5.3 Python 2.6
Apache Apache Apache
Amazon Linux Amazon Linux Amazon Linux
18. • Choose your runtime
Java PHP Python Ruby
Tomcat 6 or 7 PHP 5.3 Python 2.6 Ruby 1.8 or 1.9
Apache Apache Apache Passenger
Amazon Linux Amazon Linux Amazon Linux Amazon Linux
19. • Choose your runtime
Java PHP Python Ruby .NET
Tomcat 6 or 7 PHP 5.3 Python 2.6 Ruby 1.8 or 1.9 .NET 2.0 - .NET 4.5
Apache Apache Apache Passenger IIS 7.5 or IIS 8
Amazon Linux Amazon Linux Amazon Linux Amazon Linux Windows Server
2008 R2
- or -
Windows Server
2012
23. • Provisions resources:
Elastic Load
Balancer
Amazon Elastic
Compute Cloud
Choose your runtime (EC2)
Availability Zone A
You
Elastic
Beanstalk Amazon Simple
Storage Service
(S3)
24. • Provisions resources:
• Installs and configures software. Elastic Load
Balancer
Amazon Elastic
Compute Cloud
Choose your runtime (EC2)
Availability Zone A
You
Elastic
Beanstalk Amazon Simple
Storage Service
(S3)
25. • Provisions resources:
User
www.myapp.com
• Installs and configures software. Elastic Load
•
Balancer
Automatically scales.
Amazon Elastic
Compute Cloud
Choose your runtime (EC2)
Availability Zone A
You
Elastic
Beanstalk Amazon Simple
Storage Service
(S3)
26. • Provisions resources:
User
www.myapp.com
• Installs and configures software. Elastic Load
•
Balancer
Automatically scales.
• Deploys your application.
Amazon Elastic
Compute Cloud
Upload your app (EC2)
Availability Zone A
You
Elastic
Beanstalk Amazon Simple
Storage Service
(S3)
27. CloudWatch Metrics Configuration File
# place this file inside a .ebextensions folder in the root of app
sources:
/aws-scripts-mon: http://ec2-downloads.s3.amazonaws.com/cloudwatch-
samples/CloudWatchMonitoringScripts.zip
container_commands:
01-setupcron:
command: echo "* * * * * root perl /aws-scripts-mon/mon-put-instance-data.pl --
mem-util --mem-used --mem-avail --aws-access-key-id $AWS_ACCESS_KEY_ID
--aws-secret-key $AWS_SECRET_KEY > /dev/null" > /etc/cron.d/cwpump
02-changeperm:
command: chmod 644 /etc/cron.d/cwpump
28.
29. • Provisions resources:
User
www.myapp.com
• Installs and configures software. Elastic Load
•
Balancer
Automatically scales.
• Deploys your application.
……
• Easily reliable.
Amazon Elastic
Compute Cloud
(EC2)
Availability Zone A Availability Zone B
You
Elastic
Beanstalk Amazon Simple
Storage Service
(S3)
30.
31. • Provisions resources:
User
www.myapp.com
• Installs and configures software. Elastic Load
•
Balancer
Automatically scales.
• Deploys your application.
……
• Easily reliable.
Amazon Elastic
Compute Cloud
(EC2)
Availability Zone A Availability Zone B
You
Elastic
Beanstalk Amazon Simple
Storage Service Amazon Relational
(S3) Database Service
(RDS)