“The more things change, the more they stay the same”
– Jean-Baptiste Alphonse Karr
Unless you’ve been living in a bubble for the past decade or so, you’re likely aware that many organizations have been moving more and more of their computing infrastructure into public clouds. This allows organizations to move capital assets of their books and only utilize the computing power that they need, when they need it. This flexibility does, at times, come with added operational expenses. On-Demand pricing for services that need to be available at all times can be more expensive than actually owning the hardware. This is where Reserved Instances come in. For a savings of up to 75% off of On-Demand pricing, you can reserve a specific type of machine for one or three years. There are also multiple payment options (all upfront, partial upfront, or no upfront).
This sounds wonderful, but it begs the question as to how to tell if a Standard Reserved Instance is right for your organization or not. In order to answer that question it is time to dust off your Corporate Finance textbook (which is likely currently enjoying its retirement as a doorstop somewhere). Like any other project, we can evaluate the purchase of a Standard Reserved Instance via net present value calculations. This means that we will take a look at the cash outflows (payments for the Standard Reserved Instance) along with cash inflows (savings vs. On Demand pricing) for the entire period of the contract. Once we know all of those values, we can discount those and determine if the NPV of the purchase is positive or negative. Okay, that was a lot of words all strung together without a lot of explanation. Let’s look at an example.
Let’s take an a1.medium EC2 instance in the US East region. We’ll assume an annual corporate discount rate of 6%, a machine utilization rate of 80%, and a contract that starts on January 1 (keeps the dates lined up). If we look at the four ways to have this machine available to us and discount the cash flows, it ends up looking like this:
|On-Demand||No Upfront||Partial Upfront||All Upfront|
What we notice is that the Partial Upfront and the All Upfront have the best (i.e. lowest) NPV and therefore we should choose one of those. Note that these values might change dramatically if the discount rate changes or if the utilization rate was different. What if our business needs change during the middle of the year? What if we need a bigger machine? What if we no longer need that machine?
AWS gives you a couple of options if your business needs change. Depending on the exact type of instance you may have the ability to change the Availability Zone, scope, network platform, or size. Alternatively, you can sell your contract in the marketplace. In reality though, the best option may be to take advantage of a different product that AWS offers, the Convertible Reserved Instance. This allows you to split one large contract into multiple smaller ones or vice versa. Valuation of those options can get complicated as can determining all of the various ways that those exchanges can be made. It is highly recommended that if you want to go down that route that you get some help from people who specialize in that type of work. Luckily, Cloudwiry does exactly this. We’ll help you optimize your AWS spend so you’re using the correct number and type of reserve instance contracts.