Programmatische Budgetbenachrichtigungen verwalten

Übersicht

Die typische Funktionsweise eines Budgets besteht darin, E-Mail-Benachrichtigungen zu senden, wenn die Schwellenwertregeln für Budgetbenachrichtigungen eine E-Mail-Benachrichtigung auslösen.

Diagramm für Budgetbenachrichtigungen
Abbildung 1: Zeigt die Standard-E-Mail-Funktion für Budgetbenachrichtigungen und die optionale Methode für automatisierte Antworten zur Kostenkontrolle mit Pub/Sub für programmatische Benachrichtigungen.

Wenn Sie jedoch Budgets als Tool zur Kostenkontrolle verwenden, sind E-Mail-Benachrichtigungen möglicherweise nicht die beste Benachrichtigungsmethode, um für eine zeitnahe Aktion in Sachen Steuerung Ihrer Google Cloud-Kosten zu sorgen. Neben E-Mail-Benachrichtigungen können Sie auch programmatische Benachrichtigungen verwenden, um Antworten zur Kostenkontrolle zu automatisieren. Beispiele für automatisierte Antworten zur Kostenkontrolle:

  • Begrenzung Ihrer Google Cloud-Ausgaben durch automatische Deaktivierung der Abrechnung oder Beendigung von Ressourcen
  • Weiterleiten Ihrer Budgetnachrichten an andere Medien (z. B. Slack)
  • Sie können Ihre Ressourcennutzung durch Anpassung von Kontingenten kontrollieren.

Weitere Informationen finden Sie unter Beispiele für automatisierte Antworten zur Kostenkontrolle.

Erforderliche Berechtigungen für diese Aufgabe

Je nachdem, ob Sie Budgets auf der Ebene von Cloud-Rechnungskonten verwalten oder Projektinhaber ohne Rollen für Cloud-Rechnungskonten sind, benötigen Sie andere Berechtigungen, wie in den folgenden Abschnitten beschrieben.

Kosten auf der Ebene von Rechnungskonten überwachen

Wenn Sie in erster Linie Kosten für Ihr Cloud-Rechnungskonto überwachen, benötigen Sie Berechtigungen auf der Ebene des Cloud-Rechnungskontos.

Auch wenn Sie keinen oder nur eingeschränkten Zugriff auf das Cloud-Rechnungskonto haben, haben Sie möglicherweise ausreichend Berechtigungen für Ihre eigenen Projekte.

Wenn Ihre Organisation benutzerdefinierte Rollen für die Authentifizierung verwendet, benötigen Sie die folgenden Berechtigungen in der jeweiligen benutzerdefinierten Rolle:

Für benutzerdefinierte Rollen benötigen Sie zum Ändern eines vorhandenen Cloud Billing-Budgets, um es mit einem vorhandenen Pub/Sub-Thema zu verbinden, folgende Berechtigungen:

Kosten auf Projektebene überwachen

Wenn Sie keinen oder nur eingeschränkten Zugriff auf das Cloud-Rechnungskonto haben, können Sie nur Budgets für Ihre eigenen Projekte verwalten.

  • Zum Erstellen, Ändern oder Aufrufen von Budgets für Ihr Projekt benötigen Sie eine der folgenden Rollen für das Projekt:

  • Zum Festlegen oder Ändern von Pub/Sub-Themen benötigen Sie die Rolle Pub/Sub Admin für das Zielprojekt, das die Pub/Sub-Themen enthält.

Wenn Ihre Organisation benutzerdefinierte Rollen für die Authentifizierung verwendet, benötigen Sie die folgenden Berechtigungen in der jeweiligen benutzerdefinierten Rolle:

Wenn Sie Organisationsrichtlinien zum Beschränken der Ressourcenfreigabe nach Domain festgelegt haben (z. B. enforceInTransit für Pub/Sub-Themen aktiviert), wird möglicherweise ein Fehler beim Einrichten von Pub/Sub-Themen angezeigt oder beim Verknüpfen dieser mit einem Cloud Billing-Budget.

In diesem Fall müssen Sie möglicherweise den Kontozugriff erzwingen, um ein Pub/Sub-Thema mit einem Budget zu verbinden. So erzwingen Sie den Kontozugriff:

  1. Entfernen Sie die Organisationsrichtlinie mit der Domaineinschränkung. Nutzen Sie dazu eine der folgenden Methoden:

  2. Führen Sie die Schritte unter Pub/Sub-Thema mit einem Cloud Billing-Budget verbinden aus.

  3. Reaktivieren Sie die Organisationsrichtlinie für die Organisation oder das Projekt (optional).

Informationen zu Google Cloud-Berechtigungen

Weitere Informationen zu Cloud Billing-Berechtigungen finden Sie unter:

Weitere Informationen zu Google Cloud-Projektberechtigungen finden Sie unter:

Programmatische Pub/Sub-Benachrichtigungen einrichten und aktivieren

Wenn Sie programmatische Benachrichtigungen für den Empfang von Pub/Sub-Nachrichten mit dem aktuellen Status Ihres Budgets aktivieren möchten, verknüpfen Sie ein Pub/Sub-Thema mit Ihrem Cloud Billing-Budget.

So können Sie ein Pub/Sub-Thema, das mit Ihrem Budget verknüpft ist, verbinden, bearbeiten oder entfernen:

1. Pub/Sub-Thema erstellen

Konfigurieren Sie ein Pub/Sub-Thema für Cloud Billing, um Ihre Budgetbenachrichtigungen zu veröffentlichen. Wenn Sie bereits ein Budget-Pub/Sub-Thema für Cloud Billing konfiguriert haben, können Sie es für alle Budgets wiederverwenden oder ein eigenes Thema für jedes Budget erstellen.

  1. Rufen Sie in der Google Cloud Console die Seite Pub/Sub auf.

    Bei Pub/Sub in der Google Cloud Console anmelden

  2. Wählen Sie ein Projekt aus.

    Wir empfehlen, ein separates Google Cloud-Projekt für alle Anforderungen an die FinOps- und Abrechnungsverwaltung für ein Cloud-Rechnungskonto zu erstellen und zu verwenden, einschließlich der Cloud Billing-bezogenen Pub/Sub-Themen. Weitere Informationen zu den Vorteilen eines FinOps-orientierten Projekts für Anwendungsfälle zur Abrechnungsverwaltung.

  3. Klicken Sie auf Thema erstellen.

  4. Geben Sie im Feld Themen-ID einen Themennamen ein und klicken Sie auf Thema erstellen.

2. Cloud Billing-Budget mit einem Pub/Sub-Thema verbinden

So verbinden Sie ein Cloud Billing-Budget mit einem Pub/Sub-Thema:

  1. Melden Sie sich mithilfe des Verfahrens, das Ihrer Zugriffsebene für Cloud-Rechnungskonten entspricht, im Abschnitt „Abrechnung“ der Google Cloud Console bei der Seite Budgets & Benachrichtigungen an:

    Nutzer mit Berechtigungen für Cloud-Rechnungskonten Nutzer mit Berechtigungen nur auf Projektebene (Vorschau)

    Wenn Sie Berechtigungen für Cloud-Rechnungskonten haben, können Sie aus einer entsprechenden Liste auswählen.

    1. Melden Sie sich in der Google Cloud Console auf der Seite Budgets und Benachrichtigungen an.

      „Budgets & Benachrichtigungen“ öffnen
    2. Wählen Sie an der Eingabeaufforderung das Cloud-Rechnungskonto aus, für das Sie Budgets verwalten möchten.

      Für das ausgewählte Rechnungskonto wird dann die Seite Budgets & Benachrichtigungen geöffnet.

    Wenn Sie nur Projektberechtigungen, aber keine Berechtigungen für das Cloud-Rechnungskonto Ihres Projekts haben, müssen Sie Ihr Projekt auswählen, bevor Sie zum Abschnitt „Abrechnung“ wechseln.

    1. Melden Sie sich dazu im Google Cloud Console-Dashboard an und wählen Sie ein Projekt aus.

      Google Cloud Console öffnen
    2. Wählen Sie das Projekt aus, für das Sie Budgets verwalten möchten.
    3. Als Nächstes rufen Sie die Abrechnung auf: Öffnen Sie das Navigationsmenü der Google Cloud Console () und wählen Sie Abrechnung aus.

      Wenn Sie aufgefordert werden, das gewünschte Rechnungskonto auszuwählen, klicken Sie auf Zum verknüpften Rechnungskonto, um das Rechnungskonto aufzurufen, das mit dem ausgewählten Projekt verknüpft ist.

      Die Seite Übersicht des Rechnungskontos wird für das ausgewählte Rechnungskonto geöffnet.

    4. Wählen Sie im Bereich Kostenverwaltung des Navigationsmenüs „Abrechnung“ die Option Budgets und Benachrichtigungen aus.
  2. Erstellen Sie gegebenenfalls ein Budget. Wenn Sie stattdessen ein vorhandenes Budget und dessen Benachrichtigungsregeln bearbeiten möchten, klicken Sie auf einen Budgetnamen.

  3. Wählen Sie im Bereich Aktionen unter Benachrichtigungen verwalten die Option Pub/Sub-Thema mit diesem Budget verbinden aus.

  4. Klicken Sie im Feld Projekt auf Projekt auswählen und wählen Sie das Projekt aus, das die von Ihnen eingerichteten Pub/Sub-Themen enthält. Wenn Sie der Empfehlung im vorherigen Abschnitt gefolgt sind, ist dies Ihr Google Cloud-Projekt für die FinOps- oder Abrechnungsverwaltung.

  5. Wählen Sie unter Pub/Sub-Thema auswählen ein vorhandenes Thema aus oder klicken Sie auf Thema erstellen, um ein neues Thema zu erstellen.

    • Wenn Sie ein neues Thema erstellen, geben Sie im Feld Themen-ID einen Themennamen ein und klicken Sie auf Thema erstellen.
    • Nach der Erstellung wird das Thema ausgewählt.
  6. Klicken Sie auf Speichern.

Benachrichtigungsformat

Benachrichtigungen, die an ein Pub/Sub-Thema gesendet werden, bestehen aus zwei Teilen:

  • Attribute: Eine Reihe von Schlüssel/Wert-Paaren, die das Ereignis beschreiben.
  • Daten: Ein String, der ein JSON-Objekt enthält, das die Details der Budgetbenachrichtigung beschreibt.

Attribute

Attribute sind Schlüssel/Wert-Paare, die in allen Benachrichtigungen enthalten sind, die von Cloud Billing an Ihr Pub/Sub-Thema gesendet werden. Benachrichtigungen enthalten immer die folgenden Schlüssel/Wert-Paare, unabhängig von der Nutzlast der Benachrichtigung.

Attributname Beispiel Beschreibung
billingAccountId 01D4EE-079462-DFD6EC Die Kennung für das Cloud-Rechnungskonto, zu dem das Budget gehört
budgetId de72f49d-779b-4945-a127-4d6ce8def0bb Die Kennung für die Budgetbenachrichtigung innerhalb des Cloud-Rechnungskontos
schemaVersion 1.0 Die Schemaversion der Benachrichtigung

Daten

Für die Schemaversion 1.x werden Details zu Budgetbenachrichtigungen in einem base64-codierten UTF-8-String zurückgegeben, der ein JSON-Objekt mit den folgenden Attributen enthält:

Daten Beispiel Beschreibung
budgetDisplayName "My Personal Budget" Für Menschen lesbarer Name, der dem Budget zugewiesen wurde.
costAmount 140.321 Die Höhe der angefallenen Kosten; die Art der verfolgten Kosten hängt von den Budgetfiltern und -einstellungen ab.
costIntervalStart "2021-02-01T08:00:00Z" Der Beginn des Zeitraums der Budgetbenachrichtigung; "costAmount" enthält die Kosten für die Nutzung ab diesem Zeitpunkt. Dies ist der erste Tag des Zeitraums (Monat, Quartal, Jahr oder ein benutzerdefinierter Zeitraum), in dem die Budgetnutzung stattgefunden hat.
budgetAmount 152.557 Der im Budget zugewiesene Betrag
budgetAmountType "SPECIFIED_AMOUNT" Der Budgetbetragstyp; Dies kann einer der folgenden Werte sein:
  • SPECIFIED_AMOUNT“: Ein fester Betrag.
  • "LAST_MONTH_COST": Gesamtkosten, die während des letzten Kalendermonats angefallen sind.
  • "LAST_PERIODS_COST": Die Kosten, die während des letzten, nicht monatlichen Kalenderzeitraums angefallen sind, z. B. ein Quartal oder ein Jahr.
alertThresholdExceeded 0.9 Die höchste konfigurierte Schwellenwertbenachrichtigung für tatsächliche Gesamtkosten wurde überschritten. Der Wert wird als Prozentzahl im Dezimalformat angegeben (z. B. ist 0,9 gleich 90 %). Dieser Schlüssel ist nicht vorhanden, wenn die Kosten keinen Schwellenwert überschreiten.
forecastThresholdExceeded 0.2 Die höchste Obergrenze für Benachrichtigungen zu prognostizierten Kosten wurde überschritten. Der Wert wird als Prozentzahl im Dezimalformat angegeben (z. B. ist 0,2 gleich 20 %). Dieser Schlüssel ist nicht vorhanden, wenn die prognostizierten Kosten keinen Schwellenwert überschreiten.
currencyCode "USD" Die Währung der Budgetbenachrichtigung; alle Kosten und Beträge der Budgetbenachrichtigung werden in dieser Währung angegeben.

Garantien für die Nachrichtenübermittlung an Pub/Sub

Nachdem Sie ein Budget erstellt und mit einem Pub/Sub-Thema verbunden haben, können Sie davon ausgehen, dass programmatische Benachrichtigungen so gesendet werden

  • Budgetbenachrichtigungen werden mehrmals täglich mit dem aktuellen Status Ihres Budgets an das Pub/Sub-Thema gesendet. Der Rhythmus ist anders als bei den Budgetbenachrichtigungen, die nur gesendet werden, wenn ein Budgetschwellenwert erreicht wurde.
  • Pub/Sub-Benachrichtigungen werden auch dann gesendet, wenn das Cloud Billing-Konto nicht verwendet wird.
  • Es kann mehrere Stunden dauern, bis Sie die erste Pub/Sub-Benachrichtigung erhalten.
  • Pub/Sub garantiert eine mindestens einmalige Übermittlung. Unter Umständen empfangen Sie eine Nachricht mehrmals. Benachrichtigungen können auch in falscher Reihenfolge ankommen.
  • Wenn die Übermittlung aufgrund einer falschen Konfiguration des Pub/Sub-Themas fehlschlägt, werden Sie nicht benachrichtigt.

    Die Zustellung kann aus einem der folgenden Gründe fehlschlagen: