3. Why are customers adopting cloud computing?
Variable expense Replace capital expenditure with variable expense
Source
IDC
Whitepaper,
sponsored
by
Amazon,
“The
Business
Value
of
Amazon
Web
Services
Accelerates
Over
Time.”
July
2012
Average
of
400
servers
replaced
per
customer
4. Economies of scale Lower variable expense than companies can achieve
themselves
Why are customers adopting cloud computing?
Saved
$34m
on
SmartHub
applica;on
10’s
of
millions
of
$
saved
with
first
12
apps
migrated
to
AWS
50%
reduc;on
in
analy;cs
costs
5. Mul;ple
global
regions
helps
build
highly
available
applica;ons
Web
Server
Availability
Zone
1
Web
Server
Availability
Zone
2
Web
Server
Regional AWS design provides Highly Availability as a Baseline
7. Demand
Time
Week
1
Week
2
Week
3
Week
4
Week
5
Wasted
Capacity
Lost
Customers,
Rush HardwareWasted
Capacity
Lost
Customers,
Rush
Hardware
Lost Customers,
Rush Hardware
1m
1.5m
2.0m
Scaling on-premise infrastructure can be a challenge
8. Sizing capacity for peak is harder even still
Demand
Q1
Q2
Q3
Q4
Q1
Wasted
Capacity
Lost
Customers,
Order
Hardware
Wasted
Capacity
Wasted
Capacity
Wasted
Capacity
200k
300k
600k
Time
Capacity
of
Resources
Actual
Demand
9. 3000 Cores for risk management processesNumberofCores
300 Cores on
weekends
Thu Fri Sun Mon TueSatWed
3000 -
300 -
Different workloads have different usage patterns
14. Actual
demand
Predicted
demand
Customer
dissa;sfac;on
Waste
Demand
Time
Elastic capacity No need to guess capacity requirements and over-provision
AWS enables companies to match resources to demand
15. Elastic capacity No need to guess capacity requirements and over-provision
Elas;c
capacity
Demand
Time
AWS enables companies to match costs to demand
16. November 10th 2010
Turned off last physical web server of
Amazon.com
October 31st 2011
Turned off last web servers supporting
European business
18. NumberofEC2Instances
4/12/2008 4/14/2008 4/15/2008 4/16/2008 4/18/2008 4/19/2008 4/20/20084/17/20084/13/2008
40
servers
to
5000
in
3
days
EC2 scaled to peak of 5000
instances
“Techcrunched”
Launch of Facebook
modification
Steady state of ~40
instances
19. Automation is a key enabler to elastic usage
Bootstrapping or DEV-OPS
The process of automatically
configuring the software and settings
on your machines as they boot, each time
they boot.
Your infrastructure as code.
20. Amazon Route 53 Elastic Load Balancer
The
image
cannot
be
displaye
S3 BucketCloudFront Distribution
The image
cannot be
displayed. Your
computer may
not have enough
memory to open
the image, or
the image may
have been
Web Servers
The image
cannot be
displayed. Your
computer may
not have enough
memory to open
the image, or
the image may
have been
Web Servers
Web ASG Elastic Beanstalk
App
App
Master
Standby
RR 1
RR 2
RR 3
RR 4
ElastiCache Cluster
This is a
stack
In AWS everything can be Automated , everything is an API
Resources are not longer finite, they are elastic in AWS
22. This is a STACK.
JavaScript Object Notation ( JSON )
A template of your datacenter / workload.
Your infrastructure as code.
Headers
Parameters
Mappings
Resources
Outputs
Git
Subversion
Mercurial
Dev
Test
Prod
23. Cloud
Forma=on
is
context
aware
Your infrastructure as code.
Create: PROD
dev.mysite.com test.mysite.com prod.mysite.com
Create: TESTCreate: DEV
28. Auto Scaling groups are useful for more than just fault tolerance
• Vertical Scaling
• Horizontal Scaling
• Auto Scaling
• Scheduled Scaling
• Programmatic Scaling
• Datasbse Tier Scaling
• Asynchronous Process Scaling
• Event Scaling
ASG == Minimum unit of deployment
29. myAutoScalingGroup
- myLaunchConfig
- Min 1
- max 1
- desired 1
Launch
Configuration
ami-0535d66c
ap-southeast2-a ap-southeast2-b
myElasticLoadBlancer
myLaunchConfig
- ami-0535d66g
- m3.large
Minimum instance of 1 creates Auto Healing Groups
45. Achieve High Utilization with this style of architecture, eliminating waste
Trigger
auto-‐scaling
policy
Reserved Instances
On Demand
Spot Pricing
Scheduled
Adaptive
Predictive
46. Optimize delivery using S3 static hosting and CloudFront
London
Paris
NY
Served
from
S3
/images/*
3
Served
from
EC2
*.php
2
Single
CNAME
www.mysite.com
1
Lower Cost
Lower Latency
Higher Scale
Fault Tolerance
High Availability
High Utilization
48. Asynchronous Process Scaling with SQS Messaging
• Amazon managed queue service
• Decouple your components
• Think parallel
• Implement elasticity
• Drive Auto Scaling fleets using Queue Depth
Controller A Controller B Controller C
Controller A Controller B Controller C
Q Q Q
Tight Coupling
Loose Coupling using Queues
Amazon
SQS
Processing
task/
processing
trigger
Processing
results
Min 5 Min 10 Min 2
49. S3 Bucket
For Ingest
User
SNS
Topic
RRS S3
Bucket to
Serve
content to
CloudFron
t
S3 Bucket
For
originals
CloudFront
Download
Distribution
SQS Queue
Size for Thumbnail
SQS Queue
Size Image for
Mobile
SQS Queue
Size Image for Web
Auto scaling
Group
Instances
Auto scaling
Group
Instances
Auto scaling
Group
Instances
Asynchronous Process Scaling with SQS Messaging (SQS)
50. S3 Bucket
For Ingest
User
RRS S3
Bucket to
Serve
content to
CloudFront
S3 Bucket
For
originals
CloudFront
Download
Distribution
Auto scaling
Group
Instances
Auto scaling
Group
Instances
Auto scaling
Group
Instances
SWF
Instance running
decider
Asynchronous Process Scaling with Simple Workflow (SWF)
51. AutoSclaingGroups*
- myLaunchConfig
- Min 0
- max 100
- Desired 0
Launch
Configuration
ami-0535d66c
ap-southeast2-a ap-southeast2-b
launchWhenCheap
- ami-0535d66g
- m3.large
- Spot-price : 0.05
Optimize costs using Auto Bidding groups and spot pricing
aws autoscaling create-launch-configuration
--launch-configuration-name launchWhenCheap
--spot-price 0.05
SQS queue
Consumers
Producer
Consumers
52. Scale 1000s of nodes when needed a back to zero using EMR
Optionally using a Spot Pricing strategy on task nodes
56. Automated failover using pilot light configurations
Web
Server
Application
Server
Database
Server
Data
Volume
Data Mirroring/
Replication
Not Running
Smaller Instance
Amazon Route 53
User or system
Web
Server
Application
Server
Database
Server
Data
Volume
UPDATE
Desired = 0 à 1
Desired = 0 à 1
Desired = 1 à 1
Web
Server
Application
Server
57. Just in Time systems which can be during an event
58. • ~30th biggest E-commerce operation, globally
• ~200 distinct applications, many mobile
• Hundreds of new, untested analytical approaches
• Processing hundreds of TB of data on thousands of servers
• Spikes of hundreds of thousands of concurrent users
• Critically compressed budget
• Less than a year to execute
• Core systems will be used for a single critical day
• Constitutionally-mandated completion date
Support Systems which can be retired immediately after an event
59. THANK YOU
Please give us your feedback by filling out the Feedback Forms
AWS Government, Education, &
Nonprofits Symposium
Canberra, Australia | May 20, 2014