If you’re an AWS customer, you’re probably already familiar with the savings and flexibility you can achieve by using Amazon Reserved Instances (RIs). However, if you find the options and pricing a little overwhelming, you’re not alone. While CloudHealth customers are often among some of the most advanced users of AWS, they still rely heavily on our platform to simplify the purchase of new reservations and the management of existing ones.
Today, Amazon is offering a new twist that can make EC2 reservations even more flexible and cost effective for your organization. The twist involves the introduction of a new feature called scope, which applies to all reservations, and a new reservation type called a Convertible. The driver behind these two changes is the reduction in complexity of day-to-day reservation management and the increase in flexibility of longer-term commitments.
Before we dive into the details of the new changes and how you can take advantage of them, I suggest those of you new to AWS reservations you take a few minutes to familiarize yourself with their benefits. Although the associated cost savings are significant, you may find yourself losing savings (and time) trying to fit your dynamic cloud environment into the commitment and planning they require.
Let''s get started.
One of the challenges of managing reservations is that each is tied to a specific Availability Zone of a Region. Purchasing a reservation for use in us-west-1a means that you can only see the cost benefits of that reservation in us-west-1a. If you need to launch instances in another Availability Zone (e.g. us-west-1b), you must either purchase a new reservation, manually modify the existing reservation, or use a service like CloudHealth to automatically make modifications on your behalf based on your usage to receive a benefit. The "drift" of actual usage away from your planned usage at time of purchase can result in a substantial loss of cost savings.
Starting today, Amazon is introducing a new feature to all reservations called scope. With this change, reservations can be scoped to either an Availability Zone or a Region. All your existing reservations are automatically scoped to an Availability Zone by default, requiring you run an instance of the specific type in the correct Availability Zone to receive the cost benefits. But if you purchase a new reservation scoped to a Region - or modify an existing reservation to have regional scope - the cost benefits of this reservation will apply to any usage of this instance type within a Region.
As an example, let''s assume you have purchased an All Upfront reservation for an m4.xlarge running Linux for us-east-1a with shared tenancy. While your team regularly runs an instance of this type in us-east-1, periodically it is moved between Availability Zones based on the needs of the application. If you are not using a service such as CloudHealth to automate the modification of the reservation based on the change in usage (e.g. an instance of this type now running in us-east-1c instead of us-east-1a), you would periodically lose the cost benefits of this reservation for the hours in which an instance of this type was not running in us-east-1a. However, by simply modifying this reservation to be scoped to a Region, the cost benefits will automatically be applied regardless of the Availability Zone in which you run an instance of this type.
You can also switch the scope of a reservation at any time using either the AWS Console or the reservation modification API. This feature is currently only available for EC2, since all other reservation types are already applied at a Region level. There is one important caveat to mention: an AWS reservation provides customers two benefits: (1) a discount in price based on usage, and (2) a capacity reservation that guarantees you the right to run an instance of this type for the duration of the reservation. The latter benefit is often overlooked by AWS customers, since the growth of their applications does not rely on committed capacity. Reservations scoped to a region will provide you the discount in price, but they will not provide the capacity guarantee.
Another challenge of reservation management is that each reservation is tied to a specific instance type family (e.g. m4), a reservation offering (e.g. All upfront), operating system (e.g. Linux), and tenancy (e.g. shared). Over time your organization may make changes to the type of instances it runs for specific workloads, forcing you to allow reservations to go unused or to sell them on the marketplace. In addition, as Amazon continues to innovate within its instance type families, you may find your applications can run with better performance and cost effectiveness on newer instance families. These two concerns have limited the willingness of some organizations to make reservation commitments, and/or make commitments that exceed a year.
To address this need, Amazon is offering a new type of reservation called a Convertible, which can be “exchanged” for another Convertible reservation that is better suited to your workload requirements. For example, if you have been running a specific workload using the m4 instance type family, but determine that a different family and instance type (e.g. a c4.large) is a better fit, you will now have the ability to exchange your Convertible reservations for new ones that better suit your needs. An exchange can include a change in instance family type (e.g c4 to m4), tenancy (e.g. shared to dedicated), operation system (e.g. Windows to Linux), and even offering type (e.g. No Upfront to All Upfront). It’s important to note that Convertible reservations cannot be exchanged across Regions.
An exchange can be performed using either the AWS Console or a new reservation API provided by Amazon. The exchange will take into account the prorated value of your purchased reservations. This means that a three year Convertible reservation that cost $1500 at time of purchase will have $1000 in value at the end of the first year and $500 of value at the end of the second year (note: the actual prorating will be done down to the hour).
While this feature offers a powerful benefit to AWS customers, there are some important caveats to note: (1) due to the flexibility they provide, Convertible reservations are slightly more expensive than the other offering types, (2) they can only be purchased for a three year term, and (3) the exchange cannot result in a customer credit (i.e. you must always make an exchange that incurs a cost for the difference between the value of the current reservations and the cost of the new ones).
Read on for Part 2 of this series to learn more about the use cases for when you would want to scope a reservation to a Region versus an Availability Zone, and when Convertible reservations make sense.
Amazon Web Services has introduced a twist on reservation types that will make EC2 reservations even more flexible and cost effective for your organization. Read this blog to dive into the details and learn how to take advantage of them.