zabbix自动发现并监控GPU

配置zabbix监控模板(只需要在darshboard上操作一次)

创建监控模板

在配置->模板页面,选择创建模板:
image
如下填写:
image

  • 模板名称:自定义,我们命名为gpu discovery
  • 群组:放到templates组里面

创建应用集

选择上面创建的模板,进入应用集,选择创建应用集,创建名称为GPU的应用集:
image

创建自动发现

进入刚才创建的模板,点击动发现规则,选择创建自发现规则:
image
如下创建自动发现规则:
image

  • 名称:自定义,我们设置discover gpu
  • 类型:zabbix客户端
  • 键值:gpu.discovery,该值要和下面服务器上配置的自动发现脚本的键值相同
  • 更新间隔:根据实际需求来,因为GPU的变化非常小,我们可以选择1h这样的间隔

创建监控项原型

从上一步创建后的结果中,点击监控项原型,并选择创建监控项原型:
image
如下创建监控项:
image

  • 名称:GPU {#GPU_ID} GPU utilization,其中{#GPU_ID}为下面服务器自动发现脚本输出的值
  • 类型:选择zabbix客户端
  • 键值:gpu.utilization[{#GPU_ID},gpu],键值为下面服务上创建的键值
  • 信息类型:根据实际采集的数据来,本次为数字型,所以选择数字无正负
  • 单位:根据实际情况,使用率是百分比,所以填%
  • 更新间隔:根据实际情况来,使用率使我们比较关注的键控值,所以可以采集密集一些
  • 历史数据保留时长:可以保留30d,根据实际需求来
  • 应用集:选择之前创建的GPU应用集

完成后点击添加。重复此操作,创建其他监控项,最终如下:
image

创建触发器原型

本次暂时不创建

GPU服务器配置(每个GPU服务器都要配置)

创建自动发现脚本

我们在/etc/zabbix/目录下创建自动发现gpu脚本gpu_discovery.sh;

#!/bin/sh
GPUS=(`nvidia-smi -L | awk -F ' |:' '{print $2}'`)
LENGTH=${#GPUS[*]}

printf "{\n"
printf  '\t'"\"data\":["
for ((i=0;i<$LENGTH;i++))
do
        printf '\n\t\t{'
        printf "\"{#GPU_ID}\":\"${GPUS[$i]}\"}"
        if [ $i -lt $[$LENGTH-1] ];then
                printf ','
        fi
done
printf  "\n\t]\n"
printf "}\n"

执行脚本如下输出:

{
	"data":[
		{"{#GPU_ID}":"0"},
		{"{#GPU_ID}":"1"}
	]
}

配置自动发现和采集监控项配置

调整自动发现脚本配置

chmod 755 /etc/zabbix/gpu_discovery.sh

配置agent

在/etc/zabbix/zabbix_agentd.d/目录下创建名为userparameter_gpus.conf的配置文件,并添加如下内容:

UserParameter=gpu.discovery,/etc/zabbix/gpu_discovery.sh
UserParameter=gpu.name[*],nvidia-smi -i $1 --query-gpu=name --format=csv,noheader,nounits
UserParameter=gpu.mem[*],nvidia-smi -i $1 --query-gpu=memory.$2 --format=csv,noheader,nounits
UserParameter=gpu.utilization[*],nvidia-smi -i $1 --query-gpu=utilization.$2 --format=csv,noheader,nounits
UserParameter=gpu.power[*],nvidia-smi -i $1 --query-gpu=power.$2 --format=csv,noheader,nounits

调整agent执行用户

编辑/etc/zabbix/zabbix_agentd.conf,将AllowRoot配置为1

重启agnet

systemctl restart zabbix-agent

链接模板

在zabbix web界面,找到该服务器,为其添加上文创建的模板。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值