AI服务器GPU监控配置:用DCGM把显卡状态盯住

AI服务器GPU监控配置,最直接的答案是:先用 nvidia-smi 确认驱动和卡状态正常,再安装 NVIDIA DCGM 和 dcgm-exporter,把 GPU 指标暴露给 Prometheus,最后在 Grafana 里看显存、温度、利用率和 ECC 错误。
单卡临时查看用 nvidia-smi 就够,多卡长期运行建议走 DCGM,因为能持续采集并保留历史数据。

先确认驱动和卡都能被系统识别

监控工具依赖 NVIDIA 驱动,驱动不正常时后面步骤都会失败。
登录服务器后先执行:

nvidia-smi

预期能看到 GPU 型号、显存总量、驱动版本和当前进程。
如果提示 NVIDIA-SMI has failed,先检查驱动是否加载:

lsmod | grep nvidia

没有输出说明驱动未加载,需要先处理驱动安装或内核模块问题,不要继续装监控组件。
另外确认系统有 systemd,因为 dcgm-exporter 通常以服务方式运行。

安装DCGM和dcgm-exporter

DCGM 是 NVIDIA 的数据中心 GPU 管理工具,dcgm-exporter 负责把指标转成 Prometheus 格式。
以 Ubuntu 为例,先添加 NVIDIA 仓库再安装:

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
sudo apt install -y datacenter-gpu-manager

安装后启动 DCGM 服务并设置开机自启:

sudo systemctl enable --now nvidia-dcgm
sudo systemctl status nvidia-dcgm

dcgm-exporter 可以从 GitHub 发布页下载二进制,也可以直接用 Docker 运行。
二进制方式示例:

wget https://github.com/NVIDIA/dcgm-exporter/releases/latest/download/dcgm-exporter
chmod +x dcgm-exporter
sudo ./dcgm-exporter --address :9400

启动后访问 http://服务器IP:9400/metrics,能看到以 DCGM_FI_ 开头的指标说明采集成功。

接入Prometheus并配置采集任务

在 Prometheus 的 prometheus.yml 里增加 job,把目标指向运行 dcgm-exporter 的服务器:

scrape_configs:
  - job_name: 'gpu'
    static_configs:
      - targets: ['192.168.1.10:9400']

改完执行 promtool check config prometheus.yml 校验,再重载 Prometheus:

curl -X POST http://localhost:9090/-/reload

到 Prometheus 界面 Status -> Targets 里看到 gpu 状态为 UP,
说明指标已经进入时序库。dcgm-exporter 默认暴露的指标较多,
如果只想保留常用项,
可以用 --collectors 参数指定,
避免指标量过大。

在Grafana里看关键指标

Grafana 添加 Prometheus 数据源后,导入 NVIDIA 提供的 DCGM 仪表盘模板,或者自己建面板。
日常最值得盯的指标有:

  • DCGM_FI_DEV_GPU_UTIL:GPU 利用率,长期接近 100% 说明卡被占满。
  • DCGM_FI_DEV_MEM_COPY_UTIL:显存带宽利用率,偏高时可能是数据搬运瓶颈。
  • DCGM_FI_DEV_FB_USED:已用显存,接近总量时新任务容易 OOM。
  • DCGM_FI_DEV_GPU_TEMP:GPU 温度,持续偏高要检查散热和风道。
  • DCGM_FI_DEV_ECC_SBE_VOL_TOTAL:ECC 单比特错误计数,增长时留意显存健康。

如果只想快速查看,也可以在命令行用 dcgmi diag -r 1 做基础诊断,但这是瞬时检查,不能替代持续监控。

容易踩的几个坑

直接改防火墙前先确认端口用途。 9400 是 dcgm-exporter 默认端口,只应允许 Prometheus 所在主机访问,不要直接对公网开放。

DCGM 版本和驱动不匹配。 安装前确认驱动版本满足 DCGM 要求,版本跨度过大时可能出现服务起不来或指标缺失,优先使用 NVIDIA 官方仓库的配套版本。

容器环境里看不到 GPU。 如果用 Docker 跑 dcgm-exporter,
需要加 --gpus all 并挂载 NVIDIA 驱动相关目录,
否则容器内 nvidia-smi 会失败。

只装 exporter 不装 DCGM。 dcgm-exporter 依赖 DCGM 服务,先确认 nvidia-dcgm 在运行,再排查 exporter 本身。

指标采集到了但没人看。 建议在 Grafana 里对显存使用率和温度设告警阈值,否则监控只停留在展示层面。

验证配置是否真正生效

完成配置后按顺序检查三件事:systemctl status nvidia-dcgm 为 active;curl http://localhost:9400/metrics 能返回 GPU 指标;
Prometheus 的 gpu target 为 UP。
三项都通过,才算 GPU 监控配置落地。
后续如果新增 GPU 或更换驱动,重新检查 nvidia-smi 和 exporter 指标即可。

如果监控对象是多台 AI 服务器,
把每台机器的 dcgm-exporter 地址都加入 Prometheus 的 targets 列表,
并用统一的 Grafana 仪表盘按实例区分,
这样比逐台登录查看更省时间。

分享到:
上一篇
AI服务器GPU共享配置:用MIG把一块物理卡切给多任务使用
下一篇
AI服务器DCGM配置:从安装到监控GPU状态的完整步骤
1
系统公告

关于香港云优质服务器IP地址更换的通知

尊敬的客户: 因原IP运营商大幅涨价,为避免成本转嫁至用户,我司决定更换IP服务商。本次更换后,您的续费价格将保持不变,且新IP网络质量与服务标准不受影响。新IP已分配至后台,即刻生效(更换的新IP都是香港原生IPv4)。 涉及 IP 段: 45.192.x.x 旧 IP 停用时间: 2026 年 12 月 1 日
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意