OpenCost : que devient ce projet FinOps pour Kubernetes

OpenCost

Six mois après son lancement officiel, où en est le projet OpenCost, destiné à établir un standard FinOps pour Kubernetes ?

Mieux vaut tôt que tard ? Dans la communauté OpenCost, la question d’intégrer les coûts externes à Kubernetes se pose de plus en plus nettement.

Voilà quelque six mois que le projet s’est officiellement lancé, avec le soutien de poids lourds dont Adobe, AWS, Google Cloud et SUSE. À cette occasion, il s’était porté candidat à la CNCF (Cloud Native Computing Foundation). Laquelle allait l’accueillir peu après.

L’idée générale n’a pas changé depuis lors. Il s’agit toujours d’établir un standard FinOps pour Kubernetes.

À la racine, il y a une entreprise américaine : Stackwatch. Et un produit, lancé en 2019 sur le modèle open core : Kubecost. Son pilier : un modèle de mesure et d’allocation des coûts. Le projet OpenCost consiste en ce modèle, publié sous licence Apache 2.0 et assorti d’une spécification (méthodologie).

Sur la roadmap au moment de la candidature CNCF, l’affichage des émissions de CO2 y est toujours. Même chose pour l’ajout de tests de conformité. Une UI web est en revanche venue compléter l’API, le plug-in kubectl et la jonction avec Prometheus.

Ce dernier est une brique fondamentale d’OpenCost. En premier lieu comme source. Mais on peut aussi y pousser des métriques de coût… et les exploiter éventuellement avec Grafana.

Kubecost OpenCost AWS

Grafana, vitrine pour OpenCost

Les passerelles avec Grafana sont un autre « sujet chaud » à l’agenda du projet. Il est question, notamment, de faire le point à la KubeCon en avril prochain. En attendant, OpenCost expose, sur son blog, lesdites passerelles. Qui incluent diverses contributions de code. La première, effectuée fin décembre, a consisté à ajouter l’indicateur Prometheus opencost_build_info (obtention du numéro de version). Elle ouvre la voie à l’intégration d’autres métriques de performance.

La dernière version en date (1.99, publiée en décembre) a, en particulier, ajouté la prise en charge de l’API de tarification d’Alibaba Cloud. Elle vient rejoindre celles d’AWS, Azure et GCP. Ainsi que la possibilité, pour les déploiements sur site, d’apporter ses propres informations de prix.

Le système d’authentification OIDC fait partie des autres éléments intégrés depuis la candidature CNCF. Tout comme le mode haute disponibilité et la gestion des étiquettes Google Cloud au niveau des comptes. AWS a, en parallèle, embarqué, dans son offre EKS (Elastic Kubernetes Service), une option Kubecost qui complète ses propres outils FinOps.

architecture OpenCost

Illustration principale © everythingpossible – Fotolia