Freigeben über


Kostenanalyse für Azure Kubernetes Service (AKS)

In diesem Artikel erfahren Sie, wie Sie die Kostenanalyse für Azure Kubernetes Service (AKS) aktivieren, um detaillierte Kostendaten für Clusterressourcen anzuzeigen.

Informationen zur Kostenanalyse

Ein Azure Kubernetes Service-Cluster (AKS) ist auf verschiedene Azure-Ressourcen wie virtuelle Computer (VMs), virtuelle Datenträger, Lastenausgleichsmodule und öffentliche IP-Adressen angewiesen. Diese Ressourcen können von mehreren Anwendungen verwendet werden. Ressourcenverbrauchsmuster für die einzelnen Anwendungen sind häufig unterschiedlich, sodass ihr Beitrag zu den gesamten Clusterressourcenkosten ebenfalls unterschiedlich sein kann. Einige Anwendungen können auch Speicherbedarf in mehreren Clustern aufweisen, was eine Herausforderung im Bezug auf Kostenzuordnungen und Kostenmanagement darstellen kann.

Wenn Sie die Kostenanalyse für Ihren AKS-Cluster aktivieren, können Sie detaillierte Kostenzuteilungen für Kubernetes-Konstrukte, z. B. Cluster und Namespaces, sowie Azure Compute-, Netzwerk- und Speicherressourcen anzeigen. Das Add-On für die AKS-Kostenanalyse basiert auf OpenCost, einem Open-Source-Inkubationsprojekt der Cloud Native Computing Foundation zur Sammlung von Nutzungsdaten. Nutzungsdaten werden mit Ihren Azure-Rechnungsdaten abgestimmt, um eine umfassende Ansicht Ihrer AKS-Clusterkosten direkt in den Cost Management-Ansichten im Azure-Portal bereitzustellen.

Weitere Informationen zu Microsoft Cost Management finden Sie im Artikel zum Analysieren von Kosten in Azure.

Nachdem Sie das Kostenanalyse-Add-On aktiviert und eine Zeit lang Daten erfasst haben, können Sie Ihre Daten anhand der Informationen in Grundlegendes zu AKS-Nutzung und -Kosten analysieren.

Voraussetzungen

  • Ihr Cluster muss den Standard- oder Premium-Tarif verwenden, nicht den Free-Tarif.
  • Um Informationen zur Kostenanalyse anzuzeigen, müssen Sie über eine der folgenden Rollen für das Abonnement verfügen, das den Cluster hostet: Owner, Contributor, Reader, Cost Management Contributor oder Cost Management Reader.
  • Microsoft Entra Workload ID, für Ihren Cluster konfiguriert.
  • Wenn Sie die Azure CLI verwenden, muss Version 2.61.0 oder höher installiert sein.
  • Nachdem Sie die Kostenanalyse aktiviert haben, können Sie Ihr Cluster nicht auf die Ebene Free herabstufen, ohne zuerst die Kostenanalyse zu deaktivieren.
  • Zugriff auf die Azure-API einschließlich der Azure Resource Manager-API (ARM). Eine Liste der erforderlichen vollqualifizierten Domänennamen (FQDNs) finden Sie unter Erforderliche vollqualifizierte Domänennamen für die AKS-Kostenanalyse.

Einschränkungen

  • Kubernetes-Kostenansichten sind nur für die Microsoft Azure-Angebotstypen Enterprise Agreement und Microsoft-Kundenvereinbarung verfügbar. Weitere Informationen finden Sie unter Unterstützte Microsoft Azure-Angebote.
  • Virtuelle Knoten werden derzeit nicht unterstützt.

Aktivieren der Kostenanalyse für Ihren AKS-Cluster

Sie können die Kostenanalyse mit der --enable-cost-analysis-Kennzeichnung für einen der folgenden Vorgänge aktivieren:

  • Erstellen eines AKS-Clusters mit dem Standard- oder Premium-Tarif.
  • Aktualisieren eines vorhandenen AKS-Clusters mit dem Standard- oder Premium-Tarif.
  • Upgrade eines Free-Clusters auf Standard oder Premium.
  • Upgrade eines Standard-Clusters auf Premium.
  • Herabstufen eines Premium-Clusters auf den Standard-Tarif.

Aktivieren der Kostenanalyse für einen neuen Cluster

Aktivieren Sie die Kostenanalyse für einen neuen Cluster mithilfe des Befehls az aks create mit dem --enable-cost-analysis-Flag. Im folgenden Beispiel wird ein neues AKS-Cluster auf der Standard-Ebene erstellt, bei dem die Kostenanalyse aktiviert ist:

az aks create --resource-group <resource-group> --name <cluster-name> --location <location> --enable-managed-identity --generate-ssh-keys --tier standard --enable-cost-analysis

Aktivieren der Kostenanalyse für einen vorhandenen Cluster

Aktivieren Sie die Kostenanalyse für einen vorhandenen Cluster mithilfe des Befehls az aks update mit dem --enable-cost-analysis-Flag. Im folgenden Beispiel wird ein vorhandenes AKS-Cluster auf der Standard-Ebene aktualisiert, um die Kostenanalyse zu ermöglichen:

az aks update --resource-group <resource-group> --name <cluster-name> --enable-cost-analysis

Hinweis

Wenn Sie das Add-On aktivieren, wird ein Agent im Cluster bereitgestellt. Der Agent verbraucht geringe CPU- und Arbeitsspeicherressourcen.

Warnung

Die Speicherauslastung der AKS-Kostenanalyse-Addon hängt von der Anzahl der bereitgestellten Container ab. Der Speicherverbrauch kann ungefähr auf 200 MB + 0,5 MB pro Container geschätzt werden. Der aktuelle Speichergrenzwert ist auf 4 GB festgelegt, wodurch ungefähr 7.000 Container pro Cluster unterstützt werden. Diese Schätzungen können sich ändern.

Deaktivieren der Kostenanalyse für Ihren AKS-Cluster

Deaktivieren Sie die Kostenanalyse mithilfe des Befehls az aks update mit dem --disable-cost-analysis-Flag.

az aks update --name <cluster-name> --resource-group <resource-group> --disable-cost-analysis

Hinweis

Wenn Sie ein Downgrade des Clusters vom Standard- oder Premium-Tarif auf den Free-Tarif ausführen möchten, während die Kostenanalyse aktiviert ist, müssen Sie die Kostenanalyse zuerst deaktivieren.

Anzeigen der Kostendaten

Sie können Kostenzuordnungsdaten im Azure-Portal anzeigen. Weitere Informationen finden Sie im Artikel zum Anzeigen von AKS-Kosten in Microsoft Cost Management.

Kostendefinitionen

In den Kubernetes-Namespace- und -Ressourcenansichten können die folgenden Gebühren angezeigt werden:

  • Leerlaufgebühren: Stellen die Kosten der verfügbaren Ressourcenkapazität dar, die nicht von Workloads verwendet wird.
  • Servicegebühren: Stellen die Gebühren dar, die dem Dienst zugeordnet sind, z. B. Betriebszeit-SLA, Microsoft Defender for Containers usw.
  • Systemgebühren: Stellen die Kosten der Kapazität dar, die von AKS auf jedem Knoten reserviert wird, um Systemprozesse auszuführen, die vom Cluster benötigt werden, einschließlich der Kubelet- und Containerlaufzeit. Weitere Informationen
  • Nicht zugewiesene Gebühren: Stellen die Kosten für Ressourcen dar, die keinen Namespaces zugeordnet werden konnten.

Hinweis

Es kann bis zu einem Tag dauern, bis Daten finalisiert werden. Nach 24 Stunden haben sich alle Kostenschwankungen des vorigen Tags stabilisiert.

Problembehandlung

Wenn Probleme auftreten, z. B. wenn der cost-agent-Pod OOMKilled erhält oder in einem Pending-Zustand hängenbleibt, finden Sie Hilfe im Artikel zur Problembehandlung für das AKS-Kostenanalyse-Add-On.

Nächste Schritte

Weitere Informationen zu den Kosten in AKS finden Sie in den Grundlagen zur Nutzung und Kosten von Azure Kubernetes Service (AKS).