There are many ways to lower the costs of the Microsoft Azure cloud, some of which are more complicated than others. Before we go into detail, realize that there's a misconception about cloud computing: many users believe it is cheaper than on-premises equivalents.
The reality is that to reduce cloud costs, you must optimize usage. The critical factor is to monitor usage and educate users appropriately. If you do one single thing to cut your Azure costs, do this: monitor your costs so you know where your spend is going.
Reducing Azure Costs Requires a Baseline
If you don't have a baseline financial picture of your cloud spend to start, you can't optimize cloud spend.
If you're just getting started with Azure, it's critical to learn how to best manage costs in advance. Azure provides elastic resources on-demand, although they also offer pre-paid options that reserve resources at a discounted price.
Such pre-paid services are attractive because Azure owns and manages the infrastructure, which saves customers from buying and managing the infrastructure themselves. However, it's easy to miss that cloud processing options don't necessarily equate to cost-savings – until a bill arrives, teaching you otherwise. For instance:
- An employee ran a compute-intensive project that required extensive resources, the cost of which was not anticipated.
- Cloud resources were no longer needed but not shut down.
- An employee over-overestimated the requirements and paid a flat fee.
Contain cloud costs by:
- Paying attention to usage.
- Limiting the number of people who have administrative access to the resources.
- Being clear about the requirements driving the use of the resources.
If you're already using Azure, optimize spend by:
- Understanding usage in detail.
- Understanding the associated costs.
- Knowing where your data is in its lifecycle (for storage costs purposes).
- Analyzing points of economic waste.
- Developing strategies for improving cost management over time.
Lowering costs for your Azure cloud requires combining a number of monitoring and deployment strategies.
Look for Azure Savings Options
Procuring cloud resources is not one-size fits all proposition. You may be able to lower costs or at least control costs more effectively in some of the following ways:
- Pre-payment – it may be possible to lower costs dramatically by purchasing Azure Reserved Virtual Machines (VMs), although you're wise to understand your requirements in advance. If you overbuy, you may be subject to an early cancellation fee.
- Current offers – Microsoft has a page dedicated to current offers. Check it out to see if any of the offers apply.
- Location – VM pricing differs from region to region. Research the differences.
- Resource use – cost overruns are easy to run into when cloud storage and processing resources are running unnecessarily.
- Learn all features – get familiar with Azure's many features so you don't end up paying more than needed for services. If, for instance, you use the available Azure PaaS services, there's no reason to set up their equivalents on VMs.
- Governance controls – use the governance controls to help manage costs and limit the scope of administrative access.
- Read the fine print – uploading data to Azure is free, getting it out isn't. Avoid surprises by being informed.
- Resource appropriateness – realize that different sizes of VMs are available. It's entirely possible to overspend by overbuying VMs.
- Developing applications on a trial basis – you can get a free DevTest account that includes many popular services for 12 minutes, 25 free services indefinitely, and a $200 credit to try Azure services. You can test and deploy enterprise apps, create mobile experiences and take advantage of machine learning and analytics.
- Automate shutdowns – configure automatic shutdowns for development resources. If you just need a resource temporarily, you should ensure you're only being billed for the temporary use of resources rather than an instance that continues to run.
- Manage phases of deployment – first you stage an application, then you deploy it, so why should you pay for both concurrently? Once you move an application from staging to production, shut off the staging resources because you no longer need them.
- Auto scaling – auto-scaling is available on a pay-as-you-go basis. However, pre-paying for resources may be cheaper. It all depends on what you need and for how long.
- Database management efficiencies – if you have to manage a lot of databases, it can be a lot easier to manage with SQL elastic pools. Otherwise, you have to specify a performance tier for each database.
- Archive – Azure Blob Storage has archive options that can save you money. Not all data is used frequently ("hot" data) so you should be able to discern between this often used data and infrequently accessed ("cool" data). This cool data should be archived to save money.
Cost Saving Advice from Azure
Microsoft knows that customers don't want to pay more for Azure than they have to, so the company provides some of its own guidance to minimize the likelihood of nasty surprises. Microsoft recommends:
- Using the Azure pricing calculator to estimate costs in advance. That way, before committing, you can make smart choices about the resources you need.
- Once you're up and running, the Azure Portal provides a breakdown of costs and a forecasts or expected costs. Check it regularly.
- If different parts of the organization will be using Azure, take advantage of tagging so you can track the associated costs.
- Enterprise Agreement costs are available via the Azure Portal. There are nuances in this document that customers should understand.
- Be mindful of a spending limit. First, check to make sure you have one. If you do and you exhaust all your credits, your resources will be disabled.
- If you don't have a spending limit, any overage changes will be billed.
- Don't like the Azure reporting system? Use the API so you can use your favorite reporting tool.
- Pay attention to the free trial limits. When the credits are gone, so is the free Azure access.
- A free trial includes some, but not all services for a 12-month period. Avoid paying for what you mistakenly thought was free by understanding the limitations.
- You can configure VMs to automatically shut down; however, do it mindfully – you may need those VMs.
- Azure Advisor helps you identify resources with low usage.
- Check – and double check – your bills to make sure they're correct.