utkuozdemir/nvidia_gpu_exporter
Nvidia GPU exporter for prometheus using nvidia-smi binary
解決する課題
複雑なデータセンター用ツールや NVIDIA GPU Operator スタックを必要とせずに、異なるオペレーティングシステムやハードウェア構成にわたって NVIDIA GPU を監視する方法を提供します。特に、ディープ GPU カウンターが利用できないことが多いコンシューマ向け GPU (GeForce/RTX)、小規模な Kubernetes クラスター、エッジボックス、および仮想化環境において非常に有用です。
仕組み
このエクスポーターは、nvidia-smi バイナリの出力を解析することでメトリクスを収集します。また、XID エラーカウンターや MIG インスタンスごとのメトリクスなどのより高度なデータについては、NVIDIA Management Library (NVML) から直接メトリクスを読み取ることもオプションで可能です。収集されたデータは Prometheus と互換性のある形式でエクスポートされ、提供されている Grafana ダッシュボードを使用して可視化できます。
対象ユーザー
- NVIDIA GPU の混在したフリートを管理するシステム管理者および開発者。
- ダッシュボードで GPU ステータスを追跡したい Homelab 愛好家やゲーマー。
- Windows、Linux、または MacOS で GPU を実行しており、軽量なシングルバイナリのエクスポーターを必要とするユーザー。
- 小規模な Kubernetes クラスターまたはエッジデバイスのオペレーター。
ハイライト
- クロスプラットフォーム対応:
nvidia-smiが存在すれば、Windows、Linux、MacOS で動作します。 - リモート実行: リモートマシン上で
nvidia-smiを実行するように構成できます。 - 柔軟な収集: スレイピングのオーバーヘッドを避けるため、タイマーによるバックグラウンド収集をサポートしています。
- 自動検出: 将来の互換性のために、
nvidia-smiによって公開されるメトリクスフィールドを自動的に検出します。 - プロセスレベルの監視: どの特定のプロセスが GPU メモリを消費しているかを追跡できます。
- 組み込みの可視化: 個別の GPU 詳細およびマルチ GPU の概要の両方に対応する公式の Grafana ダッシュボードが含まれています。