Verwalten der Kosten per Automatisierung
Sie können mithilfe der Cost Management-Automatisierung einen benutzerdefinierten Satz von Lösungen erstellen, um Kostendaten abzurufen und zu verwalten. Dieser Artikel behandelt gängige Szenarien für die Cost Management-Automatisierung und die Optionen, die in Ihrer jeweiligen Situation zur Verfügung stehen. Wenn Sie eine Entwicklung mithilfe von APIs anstreben, können die hier bereitgestellten Beispiele gängiger API-Anforderungen Sie dabei unterstützen, Ihren Entwicklungsprozess zu beschleunigen.
Automatisieren des Abrufs von Kostendaten zur Offlineanalyse
Möglicherweise müssen Sie Ihre Azure-Kostendaten herunterladen, um sie mit weiteren Datasets zusammenzuführen. Oder Sie müssen Kostendaten in Ihre eigenen Systeme integrieren. Ja nach Datenmenge stehen verschiedene Optionen zur Verfügung. In jedem Fall müssen Sie über Cost Management-Berechtigungen im geeigneten Umfang verfügen, um APIs und Tools zu nutzen. Weitere Informationen finden Sie unter Zuweisen des Zugriffs auf Daten.
Vorschläge für die Verarbeitung großer Datasets
Wenn Ihre Organisation Azure in großem Umfang nutzt und über viele Ressourcen oder Abonnements verfügt, fällt eine große Menge an Datenergebnissen für Nutzungsdetails an. Excel kann derartig große Dateien häufig nicht laden. In dieser Situation empfehlen wir die folgenden Optionen:
Power BI
Power BI wird dazu genutzt, große Datenmengen zu erfassen und zu verarbeiten. Als Enterprise Agreement-Kunde können Sie die Power BI-Vorlagen-App verwenden, um Kosten für Ihr Abrechnungskonto zu analysieren. Der Bericht enthält Schlüsselansichten, die von Kunden verwendet werden. Weitere Informationen finden Sie unter Analysieren der Azure-Kosten mit der Power BI-Vorlagen-App.
Power BI-Datenconnector
Wenn Sie Ihre Daten täglich analysieren möchten, empfehlen wird die Verwendung des Power BI-Datenconnectors zum Abrufen von Daten für eine detaillierte Analyse. Alle erstellten Berichte werden durch den Connector auf den neuesten Stand gebracht, wenn weitere Kosten anfallen.
Cost Management-Exporte
Vielleicht ist es nicht erforderlich, die Daten täglich zu analysieren. In diesem Fall können Sie das Cost Management-Feature Exporte einsetzen, um Datenexporte in ein Azure Storage-Konto zu planen. Anschließend laden Sie die Daten nach Bedarf in Power BI oder analysieren die Daten in Excel, falls die Datei klein genug ist. Exporte stehen im Azure-Portal zur Verfügung oder können mit der Export-API konfiguriert werden.
Nutzungsdetails-API
Erwägen Sie die Verwendung der Nutzungsdetails-API, wenn Sie über ein kleines Dataset mit Kostendaten verfügen. Im Folgenden werden die empfohlenen bewährten Methoden aufgeführt:
- Wenn Sie die neuesten Kostendaten erhalten möchten, wird empfohlen, die Abfrage höchstens einmal pro Tag auszuführen. Berichte werden alle vier Stunden aktualisiert. Bei häufigeren Aufrufen erhalten Sie identische Daten.
- Nachdem Sie Ihre Kostendaten für historische Rechnungen heruntergeladen haben, ändern sich die Gebühren nur, wenn Sie explizit darüber benachrichtigt werden. Es wird empfohlen, die Kostendaten in einem abfragbaren Speicher zwischenzuspeichern, um wiederholte Aufrufe identischer Daten zu verhindern.
- Unterteilen Sie Ihre Aufrufe in kleine Datumsbereiche, um Dateien zum Herunterladen zu erhalten, die besser zu verwalten sind. Es wird beispielsweise eine Unterteilung nach Tagen oder Wochen empfohlen, wenn Sie über große monatliche Azure-Nutzungsdateien verfügen.
- Wenn Sie Bereiche mit einer großen Menge von Nutzungsdaten haben (z. B. ein Abrechnungskonto), sollten Sie mehrere Aufrufe für untergeordnete Bereiche ausführen, damit Sie Dateien zum Herunterladen erhalten, die besser zu verwalten sind.
- Wenn Ihr Dataset monatlich mehr als 2 GB umfasst, sollten Sie Exporte als skalierbare Lösung verwenden.
Automatischer Abruf mit der Nutzungsdetails-API
Die Nutzungsdetails-API bietet eine einfache Möglichkeit, unformatierte, nicht aggregierte Kostendaten abzurufen, die Ihrer Azure-Rechnung entsprechen. Die API ist nützlich, wenn Ihre Organisation eine Lösung für den programmgesteuerten Datenabruf benötigt. Erwägen Sie den Einsatz der API, wenn Sie kleinere Datasets mit Kostendaten analysieren möchten. Wenn Sie hingegen über große Datasets verfügen, sollten Sie sich für eine der anderen Lösungen entscheiden, die zuvor genannt wurden. Die Daten in der Nutzungsdetails-API werden basierend auf Verbrauchseinheiten pro Tag bereitgestellt. Sie werden bei der Berechnung Ihrer monatlichen Rechnung verwendet. Die allgemein verfügbare Version dieser API ist 2019-10-01
. Verwenden Sie 2019-04-01-preview
, um per API auf die Vorschauversion für Reservierungen und Azure Marketplace-Käufe zuzugreifen.
Wenn Sie in regelmäßigen Abständen große Mengen von exportierten Daten abrufen möchten, finden Sie weitere Informationen unter Regelmäßiges Abrufen großer Datasets mit Kostendaten mithilfe von Exporten.
Vorschläge zur Nutzungsdetails-API
Anforderungszeitplan
Es wird empfohlen, dass Sie pro Tag nicht mehr als eine Anforderung an die Nutzungsdetails-API übermitteln. Weitere Informationen dazu, wie häufig Kostendaten aktualisiert und wie Beträge gerundet werden, finden Sie unter Grundlegendes zu Cost Management-Daten.
Verwendung von Bereichen oberster Ebene ohne Filterung
Verwenden Sie die API zum Abrufen aller benötigten Daten auf der höchstmöglichen Ebene. Führen Sie erst dann eine Filterung, Gruppierung oder aggregierte Analyse durch, wenn alle erforderlichen Daten erfasst wurden. Die API ist dafür optimiert, große Mengen an nicht aggregierten, unformatierten Kostendaten bereitzustellen. Weitere Informationen zu den verfügbaren Bereichen in Cost Management finden Sie unter Verstehen von und Arbeiten mit Bereichen. Nachdem Sie die erforderlichen Daten für einen Bereich heruntergeladen haben, verwenden Sie Excel, um die Daten mithilfe von Filtern und Pivottabellen zu analysieren.
Hinweise zu Preisen
Beachten Sie die Informationen unter Preisverhalten in Kostendetails, wenn Sie Ihre Nutzung und Gebühren mit Ihrem Preisblatt oder Ihrer Rechnung abstimmen möchten.
Eine einzelne Ressource kann über mehrere Datensätze für einen einzelnen Tag verfügen.
Azure-Ressourcenanbieter geben Nutzung und Gebühren an das Abrechnungssystem aus und füllen das Feld Additional Info
der Nutzungsdatensätze auf. Gelegentlich geben Ressourcenanbieter die Nutzung für einen bestimmten Tag aus und stempeln die Datensätze mit unterschiedlichen Rechenzentren im Feld Additional Info
der Nutzungsdatensätze. Dies kann dazu führen, dass in Ihrer Nutzungsdatei mehrere Datensätze für eine Verbrauchseinheit/Ressource für einen einzelnen Tag vorhanden sind. In diesem Fall wird Ihnen kein zu hoher Betrag in Rechnung gestellt. Die verschiedenen Datensätze stellen die vollständigen Kosten der Verbrauchseinheit für die Ressource an diesem Tag dar.
Nutzungsdetails-API – Beispielanforderungen
Die folgenden Beispielanforderungen werden von Microsoft-Kunden verwendet, um gängige Szenarien abzudecken.
Abrufen von Nutzungsdetails für einen Bereich in einem bestimmten Datumsbereich
Die über die Anforderung zurückgegebenen Daten entsprechen dem Datum, an dem die Nutzung vom Abrechnungssystem erfasst wurde. Die Daten können Kosten mehrerer Rechnungen umfassen. Der zu verwendende Aufruf ist je nach Abonnementtyp verschieden.
Verwenden Sie für ältere Kunden mit einem Enterprise Agreement (EA) oder einem Abonnement mit nutzungsbasierter Bezahlung den folgenden Aufruf:
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?$filter=properties%2FusageStart%20ge%20'2020-02-01'%20and%20properties%2FusageEnd%20le%20'2020-02-29'&$top=1000&api-version=2019-10-01
Verwenden Sie für zeitgemäße Kunden mit einer Microsoft-Kundenvereinbarung den folgenden Aufruf:
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?startDate=2020-08-01&endDate=2020-08-05&$top=1000&api-version=2019-10-01
Hinweis
Der $filter
-Parameter wird von Microsoft-Kundenvereinbarungen nicht unterstützt.
Abrufen amortisierter Kostendaten
Falls Sie für die Ist-Kosten Einkäufe anzeigen möchten, sobald diese anfallen, können Sie den Wert für metric in der folgenden Anforderung in ActualCost
ändern. Für amortisierte Kosten und Ist-Kosten müssen Sie die Version 2019-04-01-preview
verwenden. Die aktuelle API-Version funktioniert – abgesehen vom neuen type/metric-Attribut und geänderten Eigenschaftennamen – genauso wie Version 2019-10-01
. Wenn Sie über eine Microsoft-Kundenvereinbarung verfügen, lauten Ihre Filter im folgenden Beispiel startDate
und endDate
.
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?metric=AmortizedCost&$filter=properties/usageStart+ge+'2019-04-01'+AND+properties/usageEnd+le+'2019-04-30'&api-version=2019-04-01-preview
Automatisieren von Warnungen und Aktionen mit Budgets
Die Maximierung des Nutzens Ihrer Cloudinvestition umfasst zwei wichtige Komponenten: Die eine ist die automatische Budgeterstellung. Die andere ist die Konfiguration einer kostenbasierten Orchestrierung, um auf Budgetwarnungen zu reagieren. Die Budgeterstellung kann auf verschiedene Arten automatisiert werden. Die Überschreitung Ihrer konfigurierten Warnungsschwellenwerte hat verschiedene Reaktionen zur Folge.
In den folgenden Abschnitten werden die verfügbaren Optionen behandelt und exemplarische API-Anforderungen bereitgestellt, um Ihnen den Einstieg in die Budgetautomatisierung zu erleichtern.
Bewerten von Kosten auf der Grundlage Ihres Budgetschwellenwerts
Ihre Kosten werden einmal pro Tag auf der Grundlage Ihres Budgetschwellenwerts bewertet. Bei der Erstellung eines neuen Budgets oder am Tag für die Budgetzurücksetzung sind die Kosten, die mit dem Schwellenwert verglichen werden, Null bzw. NULL, da die Bewertung möglicherweise nicht stattgefunden hat.
Wenn Azure erkennt, dass der Schwellenwert für Ihre Kosten überschritten wurde, wird spätestens eine Stunde nach der Erkennung eine Benachrichtigung ausgelöst.
Anzeigen Ihrer aktuellen Kosten
Wenn Sie Ihre aktuellen Kosten anzeigen möchten, müssen Sie mithilfe der Abfrage-API einen GET-Aufruf ausführen.
Bei einem GET-Aufruf für die API für Budgets werden nicht die aktuellen, in der Kostenanalyse angezeigten Kosten zurückgegeben. Stattdessen werden Ihre zuletzt ausgewerteten Kosten zurückgegeben.
Automatisieren der Budgeterstellung
Die Budgeterstellung kann mithilfe der API für Budgets automatisiert werden. Alternativ können Sie für die Budgeterstellung auch eine Budgetvorlage verwenden. Vorlagen sind eine einfache Methode, um Azure-Bereitstellungen zu standardisieren und gleichzeitig sicherzustellen, dass die Kostenkontrolle ordnungsgemäß konfiguriert ist und erzwungen wird.
Unterstützte Gebietsschemas für Budgetwarnungs-E-Mails
Mit Budgets werden Sie benachrichtigt, wenn die Kosten einen festgelegten Schwellenwert überschreiten. Sie können bis zu fünf E-Mail-Empfänger pro Budget festlegen. Empfänger erhalten die E-Mail-Warnungen innerhalb von 24 Stunden nach der Überschreitung des Budgetschwellenwerts. Der Empfänger soll jedoch möglicherweise eine E-Mail in einer anderen Sprache erhalten. Sie können die folgenden Sprachkulturcodes mit der Budgets-API verwenden. Legen Sie den Kulturcode mit dem Parameter locale
ähnlich wie im folgenden Beispiel fest.
{
"eTag": "\"1d681a8fc67f77a\"",
"properties": {
"timePeriod": {
"startDate": "2020-07-24T00:00:00Z",
"endDate": "2022-07-23T00:00:00Z"
},
"timeGrain": "BillingMonth",
"amount": 1,
"currentSpend": {
"amount": 0,
"unit": "USD"
},
"category": "Cost",
"notifications": {
"actual_GreaterThan_10_Percent": {
"enabled": true,
"operator": "GreaterThan",
"threshold": 20,
"locale": "en-us",
"contactEmails": [
"user@contoso.com"
],
"contactRoles": [],
"contactGroups": [],
"thresholdType": "Actual"
}
}
}
}
Von einem Kulturcode unterstützte Sprachen:
Kulturcode | Sprache |
---|---|
de-de | Englisch (USA) |
ja-jp | Japanisch (Japan) |
zh-cn | Chinesisch (vereinfacht, China) |
de-DE | Deutsch (Deutschland) |
es-ES | Spanisch (Spanien, international) |
fr-FR | Französisch (Frankreich) |
it-it | Italienisch (Italien) |
ko-KR | Koreanisch (Korea) |
pt-br | Portugiesisch (Brasilien) |
ru-RU | Russisch (Russische Föderation) |
zh-tw | Chinesisch (traditionell, Taiwan) |
cs-CZ | Tschechisch (Tschechische Republik) |
pl-PL | Polnisch (Polen) |
tr-TR | Türkisch (Türkiye) |
da-DK | Dänisch (Dänemark) |
en-gb | Walisisch (Großbritannien) |
hu-hu | Ungarisch (Ungarn) |
nb-NO | Norwegisch Bokmål (Norwegen) |
nl-NL | Niederländisch (Niederlande) |
pt-pt | Portugiesisch (Portugal) |
sv-SE | Schwedisch (Schweden) |
Gängige Konfigurationen für die API für Budgets
Ein Budget in Ihrer Azure-Umgebung kann auf verschiedenste Arten konfiguriert werden. Machen Sie sich zunächst Gedanken zu Ihrem Szenario, und ermitteln Sie anschließend die dafür erforderlichen Konfigurationsoptionen. Folgende Optionen stehen zur Verfügung:
- Aggregationsintervall: Gibt den wiederkehrenden Zeitraum für die Kostenerfassung und -auswertung Ihres Budgets an. Die gängigsten Optionen sind „Monatlich“, „Vierteljährlich“ und „Jährlich“.
- Zeitraum: Gibt die Gültigkeitsdauer Ihres Budgets an. Die Budgetüberwachung ist nur während des Gültigkeitszeitraums aktiv, und Warnungen werden nur innerhalb dieses Zeitraums ausgegeben.
- Benachrichtigungen
- Kontakt-E-Mail-Adressen: An diese E-Mail-Adressen werden Warnungen gesendet, wenn für ein Budget Kosten anfallen und die definierten Schwellenwerte überschritten werden.
- Kontaktrollen: Bei dieser Option werden E-Mail-Warnungen an alle Benutzer mit einer entsprechenden Azure-Rolle im angegebenen Bereich gesendet. So können beispielsweise Abonnementbesitzer eine Warnung für ein Budget erhalten, das im Abonnementbereich erstellt wurde.
- Kontaktgruppen: Bei Überschreitung eines Warnungsschwellenwerts werden vom Budget die konfigurierten Aktionsgruppen aufgerufen.
- Kostendimensionsfilter: Die Filtermöglichkeiten, die in der Kostenanalyse oder über die Abfrage-API zur Verfügung stehen, sind auch für Ihr Budget verfügbar. Verwenden Sie diesen Filter, um den Kostenbereich einzuschränken, der durch das Budget überwacht wird.
Nachdem Sie die passenden Budgeterstellungsoptionen für Ihre Anforderungen ermittelt haben, können Sie das Budget mithilfe der API erstellen. Das folgende Beispiel hilft Ihnen bei den ersten Schritten mit einer allgemeinen Budgetkonfiguration.
Erstellen eines nach mehreren Ressourcen und Tags gefilterten Budgets
Anforderungs-URL: PUT https://management.azure.com/subscriptions/{SubscriptionId} /providers/Microsoft.Consumption/budgets/{BudgetName}/?api-version=2019-10-01
{
"eTag": "\"1d34d016a593709\"",
"properties": {
"category": "Cost",
"amount": 100.65,
"timeGrain": "Monthly",
"timePeriod": {
"startDate": "2017-10-01T00:00:00Z",
"endDate": "2018-10-31T00:00:00Z"
},
"filter": {
"and": [
{
"dimensions": {
"name": "ResourceId",
"operator": "In",
"values": [
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{meterName}",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{meterName}"
]
}
},
{
"tags": {
"name": "category",
"operator": "In",
"values": [
"Dev",
"Prod"
]
}
},
{
"tags": {
"name": "department",
"operator": "In",
"values": [
"engineering",
"sales"
]
}
}
]
},
"notifications": {
"Actual_GreaterThan_80_Percent": {
"enabled": true,
"operator": "GreaterThan",
"threshold": 80,
"contactEmails": [
"user1@contoso.com",
"user2@contoso.com"
],
"contactRoles": [
"Contributor",
"Reader"
],
"contactGroups": [
"/subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/actionGroups/{actionGroupName}
],
"thresholdType": "Actual"
}
}
}
}
Konfigurieren einer kostenbasierten Orchestrierung für Budgetwarnungen
Mithilfe von Azure-Aktionsgruppen können Sie Budgets so konfigurieren, dass durch sie automatisierte Aktionen gestartet werden. Weitere Informationen zur Automatisierung von Aktionen mithilfe von Budgets finden Sie unter Verwalten von Kosten mit Budgets.
Datenlatenz und Ratenlimits
Es wird empfohlen, die APIs nicht mehr als einmal pro Tag aufzurufen. Cost Management-Daten werden alle vier Stunden aktualisiert, wenn neue Nutzungsdaten von Azure-Ressourcenanbietern eingehen. Wenn die Aufrufe häufiger durchgeführt werden, wird keine größere Datenmenge bereitgestellt. Stattdessen führt dies zu einer höheren Auslastung.
Abfrageverarbeitungseinheiten der Abfrage-API
Zusätzlich zu den vorhandenen Prozessen zur Ratenbegrenzung schränkt die Abfrage-API auch die Verarbeitung basierend auf den Kosten für API-Aufrufe ein. Die Kosten eines API-Aufrufs werden in Abfrageverarbeitungseinheiten (Query Processing Units, QPUs) ausgedrückt. QPUs dienen als Währung für die Leistung, wie z. B. Cosmos DB-Anforderungseinheiten. Sie abstrahieren Systemressourcen wie CPU und Arbeitsspeicher.
QPU-Berechnung
Derzeit wird eine QPU für einen Monat abgefragter Daten von den zugewiesenen Kontingenten abgezogen. Diese Logik kann sich ohne vorherige Ankündigung ändern.
QPU-Faktoren
Der folgende Faktor wirkt sich auf die Anzahl der QPUs aus, die von einer API-Anforderung verbraucht werden.
- Datumsbereich: Wenn der Datumsbereich in der Anforderung zunimmt, erhöht sich die Anzahl der verbrauchten QPUs.
Weitere QPU-Faktoren können ohne vorherige Ankündigung hinzugefügt werden.
QPU-Kontingente
Die folgenden Kontingente werden pro Mandant konfiguriert. Anforderungen werden gedrosselt, wenn eines der folgenden Kontingente ausgeschöpft ist.
- 12 QPU pro 10 Sekunden
- 60 QPU pro 1 Minute
- 600 QPU pro 1 Stunde
Die Kontingente können bei Bedarf geändert werden, und es können weitere Kontingente hinzugefügt werden.
Antwortheader
Sie können die Antwortheader untersuchen, um die Anzahl der von einer API-Anforderung verbrauchten QPUs und die Anzahl der verbleibenden QPUs nachzuverfolgen.
x-ms-ratelimit-microsoft.costmanagement-qpu-retry-after
Gibt die Zeit für das Backoff in Sekunden an. Wenn eine Anforderung mit 429 gedrosselt wird, erfolgt ein Backoff für die in diesem Header angegebene Zeit, bevor die Anforderung wiederholt wird.
x-ms-ratelimit-microsoft.costmanagement-qpu-consumed
Von einem API-Aufruf verbrauchte QPUs.
x-ms-ratelimit-microsoft.costmanagement-qpu-remaining
Liste der verbleibenden Kontingente.
Zugehöriger Inhalt
- Analysieren der Azure-Kosten mit der Power BI-Vorlagen-App
- Erstellen und Verwalten von exportierten Daten mithilfe von Exporten
- Weitere Informationen zur Nutzungsdetails-API