首页/AI/大模型部署与运维速查/DCGM Exporter 与 GPU 指标入监控栈
推理环境与 GPU50 条

DCGM Exporter 与 GPU 指标入监控栈

DCGM Exporter 把 GPU 指标转成 Prometheus 格式,默认端口 9400,配合 Prometheus 与 Grafana 形成 GPU 监控闭环;K8s 上常用 Helm 部署。

DCGM Exporter 与 GPU 指标入监控

DCGM Exporter 把 GPU 指标转换成 Prometheus 格式,默认监听 9400 端口,配合 Prometheus 与 Grafana 就能形成 GPU 监控闭环。它支持容器化部署,在 Kubernetes 上常用 Helm 安装,是 GPU 指标进入统一监控栈的标准做法。

基本信息

默认端口9400
输出指标端点上的 Prometheus 文本格式数据
前置依赖驱动与 GPU 管理能力可用,容器需具备访问设备的权限
部署形态容器运行或 Kubernetes 上的 Helm 部署
版本敏感项镜像 tag、指标名与标签随版本演进

典型使用场景

  • 把 GPU 指标接入现有监控栈,避免逐台登录机器查看
  • 多机统一看板:所有节点的 GPU 曲线放在同一视图里对比
  • 告警数据源:利用率、温度、功耗与显存异常都能据此触发
  • 压测对照:把采集数据与压测结论放在一起看
  • 容量与健康观测:长期趋势比单次快照更能反映问题

容器运行与抓取

容器运行与抓取
# 容器运行(需可访问 GPU 设备)
docker run -d --gpus all -p 9400:9400 nvcr.io/nvidia/k8s/dcgm-exporter:<版本>

# 先看实际输出,再写监控表达式
curl http://127.0.0.1:9400/metrics | head

Prometheus 抓取片段

Prometheus 抓取片段
scrape_configs:
  - job_name: gpu
    static_configs:
      - targets: ['127.0.0.1:9400']

采集到的指标类别

类别内容用途
利用率与显存整卡占用情况容量判断与排队分析
温度与功耗散热与功耗墙状态降频排查
时钟频率当前工作频率性能退化定位
错误计数显存错误等硬件信号硬件健康巡检
镜像 tag 与字段名随版本演进:接入前先核对当前文档与指标端点的实际输出,避免照抄旧配置。
只采 GPU 指标不看服务指标会漏判:GPU 曲线平稳而服务超时的场景并不少见,两类指标要在同一块看板上对照。
多机部署时按节点维度打标签:同一组织有多台机器时,只有带上节点标识才能区分是哪台机器在退化,否则聚合曲线会把个别异常节点平均掉。
上量前先做一次抓取演练:确认采集端能连通、指标数量在可接受范围、看板能出图,再把它接入告警,否则故障当天才发现链路不通就来不及了。

易错点

  • 只采 GPU 指标不看服务指标:GPU 曲线平稳但服务超时的情况要结合引擎指标一起看
  • 照抄旧版指标名或标签:升级后查询为空,告警静默失效
  • 容器没拿到设备访问权限:端点起来了但指标为空,容易误判成硬件问题
  • 只看瞬时值不看趋势:硬件退化通常是缓慢过程,趋势曲线才能提前发现

数据来源与参考

  • NVIDIA DCGM Exporter 文档(github.com/NVIDIA/dcgm-exporter)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌