Kepler : le projet GreenOps de Red Hat et d’IBM reste prometteur
Si le projet Kepler n’est pas très visible depuis qu’il a rejoint la CNCF, Red Hat et IBM ne l’ont pas abandonné. Il est le socle de Power Monitoring, un outil de suivi de consommation énergétique par conteneur dans OpenShift et devrait s’étendre prochainement au-delà des infrastructures bare-metal.
En 2022, Red Hat et IBM présentaient Kepler (Kubernetes Efficient Power Level Exporter), un projet confié à la CNCF en mode Sandbox en 2023.
Celui-ci s’appuie en partie sur eBPF, un framework permettant d’exécuter des programmes légers au plus près du kernel Linux. Il s’agit plus particulièrement de collecter des données sur la consommation d’énergie des systèmes d’information et de les exporter en tant que métriques Prometheus. Les données sont rendues visibles à travers un tableau de bord Grafana.
Chez Red Hat, Kepler est la base du produit Power Monitoring, un service en préversion technique associé à Red Hat OpenShift depuis le mois de janvier 2024.
Power Monitoring doit permettre d’identifier les charges de travail les plus gourmandes au sein des clusters OpenShift, à partir des mesures d’utilisation du CPU, de la mémoire vive et des GPU « mesurés au niveau des conteneurs ».
« Au-delà de la durabilité et du FinOps, il y a tout simplement la notion de consommation d’énergie. »
David SzegediChief architect, direction technique, Red Hat
Outre l’idée de superviser le bilan énergétique de Kubernetes, Kepler et Power Monitoring promettent de faciliter la refacturation interne des ressources consommées par les applications. Un point essentiel dans une démarche FinOps. « Au-delà de la durabilité et du FinOps, il y a tout simplement la notion de consommation d’énergie », évoque David Szegedi, chief architect au sein de la direction technique de Red Hat. « Cela devient un aspect d’urbanisation important. Par exemple, il est possible qu’un data center n’ait pas suffisamment de puissance électrique disponible pour alimenter ses GPU et ne puisse pas faire de l’inférence IA, comme c’est déjà arrivé chez certains clients ».
Kepler : le socle de Power Monitoring dans OpenShift
Associer des charges de travail – ou des nœuds et des pods dans le cas de Kubernetes – à une consommation électrique n’est pas aussi simple que cela. De plus, tous les fournisseurs et les équipementiers ne proposent pas d’outils pour mesurer directement la consommation électrique de leurs systèmes.
Les métriques des nœuds et des conteneurs sont en partie collectées à travers les processus tracés par eBPF. Les données des équipements sont captées en « temps réel » à travers la fonctionnalité RAPL (Running Average Power Limit) d’Intel (CPU, DRAM), les estimations de consommation établies par le consortium SPECPower, des sondes ACPI, le protocole Redfish (stockage, réseau) et la librairie NVML de Nvidia (GPU). Quand ces informations de consommation ne sont pas disponibles – dans les environnements virtualisés –, des modèles de régression sont utilisés.
Une fois enregistrée dans Prometheus, la consommation par processus, conteneur ou VM (mais aussi les ressources « idles », au repos) est également fonction d’un calcul algorithmique afin d’attribuer les ressources consommées aux bonnes entités. Kepler contient le pipeline d’entraînement pour collecter, nettoyer, isoler, normaliser les données, puis entraîner les modèles. Sur étagère, les « modèles de puissance » Peaks, Clever et Kepler permettent respectivement de mesurer l’efficacité énergétique du scheduler Kubernetes, de recommander « l’éco-autoscaling » vertical des pods et d’évaluer la consommation sans le recours à des données en temps réel des VM.
Les estimations qui en résultent doivent encore être vérifiées. La préversion technique de Power Monitoring se poursuit sur les environnements bare-metal et virtualisés. La dernière version en date a ajouté la prise en charge des environnements conformes aux normes FIPS.
Dans Power Monitoring, 25 métriques sont disponibles, dont certaines permettent de superviser la consommation énergétique par conteneur et par nœud, en fonction principalement des ressources CPU et RAM.
« Avec Power Monitoring, nous sommes en phase de test et de calibrage. Nous obtenons des retours de clients qui déploient la technologie sur différentes infrastructures matérielles en complément de sondes afin d’étalonner les modèles de machine learning », relate David Szegedi.
Affiner les mesures de consommation des infrastructures, une nécessité à l’ère de l’IA
Il s’agit plus particulièrement de prouver les assomptions d’un article de recherche ayant donné naissance au projet Kepler et à Power Monitoring.
« Cela reste […] un sujet prioritaire pour nous, en particulier chez certains clients, et ce malgré les vents contraires au sujet de la durabilité aux États-Unis ».
David SzegediChief architect, direction technique, Red Hat
« Nous nous sommes donné plusieurs mois afin que les mesures soient presque aussi fiables qu’avec un multimètre », assure le chief architect.
Depuis mars 2025, Kepler en est à la version 0.8, donc proche d’une v1, tandis que Power Monitoring est accessible à travers la version OpenShift 4.18 en v0.4. « Au vu de notre backlog conséquent, nous avons pris un certain retard », estime David Szegedi. « Cela reste néanmoins un sujet prioritaire pour nous, en particulier chez certains clients, et ce malgré les vents contraires au sujet de la durabilité aux États-Unis ».
Lors du Mobile World Congress 2025, Red Hat avait annoncé un partenariat avec la branche télécom de Softbank. Celui-ci implique une meilleure observabilité des technologies RAN, mais aussi une plus grande précision des calculs des ressources consommées par les GPU.
Des discussions ont également été menées entre Red Hat avec AWS, Microsoft et GCP. L’idée serait d’obtenir l’aval des fournisseurs cloud afin d’accéder aux données précises de consommation de leurs serveurs. « Ces discussions sont en cours, mais les choses qui en résulteront sont assujetties à la disponibilité générale du produit [Power Monitoring] », avance le chief architect. « Même si ces acteurs ont des solutions pour la mesure de la consommation électrique des systèmes, les niveaux de granularité que l’on peut obtenir avec Kepler et Power Monitoring sont séduisants ».
Toutefois, les machines virtuelles et leur hyperviseur peuvent poser un problème pour obtenir des mesures fiables. Les modèles préentraînés de Kepler sont enclins à surestimer la consommation de ressources par VM ou avoir du mal à allouer leur consommation au repos, tandis que les données obtenues dépendent généralement des valeurs renvoyées par l’hyperviseur. « Le surprovisionnement des ressources dans certaines machines virtuelles du cloud public peut avoir un impact sur la précision des mesures d’utilisation des ressources, ce qui affecte la fiabilité de ces modèles de puissance », peut-on lire dans la documentation du projet Kepler.
« Je pense que les modèles de machine learning vont évoluer », anticipe David Szegedi.
Le projet open source progresse en ce sens. Pendant la KubeCon 2025 à Londres, Sunyanan Choochotkaew, chercheuse chez IBM et contributrice principale du projet Kepler, a rapidement évoqué de nouvelles fonctionnalités liées à la mesure de puissance des instances Bare-Metal, l’introduction de métriques spécifiques au GPU Grace Hopper de Nvidia, des outils pour valider la précision des modèles et les améliorations de l’estimation des consommations des VM.