Demystifying Reserved Instances
Everyone talks about them, many reserve them but there's still quite a bit of mystery surrounding how they actually work. As long as the bill is paid and your application isn't down, many don't think twice about them. But, in order to maximize your ROI, there's a few important concepts to be conscious of in your cloud strategy.
What Are They?
AWS Reserved Instances (RIs) allow you to make a time and cost commitment to AWS to use specific instance types in return for a discount on the on-demand cost. The other, sometimes overlooked, major benefit is, of course, the capacity reservation. While spot instances can and will be terminated at the drop of a hat, on-demand instances provide an hourly capacity guarantee but reserved instances ensure that your workloads will run uninterrupted for the length of your 1 or 3 year reservations.
How Do They Differ from On-Demand Instances?
It is a common misconception that RIs are directly connected to specific launched instances. They are not. Instead, they are a simply pricing discount applied to any instance usage of a specific type (e.g. m3.large in us-east-1arunning Linux). In other words, all usage is always billed at the on-demand rate. If you launch an instance that matches the example instance type, region, availability zone and operating system, at the end of the month you will be billed within the discounted percentage shown above, rather than the base on-demand amount. That's it.
How Do They Reduce My Cost?
Think back to a time before landline phone plans included unlimited long distance minutes. Imagine a telephone service that charges $.05 per minute of usage, but $0.02 per minute to certain locations, provided that you subscribe to a particular plan. Once you've prepaid for a reservation, your hourly charges (think phone minutes) will be billed at a reduced rate, but only for calls within a certain region. Call one (think: launch an instance) that is outside of your subscription area (read: instance type, region, AZ and OS) and you won't receive the discount that you signed up for. Because of this, it is critical to understand your instance usage by several factors, in order to maximize your return on investment.
Which Instance Gets The Discount?
Since multiple different reservation types (upfront amount and reservation term) and instance usage can match, the selection of a reservation gives preference toward applying the lowest hourly rate first. It’s also worth noting that reservations have an affinity toward the account in which they were purchased, although they can "float". Assuming that you have more on-demand hours of usage for a different instance type of the same family, or even in a different AZ, reservations can be "modified" so that you receive the optimal cost benefit (more about this in a future post).
This randomized approach of RIs is both a powerful feature and a source of constant confusion. What I hear most from customers is that they purchased RIs for a specific environment or department, only to find out come bill time that its cost benefit has been applied elsewhere.
Keep your eye out for my next post on how reservations work with a consolidated bill and what it means when they “float”. Do you leverage RIs already? If so, how are you managing them?