Grafana+Prometheus监控显卡

通过Grafana添加数据源和仪表盘,对主机设备进行监控.监控GPU,方便查看设备的使用状态提高利用率

下载资源

prometheus下载链接

https://prometheus.io/download/

安装Grafana

Grafana安装官方文档链接https://grafana.com/grafana/download

sudo apt-get install -y adduser libfontconfig1 musl
wget https://dl.grafana.com/enterprise/release/grafana-enterprise_10.4.2_amd64.deb
sudo dpkg -i grafana-enterprise_10.4.2_amd64.deb
sudo systemctl start grafana-server.service
sudo systemctl status grafana-server.service
sudo systemctl enable grafana-server.service

网页上输入http://IP地址:3000/login   就可以看到界面了

默认账号密码都是admin,首次登录可以修改密码也可以点击下方的skip跳过

安装Prometheus

在官网下载了对应的文件拷贝到要监控的主机上

解压文件             

tar -zxvf prometheus-2.45.4.linux-amd64

解压移动路径     

sudo mv prometheus-2.45.4.linux-amd64 -r /usr/local

创建etc文件       

sudo mkdir -p /etc/prometheus

创建日志路径     

sudo mkdir -p /var/lib/prometheus

修改监控内容     

sudo vim /etc/prometheus/prometheus.yml
#添加以下代码
  - job_name: 'gpu_metrics'
    static_configs:
      - targets: ['gpu_exporter_host:9400']

格式如下

编辑prometheus.service文件

sudo vim /etc/systemd/system/prometheus.service

添加以下内容

[Unit]
Description=Prometheus
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/prometheus-2.45.4.linux-amd64/prometheus --config.file=/usr/local/prometheus-2.45.4.linux-amd64/prometheus.yml
Restart=on-failure

[Install]
WantedBy=multi-user.target

重新加载 systemd 配置文件,以便它读取新的服务单元文件

sudo systemctl daemon-reload

启动 Prometheus 服务

sudo systemctl start prometheus

设置为开机启动

sudo systemctl enable prometheus

检查服务状态

sudo systemctl status prometheus

可以重启再次检查服务是否正常

安装docker

sudo apt update

sudo apt upgrade

安装必要的软件包

sudo apt install apt-transport-https ca-certificates curl software-properties-common

添加Docker的官方GPG密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

添加Docker的官方软件源

echo \

  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \

  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list

安装Docker

sudo apt update

sudo apt install docker-ce docker-ce-cli containerd.io

检查Docker状态

sudo systemctl status docker

将用户添加到Docker组

sudo usermod -aG docker $USER

验证Docker安装

sudo ​docker run hello-world

如果看到“Hello from Docker!”的消息,则表示Docker安装成功。

安装 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

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

sudo apt-get update  
sudo apt-get install -y nvidia-container-toolkit

运行带有 GPU 支持的容器:

sudo docker run -d --gpus all -p 9400:9400 --restart=always nvidia/dcgm-exporter:latest

docker报错处理

查找容器的ID或名称

docker ps -a | grep nvidia/dcgm-exporter:latest

停止容器

docker stop <container_id_or_name>

删除容器

docker rm <container_id_or_name>

再次运行docker

sudo docker run -d --gpus all -p 9400:9400 --restart=always nvidia/dcgm-exporter:latest

还是报错的话只能删除所有容器重新安装解决了

删除所有Docker容器

docker container prune -f

过以下命令来停止所有容器:

docker container stop $(docker container ls -q)

删除docker

docker container rm $(docker container ls -aq)

使用 docker system prune 命令来删除所有未使用的容器、网络、镜像和卷(请小心使用,因为这将会删除所有未使用的资源):

docker system prune -a -f

重新安装容器

nvidia-container-toolkit       nvidia-container-toolkit-base  nvidia-docker2

再次运行docker

sudo docker run -d --gpus all -p 9400:9400 --restart=always nvidia/dcgm-exporter:latest

平台调试

这样输入http://IP地址:9090就可以访问Prometheus

这是Prometheus的界面

查看连接状态

在首页查询GPU的参数

登录Grafana添加数据源和仪表盘(Grafana在用户资料中可以设置中文和UI主题)这里我已经设置成中文了

接下来我们添加数据源

这样数据源我们就添加好了,接下来我们添加仪表盘

接下来就进入面板的编辑

这样 我们的仪表盘就创建好了,这个名称需要微调以下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值