Microsoft has recently been making some changes to the Cloud Solution Provider program which they are calling the new commerce experience. Part of these changes includes shifting the traditional Azure offer into something they are calling Azure Plan. Azure Plan details can be found in this article I wrote previously. One of the major benefits I pointed out in that article is being able to leverage Azure Cost Management and provide that visibility to your customers. In this article, I am going to break down the high-level components of ACM and give you best practices like setting up alerts or automation runbooks that are triggered from usage within the subscriptions 

Overview

Azure Cost Management allows you to analyze spend across all cloud resources under a subscription. It also provides cost optimization recommendations powered by Microsoft’s Advisor capabilities. At a baseline level, ACM allows you to see accumulated spend across all utilities and a forecast for what final charges will look like at the end of the month.  

From here, you can drill down into high level meter categories (like VMs, Storage, etc.), locations (east us, southcentral us, etc.), and resource groups. There are many other custom filters you can create, as well as being able to see previous months usage. Some of the more powerful components you can set up within ACM are alerts and budgets. These tools allow you to be more proactive with variable month over month changes in spend. 

Getting Started

In the Azure Portal for a customer, search for Cost management.

Select Cost Management on the left hand nav that appears. Note how you can change the subscription scope if you have more than one sub in the account. 

Clicking on the Cost Analysis (Preview) shows you all the resource groups spun up in the subscription and they are automatically sorted based on costExpanding the RGs shows you the individual utilities underneath 

If you have turned on the preview features, clicking into the Cost Analysis tab on the left will present you options of pre-filtered views to perform an investigation on the subscriptions. 

A view like Daily Cost can show usage history in a view that makes it easier to identify where spikes in usage came from.  

Advisor Recommendations

The recommendations provided are a limited but can be very insightful to help save cost per month. You can create recommendation digest or alerts on a scheduled cadence when new recommendations are created. I would suggest linking this to your PSA tool so that you have someone take actions when new recommendations are provided.

Alerts and Budget

Budgets can be created which will trigger alerts. These budgets can be scoped at a more granular level with filters vs having to always budget off the whole subscription. 

Alerts can be set based on a percentage of budget, whether that be from actual spend or forecasted.  

Action groups are not mandatory for alerts but can be created which brings in a layer of automation to the solution. You are natively provided the ability of SMS textphone call, and authenticator push versus just email to be notified. In the actions section, you can leverage some of Azure’s automation infrastructure such as runbooks, functions, and logic apps to streamline some type of action. This could be things like automatically spinning resources down in Azure, updating PSA contracts, adjusting invoicing line items, etc. You really have flexibility when integrating all these tools.

Giving Customers Access

In some cases, you may have larger customers that would like to have visibility to Azure spend. Other times, you may be co-managing the infrastructure and want to provide visibility to this other organization as well. ACM provides native access controls within cost management to allow you to assign a specific role to users in or outside the organization. In many environments, this may just be a ‘reader’ role so that others can view the accumulated cost and forecast. One key thing to note here is that Microsoft currently shows these pay-as-you-go rates if you are giving a customer access. This is the same thing as saying you are showing them MSRP. If you are providing Azure witadditional markup, you are not able to factor that in with their view currently. 

Summary

Azure Cost management can be a great tool to optimize cost and identify month over month trends. Setting up alerts and budget across you customers can allow you to be more proactive in changes to a variable billing model. I would recommend setting these budgets up without any action groups tied to them initially. Once you discover what common task you perform after sharing this information, you should look at leveraging the action groups to automate those tasks if possible.  

Share with the Community