Best Practices For Reducing Spend In Azure

02.07.19
Jackson Lucas
Cloud Tech Journalist

CONTACT US

Many companies have learned the hard way that moving to the public cloud didn’t always achieve the cost savings they expected. This doesn’t mean that moving to the public cloud is a mistake, but rather assuming that migrating to the public cloud without implementing management, governance, and automation best practices will lead to cost savings.

Download our eBook 10 Best Practices for Reducing Spend in Azure to make sure you’re getting the most out of your cloud investment.

It’s important to remember that these best practices are not meant to be one-time activities, but ongoing processes. Because of the dynamic and ever-changing nature of the cloud, cost optimization activities should ideally take place continuously. Check out proven best practices below to help you reduce your cloud spend in Microsoft Azure.

 
reducing spend in azure

Organizations have frequently noticed public cloud bills that are two to three times higher than expectations.—Gartner

Terminate zombie assets

Zombie assets are infrastructure components that are running in your cloud environment but aren’t being used for any purpose. For example, they could be Virtual Machines (VMs) that were once being used for a particular purpose, but are no longer in use and have not been turned off. Zombie VMs can also occur when VMs fail during the launch process or because of errors in script that fail to deprovision VMs.

Regardless of what the assets were originally being used for, Microsoft will continue to charge for them as long as the asset are in a running state. They must be isolated, evaluated, and immediately terminated if deemed nonessential. Be sure to take a backup of these assets before terminating or stopping it to ensure you can recover them if needed again.

So how do you go about cleaning up your zombie assets? Start by identifying VMs that have a max CPU <5% over the past 30 days. This doesn’t automatically mean this VM is a zombie, but with CPU metrics that low, it’s definitely worth investigating further.  

Rightsize VMs

Rightsizing VMs is the cost reduction initiative with the potential for the biggest impact. It’s common for developers to spin up new VMs that are substantially larger than necessary.  While this may be intentional to give themselves extra headroom, or accidental since they don’t know the performance requirements of the new workload, over-provisioning can lead to exponentially higher costs.  

When determining which VMs are a good fit for rightsizing, it’s important to consider CPU, memory, disk, and network in/out utilization. Reviewing this trended metrics overtime will allow you to make decisions around reducing the size of the VM without hurting the performance of the application on the VM.

A good starting place for rightsizing is to look for VMs that have an average CPU <5% and max CPU of <20% for 30 days. VMs that fit this criteria are viable candidates for rightsizing or termination.

Buy Reserved VM Instances and optimize

Purchasing Microsoft’s Azure Reserved VM Instances is an extremely effective cost saving technique. Azure Reserved VM Instances allow you to make a 1 or 3 year upfront commitment to Microsoft to utilize specific virtual machine instance types. In return, you get a discount on your compute costs and prioritized capacity.

Reservations can save you up to 72% compared to pay-as-you-go pricing, so they’re a no-brainer for any company with sustained virtual machine usage.

One common misconception around Reserved VM Instances is that they can’t be modified once purchased. In reality, Microsoft allows customers to modify reservations to ensure that savings opportunities are being maximized.

To learn 7 more best practices for reducing cost and optimizing your Azure cloud environment, download our eBook.

CLICK HERE

 

Related readings:

Validating Your Microsoft Azure Cloud Security

Optimization And Governance Tips For Azure Cloud Management

Understanding Size Flexible Azure Reserved Virtual Machine Instances