Prometheus GPU 监控

1,Prometheus GPU 监控

  • 安装DCGM
  • datacenter-gpu-manager_1.7.2_amd64.deb
# dcgmi --version

dcgmi  version: 1.7.2

2,安装gpu-monitoring-tools

# git clone https://github.com/NVIDIA/gpu-monitoring-tools.git
# cd gpu-monitoring-tools/
# make binary
go build -o dcgm-exporter github.com/NVIDIA/gpu-monitoring-tools/pkg
# make install
go build -o dcgm-exporter github.com/NVIDIA/gpu-monitoring-tools/pkg
install -m 557 dcgm-exporter /usr/bin/dcgm-exporter
install -m 557 -D ./etc/dcgm-exporter/default-counters.csv /etc/dcgm-exporter/default-counters.csv
install -m 557 -D ./etc/dcgm-exporter/dcp-metrics-included.csv /etc/dcgm-exporter/dcp-metrics-included.csv
  • 运行dcgm-exporter
# which dcgm-exporter
/usr/bin/dcgm-exporter
# dcgm-exporter
INFO[0000] Starting dcgm-exporter
INFO[0000] DCGM successfully initialized!
INFO[0000] Pipeline starting
INFO[0000] Starting webserver
  • 测试,可以看到监控数据
# curl 192.168.1.2:9400/metrics

2.1,设置dcgm-exporter开机启动

  • vim /lib/systemd/system/dcgm-exporter.service 新建服务
[Unit]
Description=dcgm-exporter service

[Service]
User=root
ExecStart=/usr/bin/dcgm-exporter

TimeoutStopSec=10
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
# systemctl daemon-reload
# systemctl enable dcgm-exporter.service
# systemctl start dcgm-exporter.service
# systemctl status dcgm-exporter.service

3,Prometheus修改配置

  • 添加dcgm-exporter
    # dcgm-exporter
  - job_name: 'gpu'
    static_configs:
    - targets: ['192.168.1.2:9400']
# cat prometheus.yml
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
    - targets: ['localhost:9090']


    # node_exporter
  - job_name: 'node'
    static_configs:
    - targets: ['127.0.0.1:9100','192.168.1.2:9100']

    # dcgm-exporter
  - job_name: 'gpu'
    static_configs:
    - targets: ['192.168.1.2:9400']
  • 重启prometheus
systemctl restart  prometheus.service

在这里插入图片描述

4,grafana

在这里插入图片描述

5,使用监控面板9957可以切换节点

在这里插入图片描述
在这里插入图片描述

6,Grafana设置

  • 监控功率,instance为ip地址
DCGM_FI_DEV_POWER_USAGE{instance="192.168.1.101:9400"}
  • 显卡使用率
DCGM_FI_DEV_GPU_UTIL{instance="192.168.1.101:9400"}

7,使用12027

在这里插入图片描述

   # dcgm-exporter
  - job_name: 'gpu-metrics'
    static_configs:
    - targets: ['127.0.0.1:9400','192.168.1.101:9400','192.168.1.102:9400']

在这里插入图片描述

  • 手动设置监控
    在这里插入图片描述
  • 查看显卡指标
curl http://127.0.0.1:9400/metrics
  • 使用功率
DCGM_FI_DEV_POWER_USAGE{instance="127.0.0.1:9400"}
  • 内存使用
DCGM_FI_DEV_FB_USED{instance="127.0.0.1:9400"}
  • 总内存
DCGM_FI_DEV_FB_USED{instance="127.0.0.1:9400"}+DCGM_FI_DEV_FB_FREE{instance="127.0.0.1:9400"}
  • GPU使用率
DCGM_FI_DEV_GPU_UTIL{instance="127.0.0.1:9400"}
  • GPU内存使用率
DCGM_FI_DEV_MEM_COPY_UTIL{instance="192.168.0.114:9400"}

8,使用GPU-Nodes-Metrics-Nvidia 12639

参考:

  1. Prometheus + Grafana 监控 NVIDIA GPU
  2. DCGM 1.7.2 Downloads (December 2019)
  3. GPU Nodes v2
  4. NVIDIA/gpu-monitoring-tools
  5. NVIDIA DCGM Exporter Dashboard
  6. GPU Nodesby bkeyzers
  7. Integrating with DCGM
  8. 安装dcgm
  9. 基于DCGM和Prometheus的GPU监控方案 dcgm r采集指标项以及含义
### 使用 Prometheus 监控 GPU 系统指标配置教程 #### 配置 dcgm-exporterPrometheus 为了实现 NVIDIA GPU监控数据导出至 Prometheus,需部署 `dcgm-exporter` 工具[^1]。此工具遵循 Prometheus Exporter 规范,能够收集并暴露 GPU 性能指标。 #### 编写 Prometheus 配置文件 创建或编辑 Prometheus 配置文件 (`prometheus.yml`) 来定义抓取目标和服务发现机制: ```yaml global: scrape_interval: 60s evaluation_interval: 60s scrape_configs: - job_name: 'prom_gpu' metrics_path: '/metrics' # 默认路径为 /metrics, 如果不同则指定具体路径 static_configs: - targets: ['<GPU服务器IP>:9400'] labels: instance: gpu ``` 上述 YAML 文件指定了一个名为 `prom_gpu` 的作业名称,并设定了每分钟一次的数据采集频率以及评估间隔时间。同时设置了静态配置中的目标 IP 地址和端口号作为被监测对象[^2]。 #### 启动 Prometheus 容器实例 使用 Docker 命令启动带有自定义配置文件映射的 Prometheus 实例: ```bash sudo docker run --name prometheus \ -d \ -p 9090:9090 \ -v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \ quay.io/prometheus/prometheus ``` 这里假设 `/path/to/prometheus.yml` 是主机上保存有之前修改过的 Prometheus 配置文件的位置;容器内部会将其挂载到默认位置以便读取设置参数。 #### 访问 Web UI 查看结果 打开浏览器输入 URL 如下所示即可查看已成功接入的 GPU 设备及其各项运行状态统计图表: ``` http://<Prometheus服务所在机器IP>:9090/ ``` 此外,在 GitHub 上也有开源项目提供了详细的说明文档来帮助用户更好地理解和操作整个过程[^4]。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值