ランキングに戻る

sustainable-computing-io/kepler

Gosustainable-computing.io

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.

kubernetessustainabilityprometheus-exporterenergy-consumptionenergy-monitorenergy-efficiencyprometheuscloud-native
スター成長
スター
1.5k
フォーク
246
週間成長
Issue
14
5001k1.5k
2022年2月2023年7月2025年1月2026年7月
成果物Go Modulesgo get github.com/sustainable-computing-io/kepler
README

Kepler

GitHub license codecov CI Status Releases zread OpenSSF Best Practices OpenSSF Scorecard

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.

🚀 Major Rewrite: Kepler (0.10.0 and above)

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 of accurate energy consumption monitoring for cloud-native workloads.

📢 Read the full announcement: CNCF Slack Announcement

✨ What's New in the Rewrite

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 /proc and /sys
  • No more CAP_SYSADMIN or CAP_BPF capabilities 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:

  • Supports RAPL/powercap framework, with experimental support for HWMon, GPU (NVIDIA), and platform power (Redfish BMC)

📚 Migration & Legacy Support

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 the archived 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+.

🚀 Getting Started

📖 For comprehensive installation instructions, troubleshooting, and advanced deployment options, see our Installation Guide

⚡ Quick Start (Kubernetes with Helm)

# 1. Install Kepler using Helm from OCI registry
helm install kepler oci://quay.io/sustainable_computing_io/charts/kepler \
  --namespace kepler \
  --create-namespace

# Wait for Kepler pods to be running
kubectl wait --for=condition=ready --timeout=120s pod -n kepler --all

# 2. Verify installation
kubectl get pods -n kepler

# 3. Access metrics (port-forward)
kubectl port-forward -n kepler svc/kepler 28282:28282

# Test metrics endpoint
curl http://localhost:28282/metrics | grep kepler_node_cpu_watts

📋 For Production Deployments: Consider using the Kepler Operator for advanced lifecycle management and operational capabilities.

Next Steps:

To ensure Kepler is working correctly and to visualize the metrics:

Need Help?

🔧 Other Installation Methods

Choose your preferred method:

# 💻 Local Development
make build && sudo ./bin/kepler

# ✨ Docker Compose (with Prometheus & Grafana)
cd compose/dev && docker compose up -d

# 🐳 Kubernetes with Kustomize
kubectl kustomize manifests/k8s | \
  sed -e "s|<KEPLER_IMAGE>|quay.io/sustainable_computing_io/kepler:latest|g" | \
  kubectl apply --server-side --force-conflicts -f -

📖 Documentation

User Documentation

Developer Documentation

For more detailed documentation, please visit the official Kepler documentation.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For more detailed information about contributing to this project, please refer to our CONTRIBUTING.md file.

Gen AI policy

Our project adheres to the Linux Foundation's Generative AI Policy, which can be viewed at https://www.linuxfoundation.org/legal/generative-ai.

⭐ Star History

Star History Chart

📝 License

This project is licensed under the Apache License 2.0 - see the LICENSES for details.

関連リポジトリ
kubernetes/kubernetes

Production-Grade Container Scheduling and Management

GoGo ModulesApache License 2.0kubernetesgo
kubernetes.io
123.9k43.8k
bregman-arie/devops-exercises

Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

PythonPyPIOtherdevopsaws
83.3k19.9k
netdata/netdata

The fastest path to AI-powered full stack observability, even for lean teams.

GoGo ModulesGNU General Public License v3.0monitoringdocker
netdata.cloud
79.8k6.5k
traefik/traefik

The Cloud Native Application Proxy

GoGo ModulesMIT Licensemicroservicedocker
traefik.io
64.1k6.1k
minio/minio

MinIO is a high-performance, S3 compatible object store, open sourced under GNU AGPLv3 license.

GoGo ModulesGNU Affero General Public License v3.0gostorage
61.4k7.7k
etcd-io/etcd

Distributed reliable key-value store for the most critical data of a distributed system

GoGo ModulesApache License 2.0etcdraft
etcd.io
52k10.4k
GitHubDaily/GitHubDaily

坚持分享 GitHub 上高质量、有趣实用的开源技术教程、开发者工具、编程网站、技术资讯。A list cool, interesting projects of GitHub.

githubopen-source
githubdaily.com
47.2k4.7k
LeCoupa/awesome-cheatsheets

👩‍💻👨‍💻 Awesome cheatsheets for popular programming languages, frameworks and development tools. They include everything you should know in one single file.

JavaScriptnpmMIT Licensecheatsheetsjavascript
lecoupa.github.io/awesome-cheatsheets/
46.2k6.7k
Kong/kong

🦍 The API and AI Gateway

LuaApache License 2.0api-gatewaymicroservices
konghq.com/install/
43.8k5.2k
istio/istio

Connect, secure, control, and observe services.

GoGo ModulesApache License 2.0microservicesservice-mesh
istio.io
38.3k8.3k
ToolJet/ToolJet

ToolJet is the open-source foundation of ToolJet AI - the enterprise app generation platform for building internal tools, dashboard, business applications, workflows and AI agents 🚀

JavaScriptnpmGNU Affero General Public License v3.0javascriptinternal-tools
tooljet.com
38.2k5.2k
portainer/portainer

Making Docker and Kubernetes management easy.

TypeScriptnpmzlib Licensedockerdocker-swarm
portainer.io
38k2.9k