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 대시보드가 포함되어 있습니다.