The cloud has become essential for business operations. It has enabled businesses to move quickly and grow faster than ever. But rising cloud adoption brings an inevitable rise in cloud spend. This creates a crucial problem for finance teams: estimating and budgeting cloud spend for various operations. Let’s see how we can do that with Harness Cloud Cost Management Budgets!
The first step for setting a team cloud cost budget is identifying the resources owned and consumed by the team. Harness CCM accomplishes this by leveraging the powerful rule builder of CCM Perspectives. This lets you group resources that are relevant to your team, providing a unified view of your multi-cloud cost data. For a deeper understanding of cloud cost analysis, read this article for more information on CCM Perspectives.
After you funnel out the resources of interest using the CCM Perspectives rule builder, the same rule set is leveraged by any budget created on top of this perspective. This lets you scope budgets to include any resource combination, as required.
Creating Cloud Cost Management Budgets
Once you have created a CCM Perspective to define the resources that will be governed by your budget, the next step is to configure the budget. Harness CCM lets you tune your budget as per your business needs by providing a set of configurable parameters. Let’s set up a budget!
Cloud Budget Period
First, choose the budget time period. This can be daily, weekly, monthly, quarterly, or yearly. Harness CCM also lets you choose a custom start date for your budget period. For example, you can choose your monthly budgets to start from the 15th of every month instead of the 1st, or perhaps your quarterly budgets to start from February instead of January.
Once you select a budget time period and start date, you’ll be presented with the cost of the last period of resources governed by the budget, as well as a projected cost for the current period based on your last 30 days of spending. This provides a general idea about your cloud spend and cloud billing patterns, which you can use to set the budget amount.
Cloud Budget Amount and Growth Rate
Next, choose a budget type. This can be one of two types:
Specified Amount: You can specify any budget amount as per your requirements. Also, you can configure a growth rate, which increments your budget amount based on the rate period over period. As company revenue grows, costs are expected to go up. Growth rate lets you automatically reflect this growth on your cloud budgets, without manually updating budgets every period.
Last Period’s Spend: This lets you automatically update the budget amount to last period’s spend whenever a new period starts.
The final step is to configure alert thresholds. You can configure them based on actual spend or projected spend. Whenever the cost exceeds the specified budget amount percentage, the configured recipients will receive an email alert notifying that your spend has crossed the threshold.
This addresses an essential use case. Typically, a team is comprised of developers, managers, people from finance teams, etc. Now, it’s not important to notify everyone if you reach, let’s say, 80% of the budget. Therefore, you can set multiple alert thresholds, such as 60% for developers, 80% for managers, and 100% for finance teams.
This completes the budget setup. Check out all of the budgets configured in the budget list section. For each budget, you can view the budget name, time period, budgeted amount, month-to-date spend, forecasted spend based on current spend run rate, both of these amounts relative to the budgeted amount, as well as the alerts set and their respective thresholds.
Selecting any budget takes you to its detailed view. Here, you can see all of its relevant details. The chart shows historical spend data, along with a yellow line indicating the budgeted amount for that period. The table shows periodic costs, including actual and budgeted amounts, as well as their variance in percentage and absolute dollar values.
CCM will soon add support for more notification channels, such as Slack webhooks and Harness User Groups. The Slack integration will let you receive alerts on a Slack channel of your choice. Harness User Groups will let you add user groups instead of individual emails. Stay tuned for more updates!