From turning systems off at night to implementing bidding strategies on the spot market, there are many ways in which you can manage costs in AWS. This presentation outlines strategies to help you save money in the AWS Cloud.
2. Common use cases & stepping stones into the AWS cloud
Learning from customer journeys
Best practices to bootstrap your projects
Journey through the cloud
3. A key step in the cloud journey
Realize cost aware architectures
Use elasticity to real and measurable benefit
Do more, use less
Cost Optimization
4. Fundamentals of AWS cost optimization
Cost optimization in 5 steps
Where to go next
Agenda
8. Why optimize?
Utility
Compute and Storage
are a utility so ‘turning
off’ should be natural
Efficiency
Efficiency allows
more to be done
within a given budget
9. Why optimize?
Utility
Compute and Storage
are a utility so ‘turning
off’ should be natural
Efficiency
Efficiency allows
more to be done
within a given budget
Architecture
Cost awareness drives
adoption of 21st century
architectures
10. Turn off the lights
When you stop EC2 resources you stop
paying for them
16. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ServerLoad
Hour of day
Capacity of 1 Server
17. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ServerLoad
Hour of day
Capacity of 1 Server
Traditional capacity required
18. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ServerLoad
Hour of day
Capacity of 1 Server
Traditional capacity required
1 Server for 8 hours
19. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ServerLoad
Hour of day
Capacity of 1 Server
Traditional capacity required
1 Server for 8 hours 1 Server for 8 hours
20. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ServerLoad
Hour of day
Capacity of 1 Server
Traditional capacity required
1 Server for 8 hours 1 Server for 8 hours
1 Server for 8 hours
21. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ServerLoad
Hour of day
Capacity of 1 Server
Traditional capacity required
1 Server for 8 hours 1 Server for 8 hours
1 Server for 8 hours
1 Server for 8 hours
22. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ServerLoad
Hour of day
Capacity of 1 Server
Traditional capacity required
1/3rd
Saving
32. Manually
Send an API call or use CLI to
launch/terminate instances –
Only need to specify capacity
change (+/-)
By Schedule
Scale up/down based on date
and time
By Policy
Scale in response to changing
conditions, based on user
configured real-time
monitoring and alerts
Auto-Rebalance
Instances are automatically
launched/terminated to
ensure the application is
balanced across multiple Azs
Auto-scaling policies
33. Auto-scaling policies
Scaling base on Policy
Scale up and down base on metrics
Scaling Up policy - Double the group
size if avg cpu > 80%
Scaling Down policy - Decrement by
10% if avg cpu < 30%
Scaling by Schedule
Scheduled Actions to meet known
demand
Scheduled up to 31 days into the future
Recurring scheduled scaling activities
43. Start
Choose instance that
meets your basic
requirements best
Match memory & virtual
cores
Tune
Change instance size up
or down based upon
monitoring
Use trusted advisor to
assess
Instance types
44. Start
Choose instance that
meets your basic
requirements best
Match memory & virtual
cores
Tune
Change instance size up
or down based upon
monitoring
Use trusted advisor to
assess
Spread
Run instances across
multiple availability
zones
Smaller sizes equals
greater granularity
Instance types
47. Choose your metric
optimize for the metric
Cost per unit of work per instance(size)
Workload A
Optimal on 4x
m1.xlarge
Workload B
Optimal on 10x
m1.medium
Workload C
Optimal on 2x
m3.xxlarge
48. Choose your metric
optimize for the metric
Cost per unit of work per instance(size)
100 concurrent jobs on 10 x m1.large @ $0.26 / hr = $ 0.026 / job
300 concurrent jobs on 10 x m3.xlarge @ $0.58 / hr = $ 0.019 / job
vs
49. Choose your metric
optimize for the metric
Think workload density
Don’t focus on instance hourly rate per se
57. Business
Basic
Developer
Enterprise
Offering
24x7x365 ✓
Forum Access ✓
Documentation ✓
Access to support Phone, Chat,
Email
Named Contacts 5
Fastest Response Time 1 Hour
Architecture Support Use Case
Guidance
Best Practice ✓
Diagnostics Tools ✓
Direct Routing ✓
3rd Party Software ✓
Trusted Advisor ✓
62. Unix/Linux instances start at
$0.02/hour
Pay as you go for compute power
Low cost and flexibility
Pay only for what you use, no up-front
commitments or long-term contracts
Use Cases:
Applications with short term, spiky, or
unpredictable workloads;
Application development or testing
On-demand instances
Reserved instances
63. Unix/Linux instances start at
$0.02/hour
Pay as you go for compute power
Low cost and flexibility
Pay only for what you use, no up-front
commitments or long-term contracts
Use Cases:
Applications with short term, spiky, or
unpredictable workloads;
Application development or testing
On-demand instances
1- or 3-year terms
Pay low up-front fee, receive significant hourly
discount
Low Cost / Predictability
Helps ensure compute capacity is available
when needed
Use Cases:
Applications with steady state or predictable
usage
Applications that require reserved capacity,
including disaster recovery
Reserved instances
Reserved instances
64. Unix/Linux instances start at
$0.02/hour
Pay as you go for compute power
Low cost and flexibility
Pay only for what you use, no up-front
commitments or long-term contracts
Use Cases:
Applications with short term, spiky, or
unpredictable workloads;
Application development or testing
On-demand instances
1- or 3-year terms
Pay low up-front fee, receive significant hourly
discount
Low Cost / Predictability
Helps ensure compute capacity is available
when needed
Use Cases:
Applications with steady state or predictable
usage
Applications that require reserved capacity,
including disaster recovery
Reserved instances
Reserved instances
> 80% utilization
Lower costs up to 58%
Use Cases: Databases, Large Scale HPC,
Always-on infrastructure, Baseline
Heavy utilization RI
65. Unix/Linux instances start at
$0.02/hour
Pay as you go for compute power
Low cost and flexibility
Pay only for what you use, no up-front
commitments or long-term contracts
Use Cases:
Applications with short term, spiky, or
unpredictable workloads;
Application development or testing
On-demand instances
1- or 3-year terms
Pay low up-front fee, receive significant hourly
discount
Low Cost / Predictability
Helps ensure compute capacity is available
when needed
Use Cases:
Applications with steady state or predictable
usage
Applications that require reserved capacity,
including disaster recovery
Reserved instances
Reserved instances
> 80% utilization
Lower costs up to 58%
Use Cases: Databases, Large Scale HPC,
Always-on infrastructure, Baseline
Heavy utilization RI
41-79% utilization
Lower costs up to 49%
Use Cases: Web applications, many heavy
processing tasks, running much of the time
Medium utilization RI
66. Unix/Linux instances start at
$0.02/hour
Pay as you go for compute power
Low cost and flexibility
Pay only for what you use, no up-front
commitments or long-term contracts
Use Cases:
Applications with short term, spiky, or
unpredictable workloads;
Application development or testing
On-demand instances
1- or 3-year terms
Pay low up-front fee, receive significant hourly
discount
Low Cost / Predictability
Helps ensure compute capacity is available
when needed
Use Cases:
Applications with steady state or predictable
usage
Applications that require reserved capacity,
including disaster recovery
Reserved instances
Reserved instances
> 80% utilization
Lower costs up to 58%
Use Cases: Databases, Large Scale HPC,
Always-on infrastructure, Baseline
Heavy utilization RI
41-79% utilization
Lower costs up to 49%
Use Cases: Web applications, many heavy
processing tasks, running much of the time
Medium utilization RI
15-40% utilization
Lower costs up to 34%
Use Cases: Disaster Recovery, Weekly /
Monthly reporting, Elastic Map Reduce
Light utilization RI
67. Best RI for Utilisation
$-
$2,000
$4,000
$6,000
$8,000
$10,000
$12,000
$14,000
$16,000
$18,000
Heavy
Medium
Light
O-Demand
68. Best RI for Utilisation
$-
$2,000
$4,000
$6,000
$8,000
$10,000
$12,000
$14,000
$16,000
$18,000
Heavy
Medium
Light
O-Demand
69. 0
2
4
6
8
10
12
14
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
On Demand
Light Utilization RI
Medium Utilization RI
Heavy utilization RI
Optimizing costs with RIs
72. Unix/Linux instances start at
$0.02/hour
Pay as you go for compute power
Low cost and flexibility
Pay only for what you use, no up-front
commitments or long-term contracts
Use Cases:
Applications with short term, spiky, or
unpredictable workloads;
Application development or testing
On-demand instances
1- or 3-year terms
Pay low up-front fee, receive significant hourly
discount
Low Cost / Predictability
Helps ensure compute capacity is available
when needed
Use Cases:
Applications with steady state or predictable
usage
Applications that require reserved capacity,
including disaster recovery
Reserved instances
Spot instances
73. Unix/Linux instances start at
$0.02/hour
Pay as you go for compute power
Low cost and flexibility
Pay only for what you use, no up-front
commitments or long-term contracts
Use Cases:
Applications with short term, spiky, or
unpredictable workloads;
Application development or testing
On-demand instances
1- or 3-year terms
Pay low up-front fee, receive significant hourly
discount
Low Cost / Predictability
Helps ensure compute capacity is available
when needed
Use Cases:
Applications with steady state or predictable
usage
Applications that require reserved capacity,
including disaster recovery
Reserved instances
Bid on unused EC2 capacity
Spot Price based on supply/demand,
determined automatically
Cost / Large Scale, dynamic workload handling
Use Cases:
Applications with flexible start and end times
Applications only feasible at very low compute
prices
Spot instances
Spot instances
81. If your bid < spot price
Your instance is terminated
82. Architecting for spot instances
Decouple components
Separate interactive & backend
processing
Use frameworks such as Elastic
MapReduce
Design for interruption
Use SQS, SWF
Place data in a durable store such as S3,
SimpleDB or DynamoDB
Save progress regularly
91. Web Servers
$0.065
per hour
(small instance)
Availability Zone
$0.028
per hour
Web Servers
Availability Zone
EC2 instance
+ software LB
Elastic Load
Balancer
DNS
DNS
VS
94. Software vs services
Software on EC2
Pros:
Use custom features
Cons:
Requires an instance
SPOF
Limited to one AZ
DIY administration
AWS Services
ELB, SNS, SQS, SES, SWF, DynamoDB etc
Pros:
Pay as you go
Scalability
Availability
High performance