What are Azure Reserved Instances and Using Them to Reduce Cloud Costs
In today's post, our guest blogger Gilad David Maayan explains what Azure Reserved Instances are and how to use them to save cloud costs
What are Azure Reserved Instances?
Microsoft Azure is a popular cloud computing platform that offers numerous cloud services, such as computing, storage, networking, and analytics. It allows users to choose the services relevant to their scenario and use them to run existing applications and develop and scale new applications in the Azure cloud.
Azure Reserved Virtual Machines (VMs), commonly known as Azure reserved instances, can help you reduce costs when committing to a one-year or three-year plan. Committing to long-term usage enables you to get a discount of up to 72% off on-demand prices. This pricing option provides a billing discount that does not affect the runtime state of Azure resources. Once you purchase reserved instances, Azure automatically applies the discount that matches your resources.
Reserved instance plans let you pay monthly or up front, and the total cost of both options is the same. There are no extra fees when choosing to pay monthly. However, monthly payment is only available for Azure reserved instances. You cannot use reserved instances for third-party products.
Azure reserved instance plans are ideal for projects with consistent resource usage. When continuously running service instances without applying for reserved instances, Azure charges the pay-as-you-go rates. When reserving instances, you immediately get the applicable discount instead of the pay-as-you-go rates.
Keep in mind that reserved instances also limit your flexibility in the cloud. If you want to migrate from Azure to another cloud environment or back on-premises, you will lose your investment. For this reason, reserved instances are only relevant for long-running workloads that are anyway planned to stay in Azure for the long term.
How an Azure Reservation Discount is Applied
Azure applies a reservation discount to the resource matching the attributes you have selected when purchasing the reservation. A Reservation is defined by applying a “scope”, this is a concept in Azure that defines which VMs, SQL databases, Azure Cosmos DB, or other resources are relevant for a pricing option.
Use or lose
Azure does not allow saving reservations—if you do not use the reservation discount, you lose it. You can lose a reservation quantity for a specific hour if you do not have matching resources for this time. It is not possible to carry forward unused reserved time.
Once you shut down a certain resource, Azure automatically applies the reservation discount to another matching resource in the specified scope. You lose these reserved hours if there are no matching resources in the specified scope.
Shared scope
If your virtual machines (VMs) run in different subscriptions within the enrollment or account, you need to select the scope as “shared”. The shared scope option allows applying the reservation discount across subscriptions. Azure allows changing the scope after buying a reservation.
Renewal options
Once you reach the end of a reservation term, the billing discount expires, and Azure starts applying the pay-as-you-go for these resources. The default setting does not renew reservations automatically. You can enable automatic renewal for a reservation by choosing this option in the renewal settings.
Automatic renewal purchases a replacement reservation once the existing reservation expires. It is set to choose a replacement reservation with the same attributes as the expiring one by default. You can change the billing term, quantity, or frequency in the renewal settings. Only users with owner access to the reservation and the billed subscription can set up renewal.
What are Azure Reservation Recommendations?
Azure provides reserved instance purchase recommendations, which can help you identify cloud resources that could benefit from a reserved instance plan. You can find these recommendations in the Azure Consumption Reservation Recommendation API, the reservation purchase experience located in the Azure portal, or Azure Advisor.
Here is how Azure calculates reserved instance recommendations:
- Azure’s recommendation engine evaluates your hourly resource usage in the specified scope over the previous 7, 30, and 60 days.
- The engine uses usage data to simulate costs with and without reservations.
- Azure simulates costs for various quantities and recommends the quantity that maximizes the savings.
- If you regularly shut down resources, the simulation will not find savings and will not be able to provide purchase recommendations.
- The final recommendation calculations include special discounts already applied to on-demand usage rates.
Quick Tutorial: Monitor and Optimize Reserved Instance Use
After purchasing a reservation, you must monitor it to ensure optimal usage and savings. You can maximize savings by increasing the reservation to 100% utilization.
Monitoring Your Reservation Usage
Here is how to monitor your usage of reserved instances:
- Go to the Azure portal and sign in to your account.
- Choose All services, and then select Reservations. Find and note the Utilization percentage for your reservation.
- You can see utilization details by selecting the reservation utilization percentage.
- You can see the usage breakdown per resource by choosing a point on the chart.
Actions You Can Take Based on the Data
If you discover that your reservations are underused, you can take several actions:
Exchange a reservation
If the reservation is underutilized constantly, you can exchange the unused quantity for a different recommended size.
Here are key considerations:
- Virtual machine (VM) reservation exchanges are interchangeable. You can exchange Azure VMs, Azure VMware Solution reservations, and Azure Dedicated Hosts interchangeably.
- Azure lets you exchange other reservations in the same product type. For example, you can exchange an SQL reservation for a different SQL product.
- When making an exchange, Azure allows you to change the region, product, payment option, and term.
- Azure refunds the prorated reservation amount when you exchange a reservation and then charges you fully for the new purchase.
- Azure does not enforce any penalties or fees for exchanges.
Change your resources
If you have resources without a reservation discount, resize them to sizes that match an underutilized reservation. You can, for example, change a VM from a D series to an E series VM if you have an unused reservation for E series VMs in a matching region.
Change the reservation scope
If you scope a reservation to a resource group or single subscription, you can use the reservation of another resource group or subscription with matching resources. Here are two actions to consider:
- Change your reservation’s scope to Shared scope.
- Split your reservation into smaller pieces and then assign each piece to scopes with utilization for matching resources.
Conclusion
In this article, I explained the basics of Azure Reserved VMs, also known as Azure reserved instances. I explained how reserved instances work, and showed a quick tutorial that illustrates how to monitor your current reserved instance usage and optimize it in one of three ways:
- Exchange a reservation for a different recommended size
- Change the resources included in the reservation
- Change reservation scope
I hope this will be useful as you leverage reserved instances to cut your costs in the Azure cloud.