How To Reduce EBS Costs On AWS
23 Sep 2016AWS, Azure, Google Cloud Platform to be 100% Renewable Powered
25 Oct 2016Customers can purchase AWS reserved instances from the AWS reserved instance marketplace to reduce their AWS bills. The management of this process is a huge industry for 3rd party software providers but we don’t subscribe to the idea that they are the best way to save money on AWS.
One large premise of the cloud and more specifically Amazon’s Elastic Compute Cloud (EC2) is that it’s meant to be… Elastic. Conversely, EC2 Reserved instances lock you into a fixed contract for 1 year or 3 years which takes away a large part of the Elasticity that EC2 gives you. Of course, you get a discount but this comes with a couple of significant material costs:
- Cashflow – you’re required to pay up front rather than spread your costs over monthly payments.
- Inelasticity – once you’ve committed to AWS Reserved Instances, you’re locked in for an extended periods, so if your needs change either from a capacity or functional perspective, you’re hamstrung and beholden to a costly commitment.
AWS Reserved Instance Pricing
AWS states that “Amazon EC2 Reserved Instances provide a significant discount (up to 75%)” compared to on demand pricing. We had a look through the EC2 pricing page for Linux instances to see how easy it is to save 75% and it’s pretty difficult:
- Requires i2.xlarge+ instance sizes.
- Requires instances to be in certain regions.
- Requires 3 years contracts.
- Requires full upfront payments (44,418 USD for a i2.8xlarge anyone?).
Also, the savings assume that the equivalent on-demand instances are switched on 24/7. The reality is that users are on the cloud, in part, to leverage the freedom to turn compute on and off or scale it up and down – really, who keeps a i2.xlarge or i2.8xlarge instance running for 3 years?
Most of AWS is offered as “pay-as-you-go” like EC2 on-demand instances. We save money using on demand instances, not reserved instances. We either power off instances when they’re not in use by scheduling ec2 instances or auto scaling groups at different times of the day with GorillaStack Cost Optimization. These scheduled jobs can result in a 60% saving off your AWS bill. With GorillaStack, all products are multi-region and multi-account.
Spot Instances – The Reserved Instance Alternative
Another interesting part of EC2 that users should explore as a Reserved Instance Alternative is the Spot Instance. AWS states that you can save “30-45% compared to on-demand pricing”. Again, this assumes that you have on-demand instances running 24/7. However, spot instances take “Elastic” to an even further extreme.
Customers bid for compute based on spot pricing history. If your bid price is too low then your instances will be terminated but you can bid for a certain duration to prevent this from happening. Spot instances are suited to certain workloads (e.g. stateless workloads) or can be used to complement on-demand instances (example architecture from AWS here).
Reserved Instances vs. On Demand vs. Spot Instances
EC2 Reserved Instances | On Demand EC2 | Spot Instances | |
---|---|---|---|
Payment Terms | 1 or 3 year contracts with up-front payments | No contract | No contract |
Pricing Flexibility | No Requires up-front payments (specific regions, large instances sizes etc) | Yes Can be powered off when not needed or scaled down with lighter load | Yes Hourly prices often cheaper vs. on-demand |
Potential Cloud Savings | Potentially large savings vs. on demand | Easiest instances to get started with. Expensive if running continuously | Suits only specific workloads or architectures |
So, maybe think twice before you commit to Reserved Instances. Do your research into the alternatives and please feel free to reach out directly to GorillaStack to discuss all the other ways you can use our tools to save money on AWS EC2 Instances.