バージョンアップ情報
Kepler情報
Keplerとは
Kepler(Kubernetes-based Efficient Power Level Exporter)は、Kubernetes環境における効率的な電力レベルのエクスポートを目的としたオープンソースのツールです。持続可能なコンピューティングに焦点を当てており、クラウドネイティブなアプリケーションが消費する電力を正確に測定し、分析することで、リソースの無駄遣いを減少させ、持続可能なIT運用を支援します。
Keplerの実体はPrometheusエクスポーターです。
Keplerでは、
- eBPF: Linuxカーネルに組み込まれた強力な技術で、ユーザースペースのプログラムをカーネル内で効率的に実行できる機能
- kprobe: Linuxカーネルの特定の関数をフックして、その実行時にデータを収集したり、処理をカスタマイズしたりできる機能
を使用してCPUパフォーマンス・カウンターとLinuxカーネル・トレースポイントをプローブします。 sysfsからのこれらのデータと統計情報をMLモデルにフィードして、Podによるエネルギー消費を推定することができます。
主な特徴
電力モデル |
Kubernetesクラスター内のコンテナとノードの電力消費をリアルタイムで監視し、データを提供します。使用するシナリオによって、下記のような複数のモデリングアプロ―チを使用して電力値を算出します。
|
---|---|
eBPF/kprobeを利用したモニタリング |
eBPFおよびkprobeの機能を利用して、ハードウェアCPUイベントを監視したり、下記のようなプロセス(タスク)の統計値を取得します。
これにより、従来の方法に比べて、高精度のデータの収集が可能です。 |
Prometheus/ |
PrometheusやGrafanaと連携し、電力データをメトリクスとして管理可能です。集めた電力データは、グラフやダッシュボードを通じて可視化され、分かりやすい形で分析することができます。 |
Kepler モデルサーバーとの連携 |
Keplerモデルサーバーは、Keplerのエネルギー関連メトリックに基づいて、電力モデルのトレーニング、エクスポート、提供、および利用のための補足ツールです。これにより、ある環境からメトリックを収集し、パイプライン フレームワークを使用して電力モデルをトレーニングし、電力メーター (エネルギー測定) が利用できない別の環境に提供するための Kepler のエコシステムを提供します。 |
メリット・デメリット
メリット・必要性
- 持続可能な運用: 電力消費を正確に把握することで、エネルギー効率の高い運用が可能になり、環境負荷を軽減します。
- コスト削減: 電力消費の最適化を実現することで、運用コストの削減が期待できます。
- レポート機能: 経営層やチームに対して、電力消費に関する定期レポートを作成でき、データに基づく意思決定が可能です。
デメリット・注意点・課題
- 初期導入の手間: Kubernetes環境への導入には、一定の技術的知識が必要となり、初期設定に手間がかかる場合があります。
- リソースの負荷: 電力データ収集のための追加リソースが必要となるため、大規模な環境ではパフォーマンスに影響を与えることがあります。
- 限られたサポート: オープンソースプロジェクトであるため、公式なサポートは限定的で、コミュニティの支援に依存することになります。
類似プロダクト
- Prometheus: プロメテウス。GO言語で書かれたオープンソースのモニタリングツールです。
- Grafana: グラファナ。Grafana Labs社が開発したデータ可視化ツールです。
動作環境
Keplerは、Kubernetes(k8s)を前提としています。通常、動作には、k8sクラスターとPrometheusがインストールされていることが必要です。また、下記のような要件があります。
- Kernel: 4.18以上
- kubectl: v1.21.0以上
インストール方法としては、
- マニフェストファイル
- Helm Chart
- Keplerオペレーター
- RPM
などがあります。
Keplerのライセンス
KeplerのeBPF のコードを除く部分に関しては、Apache2.0ライセンスです。 Apache License(アパッチ・ライセンス)のコードが使用されていることの明記を条件に、ソースコードの自由な改変と公開が認められています。eBPFのコードは、GNU General Public License, Version 2またはBSD 2条項ライセンスの条項のいずれかに従って配布されます。
製品ダウンロード
参考情報
オープンソース年間サポートサービス
OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。
関連OSS
-
サポート対象
OpenTelemetry
OpenTelemetryは、分散アプリケーションのトレーシングとメトリクス収集のための統一的な規格化とAPIを提供するオープンソースプロジェクトです。
-
サポート対象
Prometheus
プロメテウス。GO言語で書かれたオープンソースのモニタリングツールです。
-
サポート対象
Kubernetes
クーバネティス。Dockerをはじめとするコンテナ化されたアプリケーションの展開、スケーリング、管理を行うオープンソースのプラットフォームです。
-
サポート対象
Grafana
グラファナ。Grafana Labs社が開発したデータ可視化ツールです。