Amazon Web Services (AWS) offers three different ways to pay for EC2 Instances: On-Demand, Reserved Instances, and Spot Instances. This article will focus on effective strategies for purchasing Reserved Instances. While most of the major cloud platforms offer pre-pay and reservation discounts on compute instances, I’ll be using the AWS terminology and context. Whether you are using Amazon, Azure, or Google Cloud Platform, these recommended strategies have proven effective for purchasing Reserved Instances.
This article assumes you know at least a little about Reserved Instances and the pricing options for EC2 that Amazon offers. If not, be sure to check out the AWS documentation and the summary in this excellent blog post.
Amazon makes several services eligible for Reserved Instance purchases: EC2, RDS, Elasticsearch, Elasticache, DynamoDB, and Redshift. I’ll focus on EC2 Instances, but most of the information is universal. Since these strategies are in a loose order of execution, they are adjustable given your context.
To effectively purchase Reserved Instances, there can be a lot to consider (and to do) before putting together your final order. But it’s worth it given the dollar investment involved and the potential savings for your organization. Here are some best practices for purchasing Reserved Instances.
- Engage the key players deploying workloads in the cloud
- Engage the stakeholders who will approve your purchase
- Run resource utilization reports and right-size analysis
- Update instance families where possible
- Choose payment options
- Decide which accounts to make the purchase under
- Start conservatively
- Give visibility and educate
- Actively manage as a process
- Engage your AWS Technical Account Manager
Engage the Key Players
Get to know the key folks in your organization who are deploying workloads in the cloud. These could be cloud ops or DevOps team members. Be sure to also identify the technical leads or architects for the products. They are usually the closest to the product architectures and can help inform you on related technology roadmap decisions. Take your Reserved Instance plans to them for validation — you don’t want to find out they’re going serverless next month after you’ve bought a bunch of Reserved Instances for them. The team is the best source for learning scaling (or de-scaling) plans, instance family changes, and other key data points. You definitely want the warm fuzzies from them before pulling the trigger on any purchases on their behalf.
Engage the Stakeholders
Now that you know the technology decision makers, make sure to identify and engage the stakeholders who will approve your purchase: finance, CTO/CIO, your boss, and other key partners. It’s easy to get lost in the technical details of an Reserved Instance purchase, make sure to keep your presentations at the appropriate level and context. In the end, you’re proposing a strategy to save money and control costs that provide some easy ROI data points: don’t over complicate it.
Run Utilization Reports and Right-Size Analysis
Run your resource utilization reports and identify EC2 Instances that can be downsized, terminated, modernized, or put on automated start-stop schedules. Your organization, as a matter of best practice, should be performing right-sizing analysis and adjustments on a regular basis. This will yield cost savings even with On-Demand pricing, and you’ll want to make sure you are caught up with your right sizing so you aren’t overspending on underutilized resources or buying unnecessary reservations. An Amazon Trusted Advisor can help with this to a certain degree, and there’s a healthy market of effective third-party tools that can automate and streamline your right-sizing process. Some established examples are CloudHealth, Cloudability, and CloudCheckr — and there are dozens more to choose from. The best approach is to identify and define your organization’s needs and evaluate a couple with the features you are looking for. Any of them will save you lots of time by helping you avoid very tedious and complicated analysis.
Update Instance Families Where Possible
Check the instance families your product teams are using. It’s important to look for previous generation families in use and determine if it’s possible to replace them with more updated versions. In addition to performance gains and feature availability, the newer families are usually slightly cheaper. Also, it can help to do some analysis to make sure the right instance types are being used for the workload — with considerations for favoring compute, memory, I/O, etc. Detailed utilization analysis can help determine any necessary instance type changes and make your reservation purchases more effective. If you’re experiencing or anticipating a lot of change in instance types, the convertible option might be best. You’ll sacrifice a few discount points, in exchange for reducing the risk of being stuck with unused Reserved Instances.
Choose Payment Options
Decide on payment options for your reserved instances. AWS offers three approaches to paying for Reserved Instances: all upfront, partial upfront, and no upfront. The all upfront option provides the steepest discount, but it’s usually only 1% or 2% better than the partial upfront. No upfront (essentially just reserving an instance for 1 to 3 years) offers the smallest discount, usually about a 5% difference from the other two options. Between payment options, term length, and reservation type, you can range anywhere from 30% to 60% in savings. Use the AWS Cost Explorer Reserved Instance Recommendation tool in your account console to easily tinker with the options and see their impact on discounts.
Decide Which Accounts to Make the Purchase Under
For consolidated accounts (a group of accounts linked to a master payer account), you’ll want to decide which accounts to purchase the reservations. Consolidated accounts offer a great feature: reservations can float between accounts. This means if the account the reservation was purchased in can’t use the reservation, it can float to another account so the reservation won’t go unused! Given this, some organizations like the simplicity of purchasing all the Reserved Instances in the payer account and letting them float where needed. As a personal preference, I like purchasing within the individual linked accounts, so the reservations will get used first where intended (although that can be a cumbersome purchase). This can help with budget reporting and other detailed cost analysis within the accounts. Note: If you make your purchases in the payer account, you can turn off Reserved Instance discount sharing for specific linked accounts.
Don’t go for 100% coverage right out of the gate. It might be more comfortable for all involved to make a solid purchase initially — say, 50-70% coverage, depending on your situation. You can also reduce risk by choosing the convertible option for your reservations. And then you can (and should) setup a regular cadence for updating your analysis, buying more, and modifying or converting existing Reserved Instances.
Give Visibility and Educate
Give attention to visibility and education. Success making technology decisions depends on an informed organization. Providing visibility into your cloud performance and cost metrics can help get teams invested in making the right choices. An important part of any cloud optimization strategy also includes evangelism and education. Folks at all levels will be less likely to “buy-in” to complicated decisions that don’t have obvious connections to an organization’s goals. Sure, the information is all over the internet, but it’s a lot more effective to give it structure and shepherd it along in your organization. That’s also a great way to build partnerships invested in the success of your cloud strategies. A solid training platform (like the one hosting this blog) is also super effective for providing curated information to all organizational role types.
Actively Manage Your Reserved Instances as a Process
The Reserved Instance purchase is not the end. Once you’ve got your Reserved Instances in place, remember to build reviewing and modifying them into your process to reduce the risk of them going unused. Over time, you’ll also need to track, prepare and react to Reserved Instances whose terms are expiring.
Leverage AWS Resources
Engage your AWS Technical Account Manager(s). Have your AWS support team provide you with recommendations independent of your own. They’ve got team members dedicated to this craft and can help with all aspects of the analysis and purchase. This is a great sanity check against your own analysis and can help you avoid missing opportunities or making costly mistakes.
In summary, purchasing Reserved Instances can be complicated no matter the size of your organization’s cloud footprint. Start simple, take the time to understand the foundational concepts, and partner with the key stakeholders in your organization. Working with your teams on right-sizing and modernizing activities as an integrated, routine process will make coming up with effective recommendations for Reserved Instance purchases much easier and less stressful.
Application Load Balancer vs. Classic Load Balancer
What is an Elastic Load Balancer? This post covers basics of what an Elastic Load Balancer is, and two of its examples: Application Load Balancers and Classic Load Balancers. For additional information — including a comparison that explains Network Load Balancers — check out our post o...
Advantages and Disadvantages of Microservices Architecture
What are microservices? Let's start our discussion by setting a foundation of what microservices are. Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs). ...
Kubernetes Services: AWS vs. Azure vs. Google Cloud
Kubernetes is a popular open-source container orchestration platform that allows us to deploy and manage multi-container applications at scale. Businesses are rapidly adopting this revolutionary technology to modernize their applications. Cloud service providers — such as Amazon Web Ser...
AWS Internet of Things (IoT): The 3 Services You Need to Know
The Internet of Things (IoT) embeds technology into any physical thing to enable never-before-seen levels of connectivity. IoT is revolutionizing industries and creating many new market opportunities. Cloud services play an important role in enabling deployment of IoT solutions that min...
Which Certifications Should I Get?
As we mentioned in an earlier post, the old AWS slogan, “Cloud is the new normal” is indeed a reality today. Really, cloud has been the new normal for a while now and getting credentials has become an increasingly effective way to quickly showcase your abilities to recruiters and compan...
How to Go Serverless Like a Pro
So, no servers? Yeah, I checked and there are definitely no servers. Well...the cloud service providers do need servers to host and run the code, but we don’t have to worry about it. Which operating system to use, how and when to run the instances, the scalability, and all the arch...
AWS Security: Bastion Hosts, NAT instances and VPC Peering
Effective security requires close control over your data and resources. Bastion hosts, NAT instances, and VPC peering can help you secure your AWS infrastructure. Welcome to part four of my AWS Security overview. In part three, we looked at network security at the subnet level. This ti...
Top 13 Amazon Virtual Private Cloud (VPC) Best Practices
Amazon Virtual Private Cloud (VPC) brings a host of advantages to the table, including static private IP addresses, Elastic Network Interfaces, secure bastion host setup, DHCP options, Advanced Network Access Control, predictable internal IP ranges, VPN connectivity, movement of interna...
Big Changes to the AWS Certification Exams
With AWS re:Invent 2019 just around the corner, we can expect some early announcements to trickle through with upcoming features and services. However, AWS has just announced some big changes to their certification exams. So what’s changing and what’s new? There is a brand NEW ...
New on Cloud Academy: ITIL® 4, Microsoft 365 Tenant, Jenkins, TOGAF® 9.1, and more
At Cloud Academy, we're always striving to make improvements to our training platform. Based on your feedback, we released some new features to help make it easier for you to continue studying. These new features allow you to: Remove content from “Continue Studying” section Disc...
AWS Security Groups: Instance Level Security
Instance security requires that you fully understand AWS security groups, along with patching responsibility, key pairs, and various tenancy options. As a precursor to this post, you should have a thorough understanding of the AWS Shared Responsibility Model before moving onto discussi...
Cloud Migration Risks & Benefits
If you’re like most businesses, you already have at least one workload running in the cloud. However, that doesn’t mean that cloud migration is right for everyone. While cloud environments are generally scalable, reliable, and highly available, those won’t be the only considerations dri...