Analyse des coûts d’Azure Kubernetes Service (AKS)
Dans cet article, vous allez apprendre à activer l’analyse des coûts sur Azure Kubernetes Service (AKS) pour afficher des données de coût détaillées pour les ressources de cluster.
À propos de l’analyse des coûts
Les clusters AKS s’appuient sur des ressources Azure, telles que des machines virtuelles, des disques virtuels, des équilibreurs de charge et des adresses IP publiques. Plusieurs applications peuvent utiliser ces ressources. Les modèles de consommation de ressources diffèrent souvent pour chaque application, de sorte que leur contribution au coût total des ressources de cluster peut également varier. Certaines applications peuvent avoir des empreintes sur plusieurs clusters, ce qui peut poser un problème lors de l’attribution des coûts et de la gestion des coûts.
Lorsque vous activez l’analyse des coûts sur votre cluster AKS, vous pouvez afficher les allocations de coûts détaillées délimitées aux constructions Kubernetes, telles que les clusters et les espaces de noms, et les ressources de calcul, de réseau et de stockage Azure. Le module complémentaire est basé sur OpenCost, un projet open-source de la Cloud Native Computing Foundation Incubating pour la collecte de données d'utilisation. Les données d’utilisation sont rapprochées de vos données de facture Azure pour fournir une vue complète des coûts de votre cluster AKS directement dans les vues Cost Management du portail Azure.
Pour plus d’informations sur Microsoft Cost Management, consultez Démarrer l’analyse des coûts dans Azure.
Après avoir activé le module complémentaire d’analyse des coûts et le temps nécessaire à la collecte des données, vous pouvez utiliser les informations de Comprendre l’utilisation et les coûts AKS pour vous aider à comprendre vos données.
Prérequis
- Votre cluster doit utiliser le niveau
Standard
ouPremium
, et non le niveauFree
. - Pour afficher les informations d’analyse des coûts, vous devez disposer de l’un des rôles suivants sur l’abonnement hébergeant le cluster :
Owner
,Contributor
,Reader
,Cost Management Contributor
ouCost Management Reader
. - ID de charge de travail Microsoft Entra configuré sur votre cluster.
- Si vous utilisez Azure CLI, vous avez besoin d’une version
2.61.0
ou une version ultérieure installée. - Une fois l’analyse des coûts activée, vous ne pouvez pas passer votre cluster au niveau antérieur
Free
sans désactiver au préalable l’analyse des coûts. - Accès à l’API Azure, y compris l’API Azure Resource Manager (ARM). Pour obtenir la liste des noms de domaine complets (FQDN) requis, consultez Nom de domaine complet AKS Cost Analysis requis.
Limites
- Les vues de coût Kubernetes sont disponibles uniquement pour les types d’offres Contrat Entreprise et Contrat client Microsoft Microsoft Azure. Pour plus d’informations, consultez Offres Microsoft Azure prises en charge.
- Actuellement, les nœuds virtuels ne sont pas pris en charge.
Activer l’analyse des coûts sur votre cluster AKS
Vous pouvez activer l’analyse des coûts avec l’indicateur --enable-cost-analysis
pendant l’une des opérations suivantes :
- Création d’un cluster AKS de niveau
Standard
ouPremium
. - Mise à jour d’un cluster AKS de niveau
Standard
ouPremium
existant. - Mise à niveau d’un cluster
Free
versStandard
ouPremium
. - Mise à niveau d’un cluster
Standard
versPremium
. - Rétrogradation d’un cluster
Premium
au niveauStandard
.
Activer l’analyse des coûts sur un nouveau cluster
Activez l’analyse des coûts sur un nouveau cluster à l’aide de la commande az aks create
avec l’indicateur de --enable-cost-analysis
. La commande suivante crée par exemple un cluster AKS dans le niveau Standard
avec l’analyse des coûts activée :
az aks create --resource-group <resource-group> --name <cluster-name> --location <location> --enable-managed-identity --generate-ssh-keys --tier standard --enable-cost-analysis
Activer l’analyse des coûts sur un cluster existant
Activez l’analyse des coûts sur un cluster existant à l’aide de la commande az aks update
avec l’indicateur de --enable-cost-analysis
. L’exemple suivant met à jour un cluster AKS existant dans le niveau Standard
afin d’activer l’analyse des coûts :
az aks update --resource-group <resource-group> --name <cluster-name> --enable-cost-analysis
Remarque
Un agent est déployé sur le cluster lorsque vous activez le module complémentaire. L’agent consomme une petite quantité de ressources processeur et mémoire.
Avertissement
L’utilisation de la mémoire du module complémentaire d’analyse des coûts AKS dépend du nombre de conteneurs déployés. Vous pouvez approximativement estimer la consommation de mémoire à l’aide de 200 Mo + 0,5 Mo par conteneur. La limite de mémoire actuelle est définie sur 4 Go, qui prend en charge environ 7 000 conteneurs par cluster. Ces estimations sont susceptibles d’être modifiées.
Désactiver l’analyse des coûts sur votre cluster AKS
Désactivez l’analyse des coûts à l’aide de la commande az aks update
avec l’indicateur de --disable-cost-analysis
.
az aks update --name <cluster-name> --resource-group <resource-group> --disable-cost-analysis
Remarque
Si vous souhaitez rétrograder votre cluster du niveau Standard
ou Premium
au niveau Free
pendant que l’analyse des coûts est activée, vous devez d’abord désactiver l’analyse des coûts.
Afficher les données de coût
Vous pouvez afficher les alertes d’allocation des coûts dans le Portail Microsoft Azure. Pour plus d’informations, consultez Afficher les coûts AKS dans Microsoft Cost Management.
Définitions des coûts
Dans les vues des espaces de noms et des ressources Kubernetes, vous pouvez voir l’un des frais suivants :
- Frais inactifs représentent le coût de la capacité de ressource disponible qui n’est pas utilisée par les charges de travail.
- Frais de service représentent les frais associés au service, tels que le contrat SLA de temps d’activité, Microsoft Defender pour les conteneurs, etc.
- Frais de système représentent le coût de la capacité réservée par AKS sur chaque nœud pour exécuter les processus système requis par le cluster, y compris le kubelet et le runtime de conteneur. Plus d’informations
- Frais non alloués représentent le coût des ressources qui n’ont pas pu être allouées aux espaces de noms.
Remarque
La finalisation des données peut prendre jusqu’à un jour. Après 24 heures, toutes les fluctuations de coûts du jour précédent sont stabilisées.
Dépannage
Si vous rencontrez des problèmes, tels que le cost-agent
pod OOMKilled
ou bloqué dans un état Pending
, consultez Résoudre les problèmes liés à l’analyse des coûts AKS.
Étapes suivantes
Pour plus d’informations sur les coûts dans AKS, consultez Comprendre l’utilisation et les coûts d’Azure Kubernetes Service (AKS).
Azure Kubernetes Service