Warum keine Ressourcengruppe ohne Budgetkontrolle existieren darf — und wie du das änderst.
Redmond hat mich erwischt
Beim MVP Summit in Redmond sitzt man nicht in Vorträgen. Man sitzt mit Leuten zusammen, die Azure täglich in der Tiefe leben. Architekten, MVPs, Engineers. Und irgendwann kommt das Gespräch auf Kosten.
Was mich getroffen hat: Es war kein Einzelfall. Mehrere Experten aus völlig unterschiedlichen Branchen beschrieben dasselbe Muster. Kunden, die Azure produktiv nutzen, teils seit Jahren — und die trotzdem jeden Monat vor einer Blackbox sitzen. Die Rechnung kommt. Die Zahl überrascht. Und niemand weiß genau warum.
Kein Budget. Keine Alerts. Keine Struktur. Ressourcen laufen, weil sie mal angelegt wurden. Und weil niemand hingeguckt hat.
Das ist kein Azure-Problem. Das ist ein Disziplin-Problem. Aber Azure macht es dir leicht, dieses Problem zu ignorieren — bis die Rechnung es dir unmöglich macht.
Worum es geht: Azure Cost Management
Azure Cost Management + Billing ist Microsofts eingebautes Werkzeug zur Kostenanalyse und -steuerung. Kostenlos. Direkt im Portal. Und in erschreckend vielen Umgebungen kaum genutzt.
Die relevanten Hebel:
- Budgets — Kostenlimits auf Subscription- oder Ressourcengruppen-Ebene
- Alerts — Benachrichtigungen bei definierten Schwellwerten (z. B. 80 %, 100 %)
- Cost Analysis — Aufschlüsselung nach Service, Ressourcengruppe, Tag, Zeitraum
- Tags — Pflichtfeld für saubere Kostenzuordnung
- Azure Policy — Erzwingt Tagging und kann Ressourcenerstellung ohne Tags blockieren
Das Zusammenspiel dieser fünf Elemente ist keine Raketenwissenschaft. Aber es braucht Entscheidung und Disziplin.
Das Eingemachte: Budgets auf Ressourcengruppen-Ebene
Warum Ressourcengruppen — und nicht nur die Subscription?
Ein Budget auf Subscription-Ebene ist besser als nichts. Aber es ist wie ein einziger Sicherungsautomat für das ganze Haus. Du weißt, dass irgendwo zu viel Strom fließt — aber nicht wo.
Ressourcengruppen sind die richtige Granularitätsebene. Sie spiegeln typischerweise Projekte, Umgebungen oder Teams wider. Ein Budget pro Ressourcengruppe gibt dir genau das, was du brauchst: Sichtbarkeit auf der Ebene, auf der Entscheidungen fallen.
Budget anlegen — so geht’s
Im Azure Portal:
Cost Management → Budgets → + Hinzufügenrg-projekt-x-monthlyPer Azure CLI, wenn du das skalieren willst:
az consumption budget create \
--budget-name "rg-projekt-x-monthly" \
--amount 500 \
--time-grain Monthly \
--resource-group rg-projekt-x \
--time-period start=2024-01-01 \
--notifications enabled=true \
operator=GreaterThan \
threshold=80 \
contact-emails="team@example.com"
Die exakte CLI-Syntax kann je nach az-Version leicht abweichen. Im Zweifel die offizielle Doku gegenprüfen.
Tagging als Pflicht, nicht als Option
Budgets ohne Tags sind halbgar. Tags ermöglichen dir, Kosten über Ressourcengruppen hinweg zuzuordnen — nach Projekt, Kostenstelle, Umgebung.
Empfohlene Mindest-Tags:
| Tag | Beispielwert |
|---|---|
environment | prod / dev / test |
project | projekt-x |
owner | team-infra |
costcenter | CC-1234 |
Azure Policy kann die Erstellung von Ressourcen ohne diese Tags blockieren. Das ist keine Schikane — das ist die einzige Möglichkeit, Disziplin systemseitig durchzusetzen.
Die Policy-Initiative Require a tag on resource groups ist ein guter Einstieg. Direkt im Policy-Portal als Built-in verfügbar.
Forecast-Alerts: Das unterschätzte Feature
Neben reaktiven Alerts (du hast X % ausgegeben) gibt es Forecast-Alerts. Azure schaut auf den bisherigen Verbrauch im Monat und schätzt, wo du am Monatsende landen wirst.
Einen Forecast-Alert bei 110 % zu setzen bedeutet: Du bekommst eine Warnung, bevor das Budget überschritten wird. Das ist der Unterschied zwischen Steuerung und Schadensbegrenzung.
Achte auf diese Fallstricke
Ein überschrittenes Budget schaltet nichts ab. Es informiert — und das ist gut so. Automatisches Abschalten würde Produktivsysteme gefährden. Die Konsequenz muss der Mensch ziehen.
Ohne verknüpfte Action Group ist ein Alert nur ein stiller Eintrag im Portal. Immer eine E-Mail-Gruppe oder einen Teams-Kanal verknüpfen.
Am 1. des Monats resettet der Zähler. Wer kurz vor Monatsende noch schnell Ressourcen anlegt, landet im nächsten Monat trotzdem mit der Rechnung.
Alte Ressourcen, die vor der Budget-Einführung angelegt wurden, laufen einfach weiter. Cost Analysis aufrufen und gezielt nach Ressourcen ohne Tags oder mit unerwarteten Kosten filtern.
Praxis-Check
So merkst du, dass es läuft
- Jede Ressourcengruppe hat ein aktives Budget mit mindestens zwei Alert-Schwellen
- Du bekommst monatlich mindestens eine Alert-E-Mail — das ist ein Zeichen, dass das System arbeitet
- Cost Analysis zeigt dir die Top-5-Kostentreiber auf einen Blick
- Keine Ressource ohne Pflicht-Tags — Policy greift
Wenn’s nicht klappt: Diese drei Dinge prüfen
Deny?Was bleibt
In Redmond war die Aussage klar: Zu viele Kunden geben zu viel aus, weil die Kontrolle fehlt. Jeden Monat eine Blackbox, jeden Monat eine Überraschung.
Das muss nicht sein. Azure Cost Management ist vorhanden, kostenlos und mächtig genug. Was fehlt, ist nicht das Tool — es ist die Entscheidung, es konsequent einzusetzen.
Meine klare Linie: Es darf in Azure keine Ressourcengruppe und keine Subscription ohne aktives Budget und Alerting geben. Nicht in Produktion. Nicht in Dev. Nicht „temporär“. Nie.
Denn so viel Monopoly-Geld hat man schlicht nicht.
Ein Budget ohne Alert ist wie ein Tacho ohne Anzeige — du fährst trotzdem, merkst aber erst an der Tankstelle, dass du zu schnell warst.
Checkliste: Azure Kostenkontrolle — Minimum Viable Setup
- Jede Ressourcengruppe hat ein monatliches Budget
- Alert bei 80 % (Warnung) und 100 % (Eskalation) konfiguriert
- Forecast-Alert bei 110 % aktiv
- Action Group mit E-Mail oder Teams-Webhook verknüpft
- Mindest-Tags definiert und per Policy erzwungen
- Cost Analysis monatlich reviewed — Top-5-Kostentreiber bekannt
- Alte Ressourcen auf Tags und aktive Nutzung geprüft
Öffne jetzt Azure Cost Management und zähl, wie viele deiner Ressourcengruppen kein aktives Budget haben. Die Zahl wird dich überraschen. Frage oder Feedback? Schreib mir auf LinkedIn.