Attribute energy use to Kubernetes workloads

Kepler is a Prometheus exporter that reads hardware power sensors and attributes energy to containers, pods, VMs, and processes.

# TYPE kepler_pod_cpu_watts gauge
kepler_pod_cpu_watts{pod_name="checkout",zone="package"} 4.82
kepler_pod_cpu_watts{pod_name="search",zone="package"} 2.17
kepler_pod_cpu_watts{pod_name="postgres-0",zone="package"} 1.06

Power per workload

Energy and power for nodes, containers, pods, VMs, and processes, as Prometheus metrics.

Hardware sensors

Reads Intel RAPL, with experimental support for hwmon, NVIDIA GPUs, and Redfish platform power.

Few privileges

Needs read-only access to /proc and /sys. No CAP_SYS_ADMIN or CAP_BPF.

Quick start

Install Kepler with Helm, then read its metrics.

helm install kepler oci://quay.io/sustainable_computing_io/charts/kepler \
  --namespace kepler --create-namespace

kubectl port-forward -n kepler svc/kepler 28282:28282
curl -s localhost:28282/metrics | grep kepler_pod_cpu_watts

Next: installation options, configuration, and metrics reference.

Used by

All adopters ยท Add your organization

Let's make every watt matter.