DevOps and finance teams need to continuously manage their costs. Idle and underutilized resources will quickly escalate your bill. On-Demand instances cost 4-6x comparable Reserved Instances. With self-provisioning, and multiple pricing choices, the question is how do you ensure that your team is optimizing your spend?
For this presentation Aaron Newman of CloudCheckr will be covering:
• How to use tags to track and allocate spend by business unit, department, or team
• How to identify idle and underutilized resources
• How to evaluate RI purchases and other opportunities for cost savings
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
AWS Meet-up Atlanta: AWS Economics
1. AWS Cost Management:
Tracking, Allocating,
and Optimizing Your Spend
Atlanta AWS Meetup
Aaron C. Newman
Founder, CloudCheckr
Aaron.Newman@CloudCheckr.com
2. Agenda:
• Overview of Costs in AWS
• Going “Reserved”
• Going “Spot”
• Optimizing Resources
• CloudCheckr
• Conclusion, Resource, and Questions
4. State of Cloud Computing Cost
• 10 years ago
– The datacenter was a (mostly) fixed cost
– High cost for even the most basic data center
– You paid for your peak capacity
• Co-location/ISPs as an alternative
– Still buying your own equipment/building for peak capacity
– High margins were the norm
• About 2010 Public Cloud Turns the Corner
– Technology matures
– Becomes the de facto for getting a startup off the ground
– Amazon starts compressing the high margin IT business
Over 20 price reductions in Amazon AWS by 2013
Prices continue to drop. But what is the reality of those 20 price reductions?
EC2 Linux Small Instance (On-Demand Per Hour):
Aug 2006 = $0.10, Nov 2009 = $0.085, May 2013 = $0.06
Extrapolate that to 2015 = somewhere between $0.035 and $0.05
5. Cost is a product of usage
• In old data center, cost was fixed
– Once you bought the equipment, little could be done to reduce
your cost. No advantage to ever scale down.
• The public cloud is heavily weighted to variable costs
– If you can use less, you spend less
• Optimizing Resource Utilization in the Cloud matter
– Computational engines – run as close to 100% as possible
– Interactive components – need a cushion for peak usage
• Auto scaling - important tool for optimizing cloud usage
– Scale down as much as scaling up
6. AWS Costs
(Bytes of Data Transferred) * Price
+
(Size of Compute Resource) *
(Price of Compute Resource) * (Number of Hours)
+
(Storage Used) * Price * (Time Stored)
+
(Transactions Processed) * Price
7. Architecting Applications
• In the past, architecture was typically a large, multi-threaded
executable talking to a single database running
on the biggest boxes you could afford. Sat idle a lot.
• Moving old apps into the cloud
– Can you resize your resources different times of the day?
– Use load balancers or Multi AZ capabilities to resize
• Important to design your apps to scale horizontally
• Design you application into components
– That can be added or removed dynamically
9. What is Reserved?
• Pay up front, get a lower variable cost
• ROI – as high as 500% over 3 years, 60% savings in cost
• Types of Reserved Resources Available
• EC2 Instance
• RDS DB Instance
• ElastiCache Node
• RedShift
• DynamoDB
• CloudFront
• Types
• Utilization – light, medium, heavy
• Utilization <> Resource Utilization
• Commitments – 1 or 3 year
11. Warnings using Reserved Instances
• Need to be able to predict what you’ll use
• If you design application to scale horizontally this becomes easier
• Heavy Reserved Instances – even if you don’t use it you’re charge
• Match reserved instances carefully!
• OS Type, Availability Zone, Size (VPC vs. Classic, Tenancy only matter for
guaranteed availability)
• AWS console does not show you if an instance is properly mapped
• Determine your highest ROI – Instances, Database, Nodes?
• Consolidated Billing
• Reserved Pricing is applied across AWS accounts
• AWS Console does not show you how your reserved instances are applied
13. What is Spot Pricing
• Bidding for unused instances
• Supply and demand dictates current price
• Place your max bid, your instance shuts down if max bid exceeded by others
• Spot is almost always cheaper
• But you need to consider < 99% availability
• Spot prices spike frequently
• Slightly slower to spin up
• Wait for spot request to be fulfilled before instance can start
• More complex to manage
• Using EBS/Instance store
14. What Does Spot Pricing Look Like
Example spot pricing:
• US East, Linux, M1 Small (1 ECU): 0.007 - 0.010
• SA, Linux, M1 Small (1 ECU): 0.011
• On demand: US East = 0.06, SA = 0.08
• US East, Linux, M1 Extra Large (8 ECU): 0.055 - 0.64
• SA, Linux, M1 Extra Large (8 ECU): 0.084
• On-demand: US East = 0.48, SA = 0.64
• US East, Linux, M3 Double Extra Large (26 ECU) 0.115
• SA, Linux, M3 Double Extra Large (26 ECU) 0.185
• On-demand: US East = 1.00, SA = 1.36
Spot Pricing is typically 10-20% of On-Demand
But can easily spike HIGHER than On-Demand
15. Spot Strategies
• Most people don’t understand spot pricing, afraid to use it
• As more people understand and use it, pricing will be driven up
• Very tempting but dangerous to run exclusively on Spot
• From GigaOm: “A sudden spike in the price of “m2.2xlarge” servers (normally
$.44/hour) drove the price briefly up to $999/hour, causing a site-wise outage.”
• If you follow this strategy, use a variety of instance sizes, Availability Zones, and
even regions to minimize the risk
• Hybrid Reserved/Spot strategies
• Run as many spot instances as possible
• But maintain a base level of Reserved Instances
• Switch to On-Demand if Bid Price Exceeds On-Demand Price
• Switch to a different availability zone or region
• This is a manually intensive strategy
17. Overview
• Keep track of what you are using
• Find and eliminate idle instances
• Find and reduce under-utilized resources
• Unused EBS drives, ELB, multiple snapshots of same EBS drive
• Horizontally scale
• Find smallest instance type that can handle your transactions
• Find your bottle necks (network, disk I/O, CPU util, memory util)
• Turning off resources when they aren’t used
• Turn off over the weekend, overnight
• Use only what you need
• E.g. don’t check multiple copies of buckets in S3
18. Optimizing Instance Types
• Picking the optimal Instance Type:
• Comparing ECU (EC2 Compute Units)
• M1 Small (1 ECU) On-Demand in US East = $0.06 ($0.06 per ECU)
• M3 Double Extra Large (26 ECU) On-Demand in US East = $1.00 ($0.0385 per
ECU)
• Comparing the cost of Memory
• M1 Small (1.7 GiB memory) On-Demand in US East = $0.06 ($0.035 per GiB)
• M3 Double Extra Large (30 GiB memory) On-Demand in US East = $1.00
($0.033 per GiB)
• But you need to compare Resource Type, Pricing Type (on-demand/
spot/reserved), Region, AZ, etc… for your circumstance
19. S3, Glacier, and RRS
• S3 Pricing: > $0.10 cents per gigabyte (starts at 9.5c in US East)
• Reduced Redundancy Storage
• AWS doesn’t store as many copies of your S3 objects
• Typically about 20% cheaper (US East $0.095 reduced to $0.076)
• Ideal if you are storing terabytes or petabytes of songs, movies, documents that
can be recovered
• How much of your S3 storage can you convert to RRS?
• Glacier Pricing – about 1 cent per gigabyte
• Pricing difference from S3 decreases as the price goes up
• Takes 3-5 hours to retrieve files, and cost to retrieve
20. 4 Strategies To Optimize
• Keep a close handle on what you are running in the
cloud
• Measure what you are spending
• Calculate Return On Investment
• Minimize what you don’t need
22. It’s Not About the Price
• Cloud Computing is not about the cost
– It’s about accelerating business, moving faster
• IaaS is following in SaaS footstep
– SalesForce.com pioneered the movement
– Hard to imagined a third-party controlling your entire customer list (one of your
most valuable assets)
– They proved it was secure, prudent, and effective
• Still see some of the slower moving Corporate types claiming
“production work loads can’t be run on the cloud”
– While their competitors leveraging the cloud eat their lunch
24. Questions?
Questions on:
• Cloud Computing
• Resource Utilization
• Optimizing Your Costs
• CloudCheckr
25. Thank You for Attending
Get your FREEMIUM account to
check your public cloud
at www.cloudcheckr.com
Aaron Newman is the Founder
of CloudCheckr (www.cloudcheckr.com)
Please contact me with additional questions at:
aaron.newman@cloudcheckr.com