- Notifications
You must be signed in to change notification settings - Fork217
Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that measures energy consumption metrics at the container, pod, and node levels in Kubernetes clusters.
sustainable-computing-io/kepler
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that measures energy consumption metrics at the container, pod, and node level in Kubernetes clusters.
Important Notice: Starting with version 0.10.0, Kepler has undergone a complete ground-up rewrite.This represents a significant architectural improvement while maintaining the core mission ofaccurate energy consumption monitoring for cloud-native workloads.
📢Read the full announcement:CNCF Slack Announcement
Enhanced Performance & Accuracy:
- Dynamic detection of Nodes' RAPL zones - no more hardcoded RAPL zones
- More accurate power attribution based on active CPU usage (no more idle/dynamic for workloads)
- Improved VM, Container, and Pod detection with more meaningful label values
- Significantly reduced resource usage compared to old Kepler
Reduced Security Requirements:
- Requires only readonly access to host
/procand/sys - No more
CAP_SYSADMINorCAP_BPFcapabilities required - Much fewer privileges than previous versions
Modern Architecture:
- Service-oriented design with clean separation of concerns
- Thread-safe operations throughout the codebase
- Graceful shutdown handling with proper resource cleanup
- Comprehensive error handling with structured logging
Current Limitations:
- Only supports Baremetal (platform power support in roadmap)
- Supports only RAPL/powercap framework
- No GPU power support yet
For New Users: Use the current version (0.10.0+) for the best experience and latest features.
For Existing Users: If you need to continue using the old version:
- Pin your deployment to version
0.9.0(final legacy release) - Access the old codebase in thearchived branch
- Important: The legacy version (0.9.x and earlier) is now frozen - no bug fixes or feature requests will be accepted for the old version
Migration Note: Please review the new configuration format and deployment methods below when upgrading to 0.10.0+.
📖 For comprehensive installation instructions, troubleshooting, and advanced deployment options, see ourInstallation Guide
Choose your preferred method:
# 💻 Local Developmentmake build&& sudo ./bin/kepler# ✨ Docker Compose (with Prometheus & Grafana)cd compose/dev&& docker-compose up -d# 🐳 Kuberneteshelm install kepler manifests/helm/kepler/ --namespace kepler --create-namespace
- Installation Guide - Detailed installation instructions for all deployment methods
- Configuration Guide - Configuration options and examples
- Metrics Documentation - Available metrics and their descriptions
- Architecture Documentation - Complete architectural documentation including design principles, system components, data flow, concurrency model, and deployment patterns
- Power Attribution Guide - How Kepler measures and attributes power consumption
- Developer Documentation - Contributing guidelines and development workflow
For more detailed documentation, please visit theofficial Kepler documentation.
Contributions are welcome! Please feel free to submit a Pull Request. For more detailed information about contributing to this project, please refer to ourCONTRIBUTING.md file.
Our project adheres to the Linux Foundation's Generative AI Policy, which can be viewed athttps://www.linuxfoundation.org/legal/generative-ai.
This project is licensed under the Apache License 2.0 - see theLICENSES for details.
About
Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that measures energy consumption metrics at the container, pod, and node levels in Kubernetes clusters.
Topics
Resources
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.