collie-cli icon indicating copy to clipboard operation
collie-cli copied to clipboard

Multi-cloud budget alerts

Open Jelledb opened this issue 4 years ago • 2 comments

Every public cloud provider offers the possibility to set alerts that warn you about costs. Sadly a lot of people don't do it and have bad surprises at the end of the month. Also REALLY annoying you have to set alerts for every tenant individually 🤪. How cool would it be for an enterprise architect to set alerts globally or only for sandbox environments? BTW I think this also would be amazing for a single cloud even to set alerts on multiple tenants at once.

Jelledb avatar Jul 05 '21 15:07 Jelledb

Why?

image

image

Jelledb avatar Jul 05 '21 15:07 Jelledb

I did some research into the topic and it seems that all three cloud platforms have a concept of budgets. Here are my notes from the research:

Azure

https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/tutorial-acm-create-budgets

If you're an EA customer, you can create and edit budgets programmatically using the Azure PowerShell module.

Note

Customers with a Microsoft Customer Agreement should use the Budgets REST API to create budgets programmatically because PowerShell and CLI aren't yet supported.

Looking at this SO question, it seems it just supports those two agreements exclusively. But it looks kinda doable? CLI also allows listing (for seeing who has budgets)

GCP

GCP seems to offer features in their CLI to manage budgets

https://cloud.google.com/sdk/gcloud/reference/billing

To create a budget with the display name 'BUDGET1' in the amount of 100.75 in the default currency ('USD'), to receive notifications when 50% of the current budget or 75% of the forecasted budget is spent in the account '123', run:

gcloud billing budgets create --billing-account=123 --display-name="BUDGET1" --budget-amount=100.75USD --threshold-rule=percent=0.50 --threshold-rule=percent=0.75,basis=forecasted-spend

AWS

AWS also offers budgets. https://docs.aws.amazon.com/cli/latest/reference/budgets/index.html

They also have the possibility for alerts.

Conclusion

It seems more of a challenge on what aspects to support exactly as there are quite a lot of options for budgets: you can create them on various organizational levels, monitor only certain aspects, etc.

And then there is still the possibility to do budget alerting directly within Collie (using a cost collection mechanism), but as discussed it will be difficult / impossible to run such a process in the background all the time.

Jelledb avatar Sep 06 '21 16:09 Jelledb

Closed due to lack of community interest - feel free to revive discussion at https://github.com/meshcloud/collie-cli/discussions

JohannesRudolph avatar Jul 12 '23 08:07 JohannesRudolph