La fonctionnalité Cost Insights de Container Service for Kubernetes (ACK) suit l'utilisation des ressources du cluster et la répartition des coûts selon plusieurs dimensions. Les données de coût sont envoyées et stockées dans Managed Service for Prometheus. Appelez les API HTTP pour interroger ces données afin d'analyser l'optimisation des coûts ou pour les intégrer à vos propres outils.
ACK propose trois API pour interroger les données de coût :
Cost API (ancienne version) : interroge le coût estimé en temps réel et l'utilisation des ressources d'un pod.
Cost V2 API : compatible avec la Cost API, elle prend en charge le filtrage par plage de temps et par charge de travail (nom du pod, namespace, libellé, contrôleur ou type de contrôleur). Utilisez cette API pour analyser les tendances des coûts en temps réel.
Allocation API : répartit les montants facturés du cluster sur les différentes charges de travail. La réponse présente la même structure de données que la Cost V2 API. Utilisez cette API pour l'allocation des coûts et les rapports de refacturation interne.
Prérequis
Avant de commencer, assurez-vous d'avoir :
Activé la fonctionnalité Cost Insights
Installé et configuré alibaba-cloud-metrics-adapter
-
Établi une connexion à votre cluster en utilisant l'une des méthodes suivantes :
Téléchargé un outil de traitement JSON. Les exemples de cette rubrique utilisent jq.
Autorisation pour les utilisateurs non propriétaires
Si vous n'êtes pas le propriétaire du cluster mais que vous avez été autorisé par ce dernier à gérer le cluster, ack-metrics-adapter-api-service peut ne pas disposer des permissions requises. Accordez des permissions RBAC (Role-Based Access Control) à l'utilisateur ou au groupe d'utilisateurs dans les identifiants utilisés pour les requêtes adressées au serveur d'API.
Pour accorder des permissions RBAC :
Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.
Sur la page Clusters, repérez le cluster et cliquez sur son nom. Dans le volet de gauche, choisissez Security > Role.
Sous l'onglet Role, cliquez sur Edit YAML dans la colonne Actions correspondant à arms-pilot-prom-spec-ns-k8s.
-
Dans le panneau View in YAML, modifiez le paramètre rules en vous basant sur le contenu suivant, puis cliquez sur OK.
- apiGroups: - '' resources: - services verbs: - get
API disponibles
| API | Cas d'utilisation | Description |
|---|---|---|
| Cost API | Intégrations existantes | Interroge le coût estimé en temps réel et l'utilisation des ressources d'un pod. Ancienne version : utilisez la Cost V2 API pour les nouvelles intégrations. |
| Cost V2 API | Surveillance des coûts en temps réel et analyse des tendances | Interroge le coût estimé en temps réel. Prend en charge le filtrage par plage de temps et par charge de travail (nom du pod, namespace, libellé, contrôleur ou type de contrôleur). Compatible avec la Cost API. |
| Allocation API | Allocation des coûts et refacturation interne | Répartit les montants facturés du cluster sur les différentes charges de travail. Renvoie la même structure de données que la Cost V2 API. |
Étapes suivantes
Analysez l'efficacité des ressources du cluster en utilisant les fonctionnalités de profilage des ressources et d'optimisation des ressources inutilisées. Consultez Optimisation des coûts.
Après avoir mis en œuvre des stratégies d'optimisation des coûts, utilisez la fonctionnalité de contrôle des coûts pour gérer le cycle de vie de la gouvernance des coûts. Consultez Contrôle des coûts.