Wie das Kepler-Projekt zu mehr Nachhaltigkeit führt

Von Huamin Chen*

Im Rechenzentrum oder in der Cloud laufende Anwendungen verbrauchen viel Strom – aber wie viel eigentlich genau? Kepler liefert Antworten und hilft bei Optimierungen.

Viele Menschen denken bei Nachhaltigkeit zunächst an wiederverwendbare Wasserflaschen, Strohhalme aus Papier oder Komposttonnen für Haus- und Gartenabfälle, aber nicht an Rechenzentren. Allerdings ist deren Stromverbrauch zuletzt um jährlich zehn bis 30 Prozent gestiegen und macht inzwischen laut der Internationalen Energieagentur 1 bis 1,5 Prozent des weltweiten Energieverbrauchs aus. Wollen Unternehmen ihre Umweltbelastung reduzieren, müssen sie deshalb die Effizienz ihrer IT-Ausstattung genauer betrachten und Tools einsetzen, die ihnen helfen, die Nachhaltigkeit ihrer Rechenzentren zu bewerten. Ein solches innovatives Tool ist Kepler, das Unternehmen hilft, den Energiebedarf von Software-Anwendungen zu überwachen und optimieren.

Kepler steht für Kubernetes-based Efficient Power Level Exporter und wurde von der Red Hat Emerging Technologies Group ins Leben gerufen. IBM Research und Intel haben bereits früh zu dem Open-Source-Projekt beigetragen, dessen Entwicklung von einer starken Community vorangetrieben wird.

Huamin Chen, Senior Principal Software Engineer bei Red Hat

Wie funktioniert Kepler?

Kepler erfasst verschiedene Metriken zum Stromverbrauch über eine Vielzahl von Plattformen hinweg. Daraus generiert es Berichte und prognostiziert auf Basis von Regressionsmodellen den zukünftigen Bedarf, sodass Unternehmen ihren Stromverbrauch insgesamt besser verstehen.

Kepler nutzt bewährte Cloud-native Methoden und Technologien wie den erweiterten Berkley Packet Filter (eBPF), die Performance Counter der CPU und Machine Learning, um den Stromverbrauch von Arbeitslasten zu berechnen und in Form von Metriken zu exportieren. Diese Metriken fließen dann in Berichte und Visualisierungen ein, helfen bei der Planung und Skalierung, sodass Administratoren umfangeiche Informationen über den CO2-Fußabdruck ihrer Cloud-nativen Workloads erhalten.

Der Kepler Model Server passt seine vortrainierten Modelle dabei kontinuierlich an und verbessert sie mit Hilfe der Stromverbrauchsdaten, die Agenten von Kepler auf den einzelnen Rechnerknoten zusammentragen. Auf diese Weise optimiert das Tool seine Berechnungen immer weiter, um bestmöglich auf die individuellen Systeme und Anforderungen des jeweiligen Unternehmens einzugehen. Mit dem durch Kepler gewonnenen Wissen können Entscheidungsträger dann besser einschätzen, wie sie den Energieverbrauch optimieren, steigende Nachhaltigkeitsanforderungen erfüllen und die Ziele ihres Unternehmens am besten erreichen.

Wie geht es mit Kepler weiter?

Künftige Innovationen im Bereich der Nachhaltigkeit entwickeln sich schneller durch die Zusammenarbeit der Open-Source-Community und proaktive Ansätze, Probleme zu lösen. Deshalb ist Red Hat dabei, Kepler in die Cloud Native Computing Foundation Sandbox einzubringen, sodass deren Mitglieder erkunden können, wie sie Kepler in eigene Anwendungsfälle integrieren.

Kepler vermag eine Vielzahl von Innovationen in der Open-Source-Community anzustoßen, die es Service-Providern erlauben, den Stromverbrauch ihrer Cloud-nativen Anwendungen besser zu überwachen, zu analysieren, zu optimieren und zu dokumentieren. Dazu zählen:

  • Berichte zum Stromverbrauch
    Die Metriken von Kepler sind Zeitreihen, die sich in Dashboards nutzen lassen, um den Stromverbrauch auf verschiedenen Ebenen darzustellen, etwa für Container, Pods, Namespaces oder einzelne Rechnerknoten innerhalb eines Clusters.
  • Informationen zum CO2-Fußabdruck
    Die Metriken zum Stromverbrauch lassen sich mit dem PUE-Wert (Power Usage Effectiveness) des Rechenzentrums und der Kohlenstoffintensität des genutzten Stroms verknüpfen, um den CO2-Fußabdruck von Arbeitslasten zu bestimmen.
  • Stromverbrauchsbasierte Planung und Skalierung
    Die Kepler-Metriken lassen sich in Kubernetes-Planer verwenden, um anstehende Arbeitslasten jeweils auf den Rechnerknoten auszuführen, die die beste Performance pro Watt bieten – sodass der Stromverbrauch des Clusters möglichst gering ausfällt. Ebenso lässt sich eine automatische Skalierung für Kubernetes aufsetzen, die mit Hilfe der Metriken zum Stromverbrauch ermittelt, welche Ressourcen gebraucht werden, um die Energieeffizienz zu verbessern.
  • Integration in CI/CD-Pipelines

Kepler kann auch in der Software-Entwicklung eingesetzt werden, um nachhaltigere Anwendungen zu schaffen. So lässt sich Kepler beispielsweise in Pipelines für Continuous Integration (CI) und Continuous Development (CD) integrieren, sodass Entwickler den Stromverbrauch ihrer Software-Stacks messen, analysieren und optimieren können.

Häufig haben Unternehmen bei ihren Nachhaltigkeitsbemühungen vor allem die Hardware im Blick und übersehen, dass sich auch auf Software-Seite viel Strom sparen lässt. Das gelingt jedoch nur, wenn sie in der Lage sind, den Energiebedarf ihrer Arbeitslasten zu ermitteln, damit sie Einspar- und Optimierungspotenziale überhaupt erkennen. Tools wie Kepler sind daher eine enorm wertvolle Hilfe und haben das Potenzial, die Umweltauswirkungen einer zunehmend Cloud-basierten Wirtschaft deutlich zu reduzieren.

* Huamin Chen ist Senior Principal Software Engineer bei Red Hat

Creative Commons Lizenz CC BY-ND 4.0

Sie dürfen:

Teilen — das Material in jedwedem Format oder Medium vervielfältigen und weiterverbreiten und zwar für beliebige Zwecke, sogar kommerziell.

Der Lizenzgeber kann diese Freiheiten nicht widerrufen solange Sie sich an die Lizenzbedingungen halten.


Unter folgenden Bedingungen:

Namensnennung — Sie müssen angemessene Urheber- und Rechteangaben machen, einen Link zur Lizenz beifügen und angeben, ob Änderungen vorgenommen wurden. Diese Angaben dürfen in jeder angemessenen Art und Weise gemacht werden, allerdings nicht so, dass der Eindruck entsteht, der Lizenzgeber unterstütze gerade Sie oder Ihre Nutzung besonders.

Keine Bearbeitungen — Wenn Sie das Material remixen, verändern oder darauf anderweitig direkt aufbauen, dürfen Sie die bearbeitete Fassung des Materials nicht verbreiten.