GPU服务器的性能实时监控(由nvidia_gpu_exploter+prometheus+grafana实现)

先展示最终效果:

要实现上述监控页面,必须安装并配置nvidia_gpu_exploter、prometheus、grafana这三个软件,具体的安装配置流程如下:

(我想通过网页实时展示服务器上正在运行的gpu进程以及使用的显存占比,但是这套配置其最终效果只显示内存使用占比、显存使用占比,gpu实时利用率等等,无法实现gpu进程和其占比的实时展示)

一、nvidia_gpu_exploter的安装配置

nvidia_gpu_exploter用于获取nvidia-smi的输出信息,可以将其看作一个抓手,定时(5s/10s)抓取一次nvidia-smi的输出信息。

  1. nvidia_gpu_exploter的安装

    ubuntu20.04可使用以下命令一键傻瓜安装:

    sudo dpkg -i nvidia-gpu-exporter_1.1.0_linux_amd64.deb

    或使用二进制文件安装:

bash 复制代码
VERSION=1.1.0
wget https://github.com/utkuozdemir/nvidia_gpu_exporter/releases/download/v${VERSION}/nvidia_gpu_exporter_${VERSION}_linux_x86_64.tar.gz
tar -xvzf nvidia_gpu_exporter_${VERSION}_linux_x86_64.tar.gz
mv nvidia_gpu_exporter /usr/bin
nvidia_gpu_exporter --help
 
  1. nvidia_gpu_exploter的配置

    一键式傻瓜安装无需额外就能启用nvidia_gpu_exploter.service

    systemctl start nvidia_gpu_exporter.service

    systemctl status nvidia_gpu_exporter.service

  1. 之后在局域网内部任意一台电脑中输入服务器IP:9835 即可访问服务页面

出现上述内容,说明nvidia_gpu_exporter.service成功运行

nvidia_gpu_exporter项目的github主页: utkuozdemir/nvidia_gpu_exporter: Nvidia GPU exporter for prometheus using nvidia-smi binary (github.com)

二、prometheus的安装配置

prometheus用于将nvidia_gpu_exporter抓取到的数据格式化为grafana可使用的标准数据。

  1. prometheus的安装

    sudo apt install prometheus

  2. prometheus的配置

    进入/etc/prometheus目录,修改prometheus.yml,设置prometheus的数据源(设置为nvidia_gpu_exporter),如下图所示:

    然后开启prometheus服务:sudo systemctl start prometheus.service

  3. 之后在局域网内部任意一台电脑中输入服务器IP:9090 即可访问prometheus服务页面

  4. Targets 下出现nvidia_gpu_exporter的数据源,则证明prometheus服务配置成功。

三、grafana的安装配置

grafana软件用于数据的可视化展示,Grafana 支持的数据源有

  • Prometheus 本文中的例子,你没听过也没关系不影响阅读,把它想象成带时间戳的 MySQL 就好
  • Graphite
  • OpenTSDB
  • InfluxDB
  • MySQL/PostgreSQL
  • Microsoft SQL Server
  • 等等
  1. grafana的安装

    下载deb文件:wget https://dl.grafana.com/enterprise/release/grafana-enterprise_10.4.0_amd64.deb

    解压安装:sudo dpkg -i grafana-enterprise_10.4.0_amd64.deb

  2. 启动grafana.service服务: sudo systemctl start grafana-server.service

  3. 之后在局域网内部任意一台电脑中输入服务器IP:3000 即可访问grafana服务页面。(首次登录用户名和密码都是admin)

  4. 登录成功后配置grafana的仪表盘:

    1. 第一步:创建一个grafana data connection:

      (1). 选择数据格式为prometheus.

      (2). 添加prometheus数据源地址,如图所示: prometheus服务地址中,端口号要和你在prometheus.yml中配置的一致,由于我没有修改prometheus服务的端口,所以仍使用默认端口9090

    2. 第二步:创建仪表盘

      (1) 加载你想要的仪表盘样式,我选择的是nvidia_gpu_exploter官方发布的仪表盘,编号为:14574

    3. 第三步,为你的仪表盘选择一个grafana data connection数据源,如图所示

最终,通过以下操作得到服务器状态的实时展示,如图所示:

完!

相关推荐
wj3055853787 小时前
课程 9:模型测试记录与 Prompt 策略
linux·人工智能·python·comfyui
abigriver7 小时前
打造 Linux 离线大模型级语音输入法:Whisper.cpp + 3090 显卡加速与 Rime 中英混输终极调优指南
linux·运维·whisper
wangqiaowq8 小时前
windows下nginx的安装
linux·服务器·前端
YYRAN_ZZU8 小时前
Petalinux新建自动脚本启动
linux
charlie1145141918 小时前
嵌入式Linux驱动开发pinctrl篇(1)——从寄存器到子系统:驱动演进之路
linux·运维·驱动开发
于小猿Sup9 小时前
VMware在Ubuntu22.04驱动Livox Mid360s
linux·c++·嵌入式硬件·自动驾驶
cen__y9 小时前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
不仙52010 小时前
VMware Workstation 26.0.0 在 Ubuntu 24.04 (内核 6.17.0) 上的安装与内核模块编译问题
linux·ubuntu·elasticsearch
AI视觉网奇11 小时前
linux 检索库 判断库是否支持
java·linux·服务器
dapeng-大鹏11 小时前
KVM+LVM 零停机在线扩容 Ubuntu 根分区:从磁盘添加到逻辑卷扩展完整
linux·运维·ubuntu·磁盘空间扩展