SlideShare a Scribd company logo
1 of 38
Download to read offline
© 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Abhishek Singh | Sr. Product Manager | AWS Elastic Beanstalk
Colin Angel | Technical Director | Isobar (Royal Caribbean Cruises Ltd.)
October 2015
DVO201
Deploying and Scaling Web Applications
with AWS Elastic Beanstalk
Agenda
• AWS Elastic Beanstalk (Elastic Beanstalk) vs. DIY
• Developer workflow (sample application)
• Demo
• Best practices
• Demo
• Customer story
After this session, you should be able to:
• Understand the benefits of using Elastic Beanstalk vs. DIY
• Deploy applications to Elastic Beanstalk using the EB command line interface (EB
CLI)
• Modify application configuration (e.g., environment variables, proxy, etc.)
• Extend applications to use additional AWS resources (e.g., Amazon RDS, Amazon
SNS, etc.)
• Debug, load test, and scale applications to handle millions of web requests
• Use deployment options available for zero-downtime deployments:
• Rolling deployments (in-place deployments)
• Swap URL (blue/green deployments)
• Set up alarms and notifications to monitor your running applications
• Use tags for cost management
Elastic Beanstalk vs. DIY
Your code
HTTP server
Application server
Language interpreter
Operating system
Host
Elastic Beanstalk configures
each EC2 instance in your
environment with the
components necessary to run
applications for the selected
platform. No more worrying
about logging into instances to
install and configure your
application stack.
Focus on building your
application
Provided by you
Provided and managed by Elastic Beanstalk
On-instance configuration
Elastic Beanstalk vs. DIY
• Preconfigured infrastructure:
• Single-instance (dev, low cost)
• Load-balanced, Auto Scaling (production)
• Web and worker tiers
• Elastic Beanstalk provisions necessary
infrastructure resources, such as the load
balancer, Auto Scaling group, security
groups, database (optional), etc.
• Provides a unique domain name for your
application
(e.g., yourapp.elasticbeanstalk.com)
Infrastructure stack
Information required to deploy an application
01
02
03
04
Region
Stack (container) type
Single-instance
Load balanced with
autoscaling
Or
Database (RDS) Optional
Your code
Supported platforms
How to deploy applications
1. With the AWS Management Console
2. With the AWS Toolkit for Eclipse and Visual
Studio IDE
3. With the EB command line interface (EB
CLI)
$ eb deploy
Deploy a sample application
Initial application deployment workflow:
$ git clone
https://github.com/awslabs/eb-
node-express-sample.git
Download the sample application:02
$ eb init
Create your Elastic Beanstalk app:03
Follow the prompts to configure the
environment
04
05 Create the resources and launch the
application:
$ eb create
$ pip install --upgrade awsebcli
Install the EB CLI:01
Update the sample application
Workflow for updating the application:
Update your code01
$ git add .
$ git commit –m “v2.0”
$ eb deploy
Add and commit code to repository:02
Open the application after
deployment completes:
03
$ eb open
Sample application details
Application dependency management
package.json
{
"name": "Elastic-Beanstalk-Sample-App",
"version": "0.0.1",
"private": true,
"dependencies": {
"ejs": "latest",
"aws-sdk": "latest",
"express": "latest",
"body-parser": "latest"
},
"scripts": {
"start": "node app.js"
}
}
package.json
{
"name": "Elastic-Beanstalk-Sample-App",
"version": "0.0.1",
"private": true,
"dependencies": {
"ejs": "latest",
"aws-sdk": "latest",
"express": "latest",
"body-parser": "latest"
},
"scripts": {
"start": "node app.js"
}
}
Bad idea to do this for production environments
package.json (cont.)
{
"name": "Elastic-Beanstalk-Sample-App",
"version": "0.0.1",
"private": true,
"dependencies": {
"ejs": "2.3.3",
"aws-sdk": "2.1.39",
"express": "4.13.1",
"body-parser": "1.13.2"
},
"scripts": {
"start": "node app.js"
}
}
Always lock down versions of dependencies
npm-shrinkwrap.json
{
"name": "Elastic-Beanstalk-Sample-App",
"version": "0.0.1",
"dependencies": {
"aws-sdk": {
"version": "2.1.39",
"from": "aws-sdk@latest",
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1.39.tgz",
"dependencies": {
"sax": {
"version": "0.5.3",
"from": "sax@0.5.3",
"resolved": "https://registry.npmjs.org/sax/-/sax-0.5.3.tgz"
},
"xml2js": {
"version": "0.2.8",
"from": "xml2js@0.2.8",
"resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.2.8.tgz"
},
cont…
Sample application details
How to configure and customize an environment using .ebextensions
https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html
options.config
option_settings:
aws:elasticbeanstalk:customoption:
AlarmEmail: "nobody@amazon.com"
aws:elasticbeanstalk:application:environment:
THEME: "flatly"
AWS_REGION: '`{ "Ref" : "AWS::Region"}`'
STARTUP_SIGNUP_TABLE: '`{ "Ref" : "StartupSignupsTable"}`'
NEW_SIGNUP_TOPIC: '`{ "Ref" : "NewSignupTopic"}`'
aws:elasticbeanstalk:container:nodejs:
ProxyServer: nginx
aws:elasticbeanstalk:container:nodejs:staticfiles:
/static: /static
Sample application details
How to add additional AWS resources (e.g., Amazon DynamoDB, Amazon SNS,
Amazon SQS, etc.) using .ebextensions
https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-resources.html
resources.config
Resources:
StartupSignupsTable:
Type: AWS::DynamoDB::Table
Properties:
KeySchema:
HashKeyElement: {AttributeName: email, AttributeType: S}
ProvisionedThroughput: {ReadCapacityUnits: 1, WriteCapacityUnits: 1}
NewSignupQueue:
Type: AWS::SQS::Queue
NewSignupTopic:
Type: AWS::SNS::Topic
Properties:
Subscription:
- Endpoint:
Fn::GetOptionSetting: {DefaultValue: nobody@amazon.com, OptionName: NewSignupEmail}
Protocol: email
- Endpoint:
Fn::GetAtt: [NewSignupQueue, Arn]
Protocol: sqs
resources.config (cont.)
AllowSNS2SQSPolicy:
Type: AWS::SQS::QueuePolicy
Properties:
PolicyDocument:
Id: PublicationPolicy
Statement:
- Action: ['sqs:SendMessage']
Condition:
ArnEquals:
aws:SourceArn: {Ref: NewSignupTopic}
Effect: Allow
Principal: {AWS: '*'}
Resource:
Fn::GetAtt: [NewSignupQueue, Arn]
Sid: Allow-SNS-SendMessage
Version: '2008-10-17'
Queues:
- {Ref: NewSignupQueue}
Demo
Application deployment
Best practices
Testing and tuning your application
• Pick performance metrics you want to optimize for (e.g., latency, concurrent
users, number of web requests, etc.)
• Load test your application:
• Start with autoscaling minimum and maximum of 1 to understand how your application
degrades under an overload condition
• Understand available metrics and how they correspond to your performance metric
• Configure autoscaling to optimize for performance metrics:
• Number of instances to add on scale out
• Breach duration
• Metric to scale on
• Tune the back end (DynamoDB, RDS, etc.) for optimal performance; leave
enough headroom for full scale out
Deployment option (rolling)
Pros:
• Deployments are fast (20-60 sec.)
Cons:
• Slower rollback because the previous application version must be
redeployed
• Possibility of state build-up on long-running environments
Deployment option (blue/green)
Pros:
• Fast rollback because the environment running the previous version has not
been modified in any way
• Ensures no state build up on environments
Cons:
• Deployments take longer than rolling deployments (2-5 min.) because a
new environment must be created
• Clients (i.e., mobile devices) might cache DNS addresses and not respect
DNS TTL, resulting in staggered/non-deterministic traffic rollover to the new
environment
Logs, metrics, and alarms
• Enable log rotation to automatically publish logs to Amazon S3
• Understand metrics available for your environment and what they mean
• Set up alarms to automatically monitor critical metrics and send notifications
when metrics are outside normal operating range
• Enable Amazon Route 53 health checks and alarms
Tag your environments
• Makes it easy to find resources belonging to a given environment
• Can be used to monitor costs associated with a given environment, or
application, or both
• Elastic Beanstalk automatically tags environments with:
• Environment name
• Environment ID
Demo
Best practices
Customer story:
Royal Caribbean Cruises Ltd.
Royal Caribbean Cruises Ltd.
• Operates 43 ships with 6 more under construction
contract and 2 more on firm order under 6 brands
• Services 490 destinations on all 7 continents
• 9,000 HTML pages served from the Royal Caribbean
site alone
• royalcaribbean.com launched using Elastic Beanstalk
in March 2015
• 100 mm monthly page views during peak season
• 6 mm monthly unique visitors during peak season
• 40 mm page-view surge above average during peak
Historical challenges
• On-premises:
• High demand for limited development and test environments
• Procurement dependencies, hardware failures, low
resilience, fixed scale, high operational cost
• Cloud Infrastructure as a Service (IaaS vs PaaS):
• Learning curve and retooling is costly and time consuming:
• It’s more complicated than a collection of cloud servers
• Architecting an enterprise-grade stack requires many
components working in concert:
• Networking, security, provisioning, deployment mechanisms,
configuration management, load balancing, autoscaling, fault
tolerance and recovery, and monitoring
The case for Elastic Beanstalk
• Elastic Beanstalk ̶ a key component of continuous delivery:
• Reduces the cost, time, and risk of delivering regular, incremental value to users
• Lower IT burden during and after delivery:
• Mostly self-serve environments (dev, test, perf)
• Automated provisioning, scaling, healing
• Single pane of glass for managing the stack (Elastic Load Balancing, Amazon EC2,
Auto Scaling, Amazon CloudWatch)
• Environments just work…it’s very stable
• Zero-downtime production deployments are fast and reliable
• Technology enablement:
• Empowers the Marketing team
• Provides visibility into environments, health, performance, KPIs
• Provides the ability to easily create and manage own environments for multiple
projects and tracks
Environments on demand
• Easily spin up identical or similar environment stacks for test cycles, parallel release tracks, and other
projects
• Different projects can have different environment requirements, yet follow a common paradigm
• A few templates and a couple commands are all that you need
Dev Dev2 Tst Tst2
Website brand 1
Dev Dev2 Dev3 Tst Tst2
Website brand 2
Tst3
Dev/test VPC Stage/prod VPC
Stg Stg2 Preprd Prod
Website brand 1
Stg Stg2 Stg3 Preprd Preview
Website brand 2
Prod
Redis Labs
Cache Cluster
S3
Apache/
Tomcat
Zone 1
Zone 2
ELB
Zone 1
ELB
Internet
gateway
AWS Direct
Connect
Private subnets
Service APIs,
Splunk
Security
layer
Zone 2
ELB
Zone 1
ELB
Public subnets
VPN
fallback
Security
layer
Zone 1
Zone 2
Royal
Datacenter
Apache/
Tomcat
Zone 2
Application architecture
Elastic Beanstalk
Automation
AWS CloudFormation + AWS APIs + CI + Elastic Beanstalk
• Use CloudFormation templates to create and manage environment configuration:
• Nested for shared and environment-specific configurations
• Use AWS APIs to script environment creation and updates
• Use Jenkins for continuous integration and deployment to Elastic Beanstalk
• Use Git for code and infrastructure configuration management
(Elastic Beanstalk templates)
• Use the Elastic Beanstalk console to monitor and troubleshoot
• Automate everything for repeatability, reliability, and reportability:
• Standardized configuration enforced
• No room for human error
• Rollbacks and auditing
• Quick and easy
AWS
CloudFormation
AWS APIs
Jenkins CI Elastic Beanstalk
Design Code Build Test OperateRelease Deploy
Develop
Continuous integration
Release cycles
DevOps
Automated builds,
tests, and
code scans
Automated
deployment and
provisioning
Automated load
balancing, scaling, and
cluster health
management
Git + Elastic Beanstalk + CloudFormation
Continuous delivery
Results
• Zero-downtime deployments
• 30-minute deployments vs. up to 3 hours
• Very stable under high load
• One part-time resource to support all Elastic Beanstalk
environments
• In October, we will also launch the following on Elastic
Beanstalk:
• royalcaribbean.com.br
• royalcaribbean.es
• royalcaribbean-espanol.com
• royalcaribbean.com.au
• Mobile booking
83%
Deployment time
reduced by
0
Outages since March
go live
75%
Web app ops reduced
by
Thank you!
Remember to complete
your evaluations!

More Related Content

What's hot

AWS CloudFormation Session
AWS CloudFormation SessionAWS CloudFormation Session
AWS CloudFormation SessionKamal Maiti
 
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel AvivAn introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel AvivAmazon Web Services
 
AWS Cloud Formation
AWS Cloud Formation AWS Cloud Formation
AWS Cloud Formation Adam Book
 
AWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | Edureka
AWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | EdurekaAWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | Edureka
AWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | EdurekaEdureka!
 
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar Series
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar SeriesContinuous Delivery with AWS Lambda - AWS April 2016 Webinar Series
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar SeriesAmazon Web Services
 
AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018
AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018 AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018
AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018 Amazon Web Services Korea
 
CI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day IsraelCI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day IsraelAmazon Web Services
 
Deploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
Deploy, Manage, and Scale your Apps with AWS Elastic BeanstalkDeploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
Deploy, Manage, and Scale your Apps with AWS Elastic BeanstalkAmazon Web Services
 
Amazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for KubernetesAmazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for KubernetesAmazon Web Services
 
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
AWS Black Belt Techシリーズ  AWS  Elastic  BeanstalkAWS Black Belt Techシリーズ  AWS  Elastic  Beanstalk
AWS Black Belt Techシリーズ AWS Elastic BeanstalkAmazon Web Services Japan
 
An Introduction to the AWS Well Architected Framework - Webinar
An Introduction to the AWS Well Architected Framework - WebinarAn Introduction to the AWS Well Architected Framework - Webinar
An Introduction to the AWS Well Architected Framework - WebinarAmazon Web Services
 
AWS Black Belt Online Seminar 2017 AWS OpsWorks
AWS Black Belt Online Seminar 2017 AWS OpsWorksAWS Black Belt Online Seminar 2017 AWS OpsWorks
AWS Black Belt Online Seminar 2017 AWS OpsWorksAmazon Web Services Japan
 
AWS CloudFormation Best Practices
AWS CloudFormation Best PracticesAWS CloudFormation Best Practices
AWS CloudFormation Best PracticesAmazon Web Services
 
Building Event-driven Architectures with Amazon EventBridge
Building Event-driven Architectures with Amazon EventBridge Building Event-driven Architectures with Amazon EventBridge
Building Event-driven Architectures with Amazon EventBridge James Beswick
 
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & ProcessesAmazon Web Services
 
Kubernetes on AWS with Amazon EKS
Kubernetes on AWS with Amazon EKSKubernetes on AWS with Amazon EKS
Kubernetes on AWS with Amazon EKSAmazon Web Services
 

What's hot (20)

AWS CloudFormation Session
AWS CloudFormation SessionAWS CloudFormation Session
AWS CloudFormation Session
 
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel AvivAn introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
 
CI/CD on AWS
CI/CD on AWSCI/CD on AWS
CI/CD on AWS
 
AWS Cloud Formation
AWS Cloud Formation AWS Cloud Formation
AWS Cloud Formation
 
AWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | Edureka
AWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | EdurekaAWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | Edureka
AWS Elastic Beanstalk Tutorial | AWS Certification | AWS Tutorial | Edureka
 
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar Series
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar SeriesContinuous Delivery with AWS Lambda - AWS April 2016 Webinar Series
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar Series
 
AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018
AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018 AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018
AWS 기반 Kubernetes 정복하기::정영준:: AWS Summit Seoul 2018
 
CI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day IsraelCI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day Israel
 
Deploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
Deploy, Manage, and Scale your Apps with AWS Elastic BeanstalkDeploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
Deploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
 
Azure AKS
Azure AKSAzure AKS
Azure AKS
 
Amazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for KubernetesAmazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for Kubernetes
 
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
AWS Black Belt Techシリーズ  AWS  Elastic  BeanstalkAWS Black Belt Techシリーズ  AWS  Elastic  Beanstalk
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
 
An Introduction to the AWS Well Architected Framework - Webinar
An Introduction to the AWS Well Architected Framework - WebinarAn Introduction to the AWS Well Architected Framework - Webinar
An Introduction to the AWS Well Architected Framework - Webinar
 
AWS Black Belt Online Seminar 2017 AWS OpsWorks
AWS Black Belt Online Seminar 2017 AWS OpsWorksAWS Black Belt Online Seminar 2017 AWS OpsWorks
AWS Black Belt Online Seminar 2017 AWS OpsWorks
 
AWS CloudFormation Best Practices
AWS CloudFormation Best PracticesAWS CloudFormation Best Practices
AWS CloudFormation Best Practices
 
Cloudformation101
Cloudformation101Cloudformation101
Cloudformation101
 
Building Event-driven Architectures with Amazon EventBridge
Building Event-driven Architectures with Amazon EventBridge Building Event-driven Architectures with Amazon EventBridge
Building Event-driven Architectures with Amazon EventBridge
 
Deep Dive: AWS CloudFormation
Deep Dive: AWS CloudFormationDeep Dive: AWS CloudFormation
Deep Dive: AWS CloudFormation
 
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
 
Kubernetes on AWS with Amazon EKS
Kubernetes on AWS with Amazon EKSKubernetes on AWS with Amazon EKS
Kubernetes on AWS with Amazon EKS
 

Viewers also liked

AWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAmazon Web Services
 
Introducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkIntroducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkAmazon Web Services
 
Agile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic BeanstalkAgile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic BeanstalkAmazon Web Services
 
Bootcamp: Getting Started on AWS
Bootcamp: Getting Started on AWSBootcamp: Getting Started on AWS
Bootcamp: Getting Started on AWSAmazon Web Services
 
(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the HoodAmazon Web Services
 
Installing WordPress on AWS
Installing WordPress on AWSInstalling WordPress on AWS
Installing WordPress on AWSManish Jain
 
AWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
AWS July Webinar Series: Introducing AWS OpsWorks for Windows ServerAWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
AWS July Webinar Series: Introducing AWS OpsWorks for Windows ServerAmazon Web Services
 
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...Amazon Web Services
 
AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)Amazon Web Services
 
Customer Sharing: iCook - Continuous Deployment with AWS
Customer Sharing: iCook - Continuous Deployment with AWSCustomer Sharing: iCook - Continuous Deployment with AWS
Customer Sharing: iCook - Continuous Deployment with AWSAmazon Web Services
 
Introduction to Amazon Web Services
Introduction to Amazon Web ServicesIntroduction to Amazon Web Services
Introduction to Amazon Web ServicesAmazon Web Services
 
AWS Webcast - Getting Started with Amazon Web Services
AWS Webcast - Getting Started with Amazon Web ServicesAWS Webcast - Getting Started with Amazon Web Services
AWS Webcast - Getting Started with Amazon Web ServicesAmazon Web Services
 
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
(DVO312) Sony: Building At-Scale Services with AWS Elastic BeanstalkAmazon Web Services
 
(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWSAmazon Web Services
 
(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...
(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...
(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...Amazon Web Services
 
Running Microservices on Amazon ECS - AWS April 2016 Webinar Series
Running Microservices on Amazon ECS - AWS April 2016 Webinar SeriesRunning Microservices on Amazon ECS - AWS April 2016 Webinar Series
Running Microservices on Amazon ECS - AWS April 2016 Webinar SeriesAmazon Web Services
 

Viewers also liked (20)

AWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and Docker
 
Introducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkIntroducing AWS Elastic Beanstalk
Introducing AWS Elastic Beanstalk
 
Agile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic BeanstalkAgile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic Beanstalk
 
Bootcamp: Getting Started on AWS
Bootcamp: Getting Started on AWSBootcamp: Getting Started on AWS
Bootcamp: Getting Started on AWS
 
(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
AWS Lambda and Serverless Cloud
AWS Lambda and Serverless CloudAWS Lambda and Serverless Cloud
AWS Lambda and Serverless Cloud
 
Installing WordPress on AWS
Installing WordPress on AWSInstalling WordPress on AWS
Installing WordPress on AWS
 
AWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
AWS July Webinar Series: Introducing AWS OpsWorks for Windows ServerAWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
AWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
 
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
 
IAM Recommended Practices
IAM Recommended PracticesIAM Recommended Practices
IAM Recommended Practices
 
AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)
 
Customer Sharing: iCook - Continuous Deployment with AWS
Customer Sharing: iCook - Continuous Deployment with AWSCustomer Sharing: iCook - Continuous Deployment with AWS
Customer Sharing: iCook - Continuous Deployment with AWS
 
Introduction to Amazon Web Services
Introduction to Amazon Web ServicesIntroduction to Amazon Web Services
Introduction to Amazon Web Services
 
AWS Webcast - Getting Started with Amazon Web Services
AWS Webcast - Getting Started with Amazon Web ServicesAWS Webcast - Getting Started with Amazon Web Services
AWS Webcast - Getting Started with Amazon Web Services
 
Big Data Architectural Patterns
Big Data Architectural PatternsBig Data Architectural Patterns
Big Data Architectural Patterns
 
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
 
(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS
 
(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...
(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...
(APP402) Serving Billions of Web Requests Each Day with Elastic Beanstalk | A...
 
Running Microservices on Amazon ECS - AWS April 2016 Webinar Series
Running Microservices on Amazon ECS - AWS April 2016 Webinar SeriesRunning Microservices on Amazon ECS - AWS April 2016 Webinar Series
Running Microservices on Amazon ECS - AWS April 2016 Webinar Series
 

Similar to (DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk

AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...
AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...
AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...Amazon Web Services
 
Agile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic BeanstalkAgile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic BeanstalkAmazon Web Services
 
Distribua, gerencie e escale suas aplicações com o aws elastic beanstalk
Distribua, gerencie e escale suas aplicações com o aws elastic beanstalkDistribua, gerencie e escale suas aplicações com o aws elastic beanstalk
Distribua, gerencie e escale suas aplicações com o aws elastic beanstalkAmazon Web Services LATAM
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...Yong Feng
 
(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture PatternsAmazon Web Services
 
AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)
AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)
AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)Amazon Web Services
 
基于Aws的持续集成、交付和部署 代闻
基于Aws的持续集成、交付和部署 代闻基于Aws的持续集成、交付和部署 代闻
基于Aws的持续集成、交付和部署 代闻Mason Mei
 
Managed Cloud Services for Siebel CRM on Amazon AWS
Managed Cloud Services for Siebel CRM on Amazon AWSManaged Cloud Services for Siebel CRM on Amazon AWS
Managed Cloud Services for Siebel CRM on Amazon AWSMilind Waikul
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service FabricDavide Benvegnù
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS Tom Laszewski
 
Nuts and bolts of running a popular site in the aws cloud
Nuts and bolts of running a popular site in the aws cloudNuts and bolts of running a popular site in the aws cloud
Nuts and bolts of running a popular site in the aws cloudDavid Veksler
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsIan Robinson
 
Simple Cloud with Amazon Lightsail - Mike Coleman
Simple Cloud with Amazon Lightsail - Mike ColemanSimple Cloud with Amazon Lightsail - Mike Coleman
Simple Cloud with Amazon Lightsail - Mike ColemanAmazon Web Services
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realistsKarthik Gaekwad
 
Running Business-Critical Applications on the AWS Cloud
Running Business-Critical Applications on the AWS CloudRunning Business-Critical Applications on the AWS Cloud
Running Business-Critical Applications on the AWS CloudAmazon Web Services
 
saa3_wk5.pdf
saa3_wk5.pdfsaa3_wk5.pdf
saa3_wk5.pdfMichgo1
 
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...Amazon Web Services
 

Similar to (DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk (20)

AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...
AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...
AWS July Webinar Series-Deploying and Scaling Web Application with AWS Elasti...
 
Agile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic BeanstalkAgile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic Beanstalk
 
Distribua, gerencie e escale suas aplicações com o aws elastic beanstalk
Distribua, gerencie e escale suas aplicações com o aws elastic beanstalkDistribua, gerencie e escale suas aplicações com o aws elastic beanstalk
Distribua, gerencie e escale suas aplicações com o aws elastic beanstalk
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
Managing Your Cloud Assets
Managing Your Cloud AssetsManaging Your Cloud Assets
Managing Your Cloud Assets
 
(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns
 
AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)
AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)
AWS re:Invent 2016: Born in the Cloud; Built Like a Startup (ARC205)
 
基于Aws的持续集成、交付和部署 代闻
基于Aws的持续集成、交付和部署 代闻基于Aws的持续集成、交付和部署 代闻
基于Aws的持续集成、交付和部署 代闻
 
Managed Cloud Services for Siebel CRM on Amazon AWS
Managed Cloud Services for Siebel CRM on Amazon AWSManaged Cloud Services for Siebel CRM on Amazon AWS
Managed Cloud Services for Siebel CRM on Amazon AWS
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
 
Nuts and bolts of running a popular site in the aws cloud
Nuts and bolts of running a popular site in the aws cloudNuts and bolts of running a popular site in the aws cloud
Nuts and bolts of running a popular site in the aws cloud
 
How Easy to Automate Application Deployment on AWS
How Easy to Automate Application Deployment on AWSHow Easy to Automate Application Deployment on AWS
How Easy to Automate Application Deployment on AWS
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
 
Simple Cloud with Amazon Lightsail - Mike Coleman
Simple Cloud with Amazon Lightsail - Mike ColemanSimple Cloud with Amazon Lightsail - Mike Coleman
Simple Cloud with Amazon Lightsail - Mike Coleman
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 
Running Business-Critical Applications on the AWS Cloud
Running Business-Critical Applications on the AWS CloudRunning Business-Critical Applications on the AWS Cloud
Running Business-Critical Applications on the AWS Cloud
 
saa3_wk5.pdf
saa3_wk5.pdfsaa3_wk5.pdf
saa3_wk5.pdf
 
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
Scaling to millions of users with Amazon CloudFront - April 2017 AWS Online T...
 
Azure App Service Deep Dive
Azure App Service Deep DiveAzure App Service Deep Dive
Azure App Service Deep Dive
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Recently uploaded

Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 

Recently uploaded (20)

Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 

(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk

  • 1. © 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Abhishek Singh | Sr. Product Manager | AWS Elastic Beanstalk Colin Angel | Technical Director | Isobar (Royal Caribbean Cruises Ltd.) October 2015 DVO201 Deploying and Scaling Web Applications with AWS Elastic Beanstalk
  • 2. Agenda • AWS Elastic Beanstalk (Elastic Beanstalk) vs. DIY • Developer workflow (sample application) • Demo • Best practices • Demo • Customer story
  • 3. After this session, you should be able to: • Understand the benefits of using Elastic Beanstalk vs. DIY • Deploy applications to Elastic Beanstalk using the EB command line interface (EB CLI) • Modify application configuration (e.g., environment variables, proxy, etc.) • Extend applications to use additional AWS resources (e.g., Amazon RDS, Amazon SNS, etc.) • Debug, load test, and scale applications to handle millions of web requests • Use deployment options available for zero-downtime deployments: • Rolling deployments (in-place deployments) • Swap URL (blue/green deployments) • Set up alarms and notifications to monitor your running applications • Use tags for cost management
  • 4. Elastic Beanstalk vs. DIY Your code HTTP server Application server Language interpreter Operating system Host Elastic Beanstalk configures each EC2 instance in your environment with the components necessary to run applications for the selected platform. No more worrying about logging into instances to install and configure your application stack. Focus on building your application Provided by you Provided and managed by Elastic Beanstalk On-instance configuration
  • 5. Elastic Beanstalk vs. DIY • Preconfigured infrastructure: • Single-instance (dev, low cost) • Load-balanced, Auto Scaling (production) • Web and worker tiers • Elastic Beanstalk provisions necessary infrastructure resources, such as the load balancer, Auto Scaling group, security groups, database (optional), etc. • Provides a unique domain name for your application (e.g., yourapp.elasticbeanstalk.com) Infrastructure stack
  • 6. Information required to deploy an application 01 02 03 04 Region Stack (container) type Single-instance Load balanced with autoscaling Or Database (RDS) Optional Your code Supported platforms
  • 7. How to deploy applications 1. With the AWS Management Console 2. With the AWS Toolkit for Eclipse and Visual Studio IDE 3. With the EB command line interface (EB CLI) $ eb deploy
  • 8. Deploy a sample application Initial application deployment workflow: $ git clone https://github.com/awslabs/eb- node-express-sample.git Download the sample application:02 $ eb init Create your Elastic Beanstalk app:03 Follow the prompts to configure the environment 04 05 Create the resources and launch the application: $ eb create $ pip install --upgrade awsebcli Install the EB CLI:01
  • 9. Update the sample application Workflow for updating the application: Update your code01 $ git add . $ git commit –m “v2.0” $ eb deploy Add and commit code to repository:02 Open the application after deployment completes: 03 $ eb open
  • 10. Sample application details Application dependency management
  • 11. package.json { "name": "Elastic-Beanstalk-Sample-App", "version": "0.0.1", "private": true, "dependencies": { "ejs": "latest", "aws-sdk": "latest", "express": "latest", "body-parser": "latest" }, "scripts": { "start": "node app.js" } }
  • 12. package.json { "name": "Elastic-Beanstalk-Sample-App", "version": "0.0.1", "private": true, "dependencies": { "ejs": "latest", "aws-sdk": "latest", "express": "latest", "body-parser": "latest" }, "scripts": { "start": "node app.js" } } Bad idea to do this for production environments
  • 13. package.json (cont.) { "name": "Elastic-Beanstalk-Sample-App", "version": "0.0.1", "private": true, "dependencies": { "ejs": "2.3.3", "aws-sdk": "2.1.39", "express": "4.13.1", "body-parser": "1.13.2" }, "scripts": { "start": "node app.js" } } Always lock down versions of dependencies
  • 14. npm-shrinkwrap.json { "name": "Elastic-Beanstalk-Sample-App", "version": "0.0.1", "dependencies": { "aws-sdk": { "version": "2.1.39", "from": "aws-sdk@latest", "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1.39.tgz", "dependencies": { "sax": { "version": "0.5.3", "from": "sax@0.5.3", "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.3.tgz" }, "xml2js": { "version": "0.2.8", "from": "xml2js@0.2.8", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.2.8.tgz" }, cont…
  • 15. Sample application details How to configure and customize an environment using .ebextensions https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html
  • 16. options.config option_settings: aws:elasticbeanstalk:customoption: AlarmEmail: "nobody@amazon.com" aws:elasticbeanstalk:application:environment: THEME: "flatly" AWS_REGION: '`{ "Ref" : "AWS::Region"}`' STARTUP_SIGNUP_TABLE: '`{ "Ref" : "StartupSignupsTable"}`' NEW_SIGNUP_TOPIC: '`{ "Ref" : "NewSignupTopic"}`' aws:elasticbeanstalk:container:nodejs: ProxyServer: nginx aws:elasticbeanstalk:container:nodejs:staticfiles: /static: /static
  • 17. Sample application details How to add additional AWS resources (e.g., Amazon DynamoDB, Amazon SNS, Amazon SQS, etc.) using .ebextensions https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-resources.html
  • 18. resources.config Resources: StartupSignupsTable: Type: AWS::DynamoDB::Table Properties: KeySchema: HashKeyElement: {AttributeName: email, AttributeType: S} ProvisionedThroughput: {ReadCapacityUnits: 1, WriteCapacityUnits: 1} NewSignupQueue: Type: AWS::SQS::Queue NewSignupTopic: Type: AWS::SNS::Topic Properties: Subscription: - Endpoint: Fn::GetOptionSetting: {DefaultValue: nobody@amazon.com, OptionName: NewSignupEmail} Protocol: email - Endpoint: Fn::GetAtt: [NewSignupQueue, Arn] Protocol: sqs
  • 19. resources.config (cont.) AllowSNS2SQSPolicy: Type: AWS::SQS::QueuePolicy Properties: PolicyDocument: Id: PublicationPolicy Statement: - Action: ['sqs:SendMessage'] Condition: ArnEquals: aws:SourceArn: {Ref: NewSignupTopic} Effect: Allow Principal: {AWS: '*'} Resource: Fn::GetAtt: [NewSignupQueue, Arn] Sid: Allow-SNS-SendMessage Version: '2008-10-17' Queues: - {Ref: NewSignupQueue}
  • 22. Testing and tuning your application • Pick performance metrics you want to optimize for (e.g., latency, concurrent users, number of web requests, etc.) • Load test your application: • Start with autoscaling minimum and maximum of 1 to understand how your application degrades under an overload condition • Understand available metrics and how they correspond to your performance metric • Configure autoscaling to optimize for performance metrics: • Number of instances to add on scale out • Breach duration • Metric to scale on • Tune the back end (DynamoDB, RDS, etc.) for optimal performance; leave enough headroom for full scale out
  • 23. Deployment option (rolling) Pros: • Deployments are fast (20-60 sec.) Cons: • Slower rollback because the previous application version must be redeployed • Possibility of state build-up on long-running environments
  • 24. Deployment option (blue/green) Pros: • Fast rollback because the environment running the previous version has not been modified in any way • Ensures no state build up on environments Cons: • Deployments take longer than rolling deployments (2-5 min.) because a new environment must be created • Clients (i.e., mobile devices) might cache DNS addresses and not respect DNS TTL, resulting in staggered/non-deterministic traffic rollover to the new environment
  • 25. Logs, metrics, and alarms • Enable log rotation to automatically publish logs to Amazon S3 • Understand metrics available for your environment and what they mean • Set up alarms to automatically monitor critical metrics and send notifications when metrics are outside normal operating range • Enable Amazon Route 53 health checks and alarms
  • 26. Tag your environments • Makes it easy to find resources belonging to a given environment • Can be used to monitor costs associated with a given environment, or application, or both • Elastic Beanstalk automatically tags environments with: • Environment name • Environment ID
  • 29. Royal Caribbean Cruises Ltd. • Operates 43 ships with 6 more under construction contract and 2 more on firm order under 6 brands • Services 490 destinations on all 7 continents • 9,000 HTML pages served from the Royal Caribbean site alone • royalcaribbean.com launched using Elastic Beanstalk in March 2015 • 100 mm monthly page views during peak season • 6 mm monthly unique visitors during peak season • 40 mm page-view surge above average during peak
  • 30. Historical challenges • On-premises: • High demand for limited development and test environments • Procurement dependencies, hardware failures, low resilience, fixed scale, high operational cost • Cloud Infrastructure as a Service (IaaS vs PaaS): • Learning curve and retooling is costly and time consuming: • It’s more complicated than a collection of cloud servers • Architecting an enterprise-grade stack requires many components working in concert: • Networking, security, provisioning, deployment mechanisms, configuration management, load balancing, autoscaling, fault tolerance and recovery, and monitoring
  • 31. The case for Elastic Beanstalk • Elastic Beanstalk ̶ a key component of continuous delivery: • Reduces the cost, time, and risk of delivering regular, incremental value to users • Lower IT burden during and after delivery: • Mostly self-serve environments (dev, test, perf) • Automated provisioning, scaling, healing • Single pane of glass for managing the stack (Elastic Load Balancing, Amazon EC2, Auto Scaling, Amazon CloudWatch) • Environments just work…it’s very stable • Zero-downtime production deployments are fast and reliable • Technology enablement: • Empowers the Marketing team • Provides visibility into environments, health, performance, KPIs • Provides the ability to easily create and manage own environments for multiple projects and tracks
  • 32. Environments on demand • Easily spin up identical or similar environment stacks for test cycles, parallel release tracks, and other projects • Different projects can have different environment requirements, yet follow a common paradigm • A few templates and a couple commands are all that you need Dev Dev2 Tst Tst2 Website brand 1 Dev Dev2 Dev3 Tst Tst2 Website brand 2 Tst3 Dev/test VPC Stage/prod VPC Stg Stg2 Preprd Prod Website brand 1 Stg Stg2 Stg3 Preprd Preview Website brand 2 Prod
  • 33. Redis Labs Cache Cluster S3 Apache/ Tomcat Zone 1 Zone 2 ELB Zone 1 ELB Internet gateway AWS Direct Connect Private subnets Service APIs, Splunk Security layer Zone 2 ELB Zone 1 ELB Public subnets VPN fallback Security layer Zone 1 Zone 2 Royal Datacenter Apache/ Tomcat Zone 2 Application architecture Elastic Beanstalk
  • 34. Automation AWS CloudFormation + AWS APIs + CI + Elastic Beanstalk • Use CloudFormation templates to create and manage environment configuration: • Nested for shared and environment-specific configurations • Use AWS APIs to script environment creation and updates • Use Jenkins for continuous integration and deployment to Elastic Beanstalk • Use Git for code and infrastructure configuration management (Elastic Beanstalk templates) • Use the Elastic Beanstalk console to monitor and troubleshoot • Automate everything for repeatability, reliability, and reportability: • Standardized configuration enforced • No room for human error • Rollbacks and auditing • Quick and easy AWS CloudFormation AWS APIs Jenkins CI Elastic Beanstalk
  • 35. Design Code Build Test OperateRelease Deploy Develop Continuous integration Release cycles DevOps Automated builds, tests, and code scans Automated deployment and provisioning Automated load balancing, scaling, and cluster health management Git + Elastic Beanstalk + CloudFormation Continuous delivery
  • 36. Results • Zero-downtime deployments • 30-minute deployments vs. up to 3 hours • Very stable under high load • One part-time resource to support all Elastic Beanstalk environments • In October, we will also launch the following on Elastic Beanstalk: • royalcaribbean.com.br • royalcaribbean.es • royalcaribbean-espanol.com • royalcaribbean.com.au • Mobile booking 83% Deployment time reduced by 0 Outages since March go live 75% Web app ops reduced by