nvidia_gpu_exporter:5 步跑通 GPU 监控,从装好到 Prometheus 抓数

📅 2026/8/23 15:37:22
nvidia_gpu_exporter:5 步跑通 GPU 监控,从装好到 Prometheus 抓数
nvidia_gpu_exporter5 步跑通 GPU 监控从装好到 Prometheus 抓数【免费下载链接】nvidia_gpu_exporterNvidia GPU exporter for prometheus using nvidia-smi binary OR using NVML项目地址: https://gitcode.com/gh_mirrors/nv/nvidia_gpu_exporternvidia_gpu_exporter 是一个 nvidia-smi exporter它调用nvidia-smi命令把 GPU 指标解析成 Prometheus 格式暴露出来。它解决的痛点很具体——消费级显卡RTX/GeForce缺少统一的数据源、DCGM 那套堆太重、Windows 机器常被挡在监控体系外。只要机器上有nvidia-smiLinux、Windows 都能跑家庭多机、游戏主机、小型 K8s 集群都适用。两条命令先跑通先别研究配置最快路径是装好 → 本地抓一把 metrics看到nvidia_smi_utilization_gpu_ratio之类的系列就算通了。以 Windows 为例winget install utkuozdemir.nvidia_gpu_exporter curl http://localhost:9835/metrics | head第二条命令能刷出nvidia_smi_*指标说明 exporter 已经在工作。Linux 上没有对应 winget 渠道时用 deb/rpm 包或二进制都行下文按场景给结论。按场景选部署方式方式适用场景上手难度关键差异Windows 服务游戏主机、Windows 开发机低原生支持 Windows 服务控制协议install命令一键注册日志进事件查看器Linux 包 / 二进制服务器、边缘盒子、homelab低中deb/rpm 自带 systemd 单元二进制可放到任意 PATHDocker / K8s已容器化的环境、GPU 节点中需要挂载 nvidia-smi 或--gpus all官方镜像是最小镜像没有 ssh远程玩法做不了结论个人机器走 Windows 服务或 deb 包集群节点走 Docker想玩 SSH 远程的就用二进制。新手最常用的 6 个参数参数默认值什么时候用--web.listen-address:9835端口被占、或想只绑定内网 IP 时改--web.telemetry-path/metrics你的 Prometheus 统一了采集路径时--nvidia-smi-commandnvidia-sminvidia-smi 不在 PATH、需要加sudo前缀、或走 SSH 远程--query-field-namesAUTO想砍掉一批字段降低开销时默认自动探测多数情况别动--query-field-names-exclude空个别字段读得慢或报警告支持通配符点名排除--collect.interval0每次抓取都跑多台 Prometheus 并行抓、或抓取频率高时解耦 nvidia-smi 执行与抓取排查问题再加一个--log.leveldebug默认是info。打通 Prometheus 抓取闭环能抓到的前提是三件事端口通、服务常驻、配置对上。端口exporter 默认监听 9835。Prometheus 不在同一台机器时记得放行防火墙如sudo ufw allow 9835/tcp同机抓取走回环防火墙天然放行。服务化deb/rpm 装好后 systemd 已就绪二进制安装则把仓库里的 nvidia_gpu_exporter.service 拷进 /etc/systemd/system/然后sudo systemctl daemon-reload sudo systemctl enable --now nvidia_gpu_exporterPrometheus 侧加一个 job指向目标节点的 9835 即可scrape_configs: - job_name: nvidia-gpu static_configs: - targets: [gpu-node:9835]之后 Prometheus Targets 页面该实例变绿数据就闭环了。SSH 监控远程 GPUexporter 本身不需要和 GPU 同机——把nvidia-smi的运行命令整个换掉就行nvidia_gpu_exporter --nvidia-smi-command ssh -o StrictHostKeyCheckingno 用户名远程主机 nvidia-smi典型场景家里树莓派跑一套 Prometheus exporterSSH 摸到客厅那台 PC 的 GPU或者在一台跳板机上集中监控多台 GPU 节点每台只配一条远程命令。注意两点SSH 方案走二进制安装官方 Docker 镜像里没有 ssh 客户端远程侧的 GPU 机器只需能执行 nvidia-smi不用装任何东西。导入 Grafana GPU 仪表盘仓库 docs/grafana 目录下有现成的仪表盘 JSONdashboard.json 单卡细节视图、dashboard-overview.json 多卡总览Grafana 里 Dashboards → Import 上传即可也支持按官方 ID 14574 / 25547 在线导入。导入后重点看这几条系列指标一句话说明nvidia_smi_utilization_gpu_ratio算力利用率判断 GPU 到底忙不忙先看它nvidia_smi_temperature_gpu核心温度长期贴上限要留意散热nvidia_smi_memory_used_bytes显存已用OOM 前兆的直观来源nvidia_smi_power_draw_watts实时功耗跑批任务时的能效视角nvidia_smi_fan_speed_ratio风扇占空比和温度配合看散热曲线nvidia_smi_clocks_current_graphics_clock_hz当前图形时钟判断是否被降频排障速查现象原因一行解法Prometheus Targets 显示 DOWN超时9835 没放行或被占用sudo ufw allow 9835/tcp或改--web.listen-addressmetrics 里没有nvidia_smi_*系列只有运行时间戳采集失败被降级成错误指标手动跑一遍nvidia-smi看是否报错必要时加--log.leveldebug抓取偶发卡死、拖慢整个 Prometheusnvidia-smi 在驱动异常时会挂住确认--collect.timeout生效默认 10s高频抓取再配--collect.interval 15s换普通用户跑服务后采集报错用户对 nvidia 设备无权限把用户加进 video/render 组或保持用 deb/rpm 自带的专用系统用户从单台游戏主机到跨网段的多 GPU 节点nvidia_gpu_exporter 都是同一个套路装二进制、放行 9835、把nvidia-smi指过去剩下的交给 Prometheus 和 Grafana。【免费下载链接】nvidia_gpu_exporterNvidia GPU exporter for prometheus using nvidia-smi binary OR using NVML项目地址: https://gitcode.com/gh_mirrors/nv/nvidia_gpu_exporter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考