监控篇之利用dcgm-exporter监控GPU指标并集成grafana大盘

一、应用场景

当环境中包含GPU节点时,需要了解GPU应用使用节点GPU资源的情况,例如GPU利用率、显存使用量、GPU运行的温度、GPU的功率等。

在获取GPU监控指标后,用户可根据应用的GPU指标配置弹性伸缩策略,或者根据GPU指标设置告警规则。

下文是基于开源Prometheus和DCGM Exporter实现丰富的GPU观测场景

二、采集GPU监控指标

部署dcgm-exporter组件进行GPU指标的采集,同时以9400端口对外暴露GPU指标。

该文利用docker进行gpu监控部署

复制代码
docker pull nvcr.io/nvidia/k8s/dcgm-exporter:3.0.4-3.0.0-ubuntu20.04

1. 安装 NVIDIA Container Toolkit

确定您的 Linux 发行版和版本:

复制代码
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)

添加 NVIDIA Container Toolkit 的 GPG 密钥:

复制代码
curl -s -L https://nvidia.github.io/nvidia-container-toolkit/gpgkey | sudo apt-key add -

添加 NVIDIA Container Toolkit 的 APT 软件源:

复制代码
curl -s -L https://nvidia.github.io/nvidia-container-toolkit/ubuntu${distribution}/nvidia-container-toolkit.list | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

更新您的 yum软件包列表并安装 NVIDIA Container Toolkit:

复制代码
yum update
yum install -y libseccomp
yum install -y nvidia-container-toolkit

安装完成之后执行如下验证是否安装成功:

复制代码
rpm -qa | grep nvidia

2. 启动dcgm-exporter容器

运行带有 GPU 支持的容器:

复制代码
sudo docker run -d --gpus all -p 9400:9400 --restart=always nvcr.io/nvidia/k8s/dcgm-exporter:3.0.4-3.0.0-ubuntu20.04

3. 测试dcgm-exporter的metrics指标

调用dcgm-exporter接口,验证采集的应用GPU信息。

例如:IP地址为:192.168.0.10

复制代码
curl 192.168.0.10:9400/metrics

4. 集成prometheus

修改监控内容

复制代码
sudo vim /etc/prometheus/prometheus.yml

添加以下代码

复制代码
  - job_name: 'gpu_metrics'
    static_configs:
      - targets: ['gpu_exporter_host:9400']

格式如下

重启prometheus

复制代码
systemctl restart prometheus

5.集成 grafana大盘

登录Grafana页面查看GPU信息

如您安装了Grafana,您可通过导入NVIDIA DCGM Exporter Dashboard来展示gpu的相关指标信息。

关于在Grafana导入Dashboard的方法,请参见Manage dashboards

相关推荐
mask哥1 天前
详解springcloudalibaba采用prometheus+grafana实现服务监控
java·nacos·springboot·grafana·prometheus·springcloud·微服务监控
wish3662 天前
【APM】How to enable Trace to Logs on Grafana?
经验分享·grafana·devops
奈斯ing3 天前
【prometheus+Grafana篇】从零开始:Linux 7.6 上二进制安装 Prometheus、Grafana 和 Node Exporter
运维·grafana·prometheus
Debug_TheWorld4 天前
Prometheus+Grafana实时监控系统各项指标
grafana·prometheus
云原生的爱好者9 天前
Prometheus+Grafana+K8s构建监控告警系统
kubernetes·grafana·prometheus
INFINI Labs10 天前
如何使用 Grafana 连接 Easyearch
grafana·easysearch
dmonstererer10 天前
【grafana原生告警中心配置飞书机器人告警】
机器人·飞书·grafana
奈斯ing11 天前
【prometheus+Grafana篇】Prometheus与Grafana:深入了解监控架构与数据可视化分析平台
信息可视化·grafana·prometheus
被一米六支配的恐惧14 天前
k8s部署grafana
容器·kubernetes·grafana