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
- oderPremium
-Tarif verwenden, nicht denFree
-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
oderCost 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
- oderPremium
-Tarif. - Aktualisieren eines vorhandenen AKS-Clusters mit dem
Standard
- oderPremium
-Tarif. - Upgrade eines
Free
-Clusters aufStandard
oderPremium
. - Upgrade eines
Standard
-Clusters aufPremium
. - Herabstufen eines
Premium
-Clusters auf denStandard
-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).
Azure Kubernetes Service