Kepler (Kubernetes Efficient Power Level Exporteur) verwendet EBPF, um energiebezogene Systemstatistiken zu untersuchen, und exportiert sie als Prometheus-Metriken.
Als CNCF -Sandbox -Projekt verwendet Kepler den CNCF -Verhaltenscode
Der Kepler -Exporteur enthält eine Vielzahl von Metriken über den Energieverbrauch von Kubernetes -Komponenten wie Pods und Knoten.
Flussdiagramm Bt
ClassDEF Kernel FILL:#e6f3ff, Stroke:#4a90e2, Farbe:#000
CLASSDEF -Kollektor FILL:#F0FFF0, Schlaganfall:#2ecc71, Farbe:#000
ClassDEF -Hardware FILL:#FFF0F5, Schlaganfall:#e74c3c, Farbe:#000
CLASSDEF -Schätzer FILL:#FFF5E6, Schlaganfall:#F39C12, Farbe:#000
ClassDEF -Mapping FILL:#f5f0ff, Schlaganfall:#9b59b6, Farbe:#000
CLASSDEF -Taschenrechner FILL:#F0F5ff, Schlaganfall:#3498db, Farbe:#000
ClassDEF Attribution FILL:#fff0f0, Schlaganfall:#e74c3c, Farbe:#000
ClassDEF Exportfüllung:#f5fff0, Schlaganfall:#27ae60, Farbe:#000
classDef kernellevel fill:#e6f3ff, stroke:#999, color:#000
classDEF UserSpace FILL:#F5F5F5, Stroke:#999, Farbe:#000
classDEF ResourceCollection FILL:#f0fff0, Schlaganfall:#999, Farbe:#000
classDef hardwaremetrics fill:#fff0f5, stroke:#999, color:#000
classDEF ätzungsigmetrics fill:#fff5e6, Schlaganfall:#999, Farbe:#000
classDef powerModel fill:#f0f0ff, stroke:#999, color:#000
Subgraph KL [Kernel -Ebene]
Richtung Bt
TP [Kernel TracePoint] ::: Kernel -> EBPF [Kepler EBPF -Programm] ::: Kernel
EBPF -> | Leistungszählerstatistiken | Om [Ausgabemap] ::: Kernel
Ende
Subgraph Up [UserSpace -Programm]
Richtung Bt
Subgraph RC [Ressourceninfo -Sammlung]
Richtung Bt
P1 [Prozessinfo Collector] ::: Collector -> | PID, Namen | Info [Prozess/Container/VM Info] ::: Collector
C1 [Container Info Collector] ::: Collector -> | Container/POD -ID, Namespace | Info
V1 [VM Info Collector] ::: Collector -> | VM ID | Info
Ende
Subgraph HM [Hardware -Metriken]
Richtung Bt
H1 [Rapl oder Hwmon] ::: Hardware -> | CPU/DRAM/PACATS -Strom | PWR [Hardware -Leistungslesungen] ::: Hardware
H2 [Nvidia/Intel GPU -API] ::: Hardware -> | GPU Power | PWR
H3 [Redfish oder ACPI Power Messer] ::: Hardware -> | Plattformleistung | PWR
Ende
Subgraph EM [Schätzungsmetriken]
Richtung Bt
E1 [ML Features: CPU -Zeit] ::: Schätzer -> | CPU/DRAM/PACATS -Strom | PWR
E2 [ML Funktionen: CPU -Zeit] ::: Schätzer -> | Plattformleistung | PWR
Ende
OM -> | MAP -Daten lesen | Karte [Aktivitätszuordnung] ::: Mapping
Info -> Karte
Karte -> | Karte über PID/CGroup -ID | Calc [Energy Calculator] ::: Taschenrechner
PWR -> Calc
Ende
Subgraph PM [Leistungsmodell]
Richtung Bt
Calc -> | Prozessaktivitätsverhältnis | Attr [Leerlauf und dynamische Energiezuordnung] ::: Attribution
Attr -> | pro Prozess/Container/VM | Exp [Energiekennzahlen] ::: Attribution
Ende
Exp -> Prom [Prometheus Export] ::: Export
Klasse KL Kernellevel
up up userspace
Ressourcencollection der Klasse RC
Klasse HM Hardwaremetrics
Klasse EM Eheratormetrics
Klasse PM PowerModel
Anweisungen zur Installation von Kepler finden Sie in den Kepler -Dokumenten.
Um die vom Kepler-Exporteur verfügbaren Stromverbrauchsmetriken zu visualisieren, importieren Sie das vorgenerierte Kepler-Dashboard in Grafana:
Möchten Sie zu Kepler beitragen? Folgen Sie dem beitragenden Leitfaden, um loszulegen!
Eine vollständige Liste von Gesprächen und Demos über Kepler finden Sie hier.
Bitte nehmen Sie an den zweiwöchentlichen Gemeinschaftstreffen teil. Der Meeting -Kalender und die Agenda finden Sie hier
Mit Ausnahme des EBPF -Code wird alles unter den Bestimmungen der Apache -Lizenz (Version 2.0) verteilt.
Alle EBPF -Code werden unter beiden verteilt:
Der genaue Lizenztext variiert je nach Datei. Weitere Informationen finden Sie in der Spdx-Lizenz-Identifikator-Header in jeder Datei.
Dateien, die von den Autoren der Kepler-Verwendung stammen (nur GPL-2.0 oder BSD-2-Klausel). Dateien, die aus dem Linux Kernel IE vmlinux generiert wurden.
Sofern Sie nicht ausdrücklich anders angeben, ist ein Beitrag, der absichtlich für die Aufnahme in dieses Projekt von Ihnen eingereicht wird, wie in der GPL-2-Lizenz definiert, ohne zusätzliche Bedingungen doppelt lizenziert wie oben.