Cost Savings with your Azure Virtual Machines

With the prevalence of Cloud, a new model is needed for managing costs. While the existing world of on-premise infrastructure is well understood and has been documented over many years, the pricing models for cloud do not easily translate to these existing models. Different considerations apply when thinking about how to manage your organisation’s IT capital and operating costs.

Once the upfront capital costs of on-premise infrastructure are incurred the necessity to spend effort to keep your bill in check is limited to general maintenance. In many ways these are sunk costs. However, with the move to the cloud and the operational expense (opex) models that apply, it becomes an important maintenance item that will have a significant effect on your budget, and if overlooked could mean that considerable unnecessary costs are incurred. Defining an optimal pricing model is highly dependent on your business needs and IT operating demands, but this blog will go some way to explaining the differences.

Cloud can be cost effective but isn’t always by default.

The best way to reduce costs in the cloud — any cloud — is to review how your applications are deployed, and how it could be re-architected to function higher in the new infrastructure stack, such as moving from Infrastructure as a Service (IaaS) to Platform as a Service (PaaS). This will typically provide a lower price point than a traditional virtual machine running in Azure.

That being said, you can find cost efficiencies for your virtual machines in a number of different ways. I will work through some of them here.

I refer to the pricing calculator throughout this article. You can access retail prices for the Azure services using the calculator.

Reserved Instances

I log on to Azure on a daily basis, and the one thing I can always trust is that what I know today, I can’t be sure of tomorrow; There is something different every single time that I log on.

This means that the choice that we make for our cost model in Azure today may not be the most cost-effective tomorrow. Don’t get me wrong, though. These changes are a result of the continuous investment that companies like Microsoft are investing in their cloud service offerings, so it is no surprise that the pricing models will change at a similar pace.

A good example of this change that will save you money is the General Availability of Reserved Instances (RI), which were released on the November 16, 2017.

I have a virtual machine which is running as a DS2 vm type(2 CPU, 7GiB), the running cost of this machine, in May 2018, is $0.374 per hour, that is $273.36 a month, in my region, according to the Azure Pricing Calculator. If I purchase a 1-year reserved instance, it drops the effective monthly price of that machine to $163.88. That is a saving of $109.48 per month, or 40% of the price of the virtual machine.

I am not suggesting that a reserved instance is right for every virtual machine in my infrastructure; one requirement for purchase is that I must prepay the entire cost. If I cancel it, I do receive a pro-rata repayment, but I fully expect that I won’t receive the full unused amount back.

I need to review the purpose of each machine, determine whether the performance is appropriate, and that I am still likely to be running it in 12 months. If the answers to these questions are Yes, then it is a candidate for an RI.

Remember!

If you have 5 instances of a particular type, and you buy 1 reserved instance (RI), it will automatically be applied to one of these machines. If you are comfortable that at least one of these will be running in 12 months, then you can be pretty confident that a RI will save you money!

Azure Hybrid Benefit

Hybrid Licences

Whether you use Hybrid licences is a slightly more difficult decision to make as there are a number of moving parts. You have to compare the price you can achieve when purchasing through your agreement with Microsoft (Enterprise Agreement etc), versus the price you can achieve by paying for the licence as part of your virtual machine price on Azure.

The price that you see on the pricing calculator is retail pricing, this means that the pricing that you have available to you on your subscription may give you a significantly better outcome.

This will also need to be compared to the Azure credit that you purchase as part of your enterprise agreement with Microsoft.

Performance Review

One of the activities that I recommend to clients who have been running a workload in Azure for any length of time, is to do a performance review.

Machine types can be changed at any time, with minimum impact, so reviewing the performance of the virtual machines running in your environment is almost mandatory when you use cloud infrastructure.

Determining virtual machines which are not using their full compute potential and assigning them a smaller virtual machine type, can save you a significant amount of money in a relatively short time.

Unused or Un-needed Resources

One of the largest cost savings I have noticed, that have no impact on any resources or commitment requirements in Azure, would have to be storage.

When a virtual machine is deleted, did the storage get deleted at the same time, or is it still taking up capacity in your subscription?

Do you have backups stored in Azure for machines that are no longer required?

Did someone create a new storage account — or any other service for that matter — and then realise it wasn’t required, but forgot to delete it?

Compare this to on-premise infrastructure. When using internally built systems, they are paid for, there is no ongoing impact to business costs. But, when using cloud solutions every resource that isn’t removed, particularly when it is no longer required, will become another line item on your monthly bill.

Adding a monthly, or quarterly review of your Azure tenant for cost efficiencies will pay you back every bill.

Providing one of your PowerShell-capable IT team members with access to your billing interface and asking them to script a monthly report will mean it doesn’t get forgotten in the hectic nature of the day-to-day support of any business’s IT infrastructure.