Download - (APP202) Deploy, Manage, Scale Apps w/ AWS OpsWorks & AWS Elastic Beanstalk | AWS re:Invent 2014
November 12th, 2014 | Las Vegas, NV
Chris Barclay and Abhishek Singh, Amazon Web Services
You need to
deliver resilient
applications with
less work
Source: http://xkcd.com/844/
Elastic Beanstalk OpsWorks CloudFormation
Application container Application automation Templated provisioning
Java PHP Python Ruby .NET Node.js
Docker
Alert
Log
Mon
Ap
p
AZ
EL
B
http://your-app.elasticbeanstalk.com
Alert
Log
Mon
Ap
p
AZ
http://your-app.elasticbeanstalk.com
Alert
Log
Mon
Ap
p
AZ
EL
B
http://your-app.elasticbeanstalk.com
Alert
Log
Mon
Ap
p
AZ
SQS queueProducers
Load-based autoscaling
PHP
app
server
PHP
app
server
PHP
app
server
Alert
Log
Mon
Ap
p
AZ
EL
B
http://your-app.elasticbeanstalk.com
import os
some_var=os.environ.get(‘API_CREDS’)
String some_var = System.getProperty(‘API_CREDS’)
NameValueCollection appConfig = ConfigurationManager.AppSettings;
String param = appConfig[”API_CREDS"];
Python
Java
C#
Alert
Log
Mon
Ap
p
AZ
EL
B
http://your-app.elasticbeanstalk.com
import os
some_var=os.environ.get(‘API_CREDS’)
String some_var = System.getProperty(‘API_CREDS’)
NameValueCollection appConfig = ConfigurationManager.AppSettings;
string param = appConfig[”API_CREDS"];
Python
Java
C#
Alert
Log
Mon
Ap
p
AZ
EL
B
http://your-app.elasticbeanstalk.com
import os
some_var=os.environ.get(‘API_CREDS’)
String some_var = System.getProperty(‘API_CREDS’)
NameValueCollection appConfig = ConfigurationManager.AppSettings;
string param = appConfig[”API_CREDS"];
Python
Java
C#
Recipe
+
Metadata
=
Command
execute “mysql-connect” do
command “/usr/bin/mysql
-u#{node[:deploy][:myphpapp][:database][:username]}
-p#{node[:deploy][:myphpapp][:database][:password]}
#{node[:deploy][:myphpapp][:database][:database]}
…
“deploy”: {
“myphpapp”: {
“database”: {
“username”: “root”,
“password”: “abcxyz”,
…
“/usr/bin/mysql -uroot –pabcxyz myphpapp …
Load-based Auto scaling
PHP
App
Server
PHP
App
Server
PHP
App
Server
HA
Proxy
Ap
pE
LB
AZ
your-app.com
Alert
Log
Mon
Users table
(DynamoDB)
MySQL primary
(Amazon RDS)
Ap
pE
LB
AZ
your-app.com
Alert
Log
Mon
Users table
(DynamoDB)
MySQL primary
(Amazon RDS)
App Storage
(Amazon S3)
IAM instance profile
Ap
pE
LB
AZ
your-app.com
Alert
Log
Mon
Users table
(DynamoDB)
MySQL primary
(RDS)
App storage
(Amazon S3)
IAM instance profile
Ap
pE
LB
AZ
your-app.com
Alert
Log
Mon
Users table
(DynamoDB)
MySQL primary
(Amazon RDS)
App storage
(Amazon S3)
IAM instance profile
Ap
pE
LB
AZ
your-app.com
Alert
Log
Mon
AWS
CloudFormation
template
http://amzn.to/1dh8QkU
http://amzn.to/1bSHOPN
http://amzn.to/1m11Z3K
Come see us:
Dev Chat in the
Developer Lounge
3:15pm
Thursday, Nov 13
Thank you!
http://bit.ly/awsevals