Master List of 24 Tips to Control Costs in the Azure Cloud

When you first get going with the Microsoft cloud, it can be easy to overshoot your budget. In fact, Gartner says that many organizations spend 50-70% more on the cloud than they really need to. But there are quite a few tools, tips, and tricks that can help you keep your cloud costs under control. Here’s a round-up of top strategies from across the web.

“Through 2020, 80% of organizations will initially overshoot their cloud IaaS budgets.”
– Gartner


Explore your options


1. Try it out first

To take advantage of the power of Azure, you need to have a solid grasp on the ins and outs of its services and options. There are 65,000+ options to deploy Azure virtual machines alone. To familiarize yourself with what’s out there, you can sign up for a trial. This gives you a year to try things out for yourself.

“Organizations need to budget, buy and consume differently. Unplanned and undisciplined forays into cloud adoption are unlikely to produce sustained cost savings.”
– Gartner

2. Plan to tweak over time

This isn’t one of those things you can set and forget. Optimizing Azure costs is an ongoing effort, often with action items every week, and certainly every month. With the cloud, you can get near-real-time metrics on consumption and cost. And you can scale your usage up or down very quickly. When you need more resources, you allocate them. When you don’t, you release them. That’s how you become efficient in the cloud.

3. Hire an expert partner

If you’re just getting started with the cloud, you might want to get help from a managed service provider who can get you all set up and even manage things for you, at least for the first couple of years. That way, you can start to get a better sense of how everything works and what your baseline costs truly are, with less trial and error.

Plus, Microsoft typically offers incentives when you use one of their partners. So check out implementing with a partner in the Cloud Solution Provider program.

4. Invest in your own SWAT team

If you decide to tackle cloud optimization on your own, Gartner suggests that your in-house team should include at least these 5 people (who should plan to spend at least 50% of their time):

  • 2 financial people to stay in touch with business units and finance
  • 1 cloud architect to design the cloud to optimize costs
  • 2 engineers with experience in APIs and automation

5. Baseline actual performance

Before you move workloads to the cloud, you need to have a concrete idea of your actual performance. On-premises, you usually plan for the highest amount of capacity you think you’ll ever need. Which means you likely have resources sitting there unused for a good chunk of the year. But if you try to do this in the cloud, it will cost you. There are several third-party tools out there that can help you get a snapshot of the state, configuration, storage requirements, and network resources of your legacy systems.

6. Estimate and compare costs

Azure offers several ways for you to get a better idea of what you’ll spend. You can use the Azure pricing calculator to see how much a new resource will cost.

 

 

Or log in to your Azure portal for a forecast for your subscription.

 

7. Explore pre-pay discounts

With Azure Reserved VM instances, you can reserve compute capacity in advance on your preferred VM series in regions around the world at extremely low prices for 1-3 year terms. This can save you up to 80% over pay-as-you-go pricing on Windows and Linux VMs. And you can change or cancel these at any time.

8. Consider an enterprise agreement

Large organizations with an enterprise agreement that make an upfront monetary commitment to Azure earn great benefits, including flexible billing options and lower prices. Gartner reports that this is available for those who plan to spend $12,000+ a month for 3 years.

9. Explore costs by region

The pricing for Azure varies by region. And some regions cost quite a bit more than others. So if you have users across the globe, it might be worth taking the time to understand how this can affect your costs. Some things you can do here:

  • Keep applications and their data in the same region to avoid hefty outbound bandwidth charges
  • Consolidate the number of regions you chose, to minimize outbound data transfer
  • If possible, try to limit your presence in high-cost regions or zones
  • Consider using content delivery networks for high-volume transfer to edge locations

10. Take advantage of the price match

Microsoft says they will match or beat other cloud prices for services like compute, storage, and bandwidth for both Azure Reserved Instances and pay-as-you-go-pricing. So you might want to compare costs on different clouds (but in moderation, Gartner warns). For example, you might deploy your dev/test environments to a lower-cost cloud, and production workloads to another.


Monitor costs


11. Monitor costs in a dashboard

Gartner warns that billing invoices for Azure can be millions of lines long. So a spreadsheet often won’t do the trick. Instead, get a complete cloud cost management solution to monitor, allocate, and optimize Azure resources and spend. There’s a free option built into the Azure portal (below).

 

Or you can go with a third-party option, which can often give you more flexibility. Use the Azure billing APIs to connect with a tool of your choice. This is a great way to see more information about trends, spikes, and general spend over time.

12. Set up billing alerts

To get notified when your usage costs start to go above a certain amount, set up a billing alert.

 

13. Set a spending limit

On some Azure offers, you can set a spending limit, which is where Azure will automatically disable your services when you hit your limit.

 

14. Group and tag resources

An Azure report about usage could have millions of lines. So to keep things nice and tidy, you can use tags to group your Azure resources. You can tag items by cost center (like HR, marketing, finance) or environment (production, pre-production, test). And for those of you who are using Azure Site Recovery, make sure to also tag resources dedicated to disaster recovery.

 

15. Hold end-users accountable, too

Going along with the above, IT shouldn’t be the only team responsible for how you’re using the cloud. Business users should have skin in the game, too. So make sure they know to turn off services when they’re not using them. This shift in mindset that can make a big difference.


Manage ongoing


16. De-allocate or delete what you don’t use

Turn resources off when you’re not using them. Or if they’ve become orphaned, delete them altogether. Note that merely powering things down will still cost you. So you have to delete the resources to get rid of the charge altogether. But to make sure that no one accidentally deletes something important, use Resource Manager Locks.

17. Automatically start/stop VMs on a schedule

You can even start and stop resources on an automated schedule. That way, you’re not paying for bandwidth during off-hours. Or you could even stop them when their CPU utilization drops to 5% or less.

 

18. Burst your VMs

You can pay and burst as needed to optimize VMs for workloads like web servers and dev/test environments. This reduces costs by using a fraction of your CPU power.

19. Use standard resources

Instead of spinning up your own custom VMs, use Azure DevTest Labs to create a fast, easy, and lean sandbox for development, testing, or even training. This can help reduce your dev/test costs.

20. Get recommendations from Azure Advisor

This feature helps you find resources with low usage. Then it estimates how much money you might save by shutting down the resource. See more.

 

21. Store data in the right place

For storage, don’t merely spin up a virtual machine, which can be a more expensive option. Instead, use Azure Storage to create an Azure File Share. And make sure to choose the right type of storage for the type of data it is. For example, choose the lowest possible storage offering for workloads that don’t require frequent data access. This can be up to 90% less than hot blob storage.


Go beyond


22. Optimize your network

Usually, you’ll connect to Azure either through your internet or through a private network like ExpressRoute. Before you move workloads to the cloud, forecast outbound bandwidth for 3-5 months. This will give you a good baseline as to what to expect. Also, consider using content delivery networks for high-volume transfer to edge locations.

23. Track all cloud dependencies

Make sure all your other services that are called from the cloud (like SQL Server, queues, and caching) are performing well. Try Azure SQL Database to get performance reporting and index tuning recommendations.

24. Tune up your cloud applications themselves

Over time, as you get a better sense of how your applications are running in the cloud, you should take a look at ways to streamline their performance as well. After all, the faster and more efficient your applications work, the fewer cloud resources they’ll use. Look for slow web requests, slow methods in your code, and more.

 

References: