AWS EC2 Reserved Vs. On-Demand Instances
Understanding the differences (and relative cost-benefit) of Reserved vs. On-Demand EC2 Instances can be confusing. Here are a few questions we commonly hear from clients, along with clarification and some common-sense advice.
What is the difference between reserved and On-Demand EC2 Instances?
Physically, there is no difference between AWS Reserved Instances and AWS On-Demand Instances. In fact, when you purchase an AWS Reserved instance (or when you sell an AWS Reserved Instance back), absolutely NOTHING changes on your server(s). The ONLY difference is in billing and availability. With a reserved instance, you get a 25-50% discount off a FULLY utilized On-Demand instance — an Instance that is used 24×7 for the entire term of the Reserved Instance purchase OF THE SAME INSTANCE TYPE.
AWS Reserved Instances
Rule-of-thumb: if you do not expect to change the EC2 Instance type, or its availability zone over the time period, then purchasing a Reserved Instance type offers the best value for your investment.
AWS On-Demand Instance Types
If you know you are only going to use a particular server part-time – say, 8 hours a day, 5 days a week – we recommend purchasing On-Demand Instances for those servers. If you are unsure which instance type is most appropriate for your performance needs, our advice is to start with any On-Demand Instance for a month or two, and experiment with changing the Instance Type up or down to see it performs. The goal is to “dial into” the lowest cost instance type that meets your performance needs. We recommend that you purchase Reserved Instances only when you know you are going to use it close to 24×7 (or at least more than 75% of the time).
Selling Reserved Instances Back to AWS
It is not a big deal if you select the wrong instance type, or you need to change an instance type once or twice during the term of the reserved instance – you can sell it back to Amazon or to other 3rd parties for the remainder of the term, costing you about a 10% penalty. Selling back a reserved instance is quite simple in the AWS Marketplace. But we recommend not making a habit of this.
Reserved Instances are Fungible – It is just a matter of Billing
If you need the same instance type for another purpose, simply build the new instance, and then change the original machine to another instance type – you will not lose anything. In other words, reserved instance types are fungible – they are not “assigned” to any specific named instance – and your billing credit is applied to any available instance at the On-Demand instance billing rate.
There is one other advantage with Reserved Instances that is rarely discussed. With a Reserved Instance, your server is guaranteed to be available when you stop and start it. Conversely, On-Demand Instances are NOT guaranteed to be available. If you have a primary server that is up in one availability zone (AZ), and a secondary “failover” server that is in a second AV, if you make the secondary server an On-Demand instance, you may not be able to start it exactly at the time you most need it. Case in point: if your primary AZ has a “weather event” and the whole AZ is down, you can be relatively sure that everyone in that AZ will be playing musical chairs – scrambling to launch or start servers in other AZ’s, and increasing the likelihood that no instance types will be available for your server.
A Cost-Effective Back-up Technique
If you expect that your secondary server will rarely be utilized, and you want to save some money, start your secondary (back-up) server a few hours a week, just to make sure it is up-to-date. You will only be billed the On-Demand rate. This is an effective approach, as long as you recognize the trade-off – your stopped server is not guaranteed to be available. However, If you have purchased an AWS Reserved Instance, your machine is guaranteed to start, but you will pay the full AWS Reserved Price (a 25 to 45% discount from the On-Demand Price), for the entire term.