Are you wasting money on AWS Reserved Instances? — Some Cost Saving Alternatives
Customers 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 state that “Amazon EC2 Reserved Instances provide a significant discount (up to 75%)” — aws.amazon.com/ec2/pricing/reserved-instances 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 year 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 with our Power Cycle or by scheduling auto scaling groups at different times of the day with Power Scale. Power Cycle and Power Scale 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 state that you can save “30–45% compared to on-demand pricing” — https://aws.amazon.com/ec2/spot/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
(-) 1 or 3 year contracts
(-) Up-front payments
(+) Potentially large savings vs. on demand but bigger savings require up-front payments, specific regions, large instances sizes etc
On Demand EC2
(+) No contract
(+) Can be powered off when not needed or scaled down with lighter load
(+) Easiest instances to get started with
(-) Expensive if running continuously
(+) No contract
(+) Hourly prices often cheaper vs. on-demand
(-) 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 direct to GorillaStack to discuss all the other ways you can use our tools to save money on AWS EC2 Instances.
Originally published at blog.gorillastack.com on October 10, 2016.