zabbix自定义监控项

环境

角色 版本 IP
zabbix_server

zabbix:3.0.1

centos:7.6

10.10.2.31
zabbix_agentd centos:7.6 10.1.13.91

编写脚本

[root@ceph-node01 ~]# cat /usr/zagt/zabbix_scripts/check_mem.sh 
#!/bin/bash

case $1 in
  used)
  free -m | awk '$1=="Mem:" {print $3}'
  ;;
  free)
  free -m | awk '$1=="Mem:" {print $4}'
  ;;
  cache)
  free -m | awk '$1=="Mem:" {print $6}'
  ;;
  available)
  free -m | awk '$1=="Mem:" {print $7}'
  ;;
  *)
  echo "Usge $0 [used|free|cache|available]"
  ;;
esac

测试获取数据

[root@ceph-node01 ~]# /usr/zagt/zabbix_scripts/check_mem.sh free
14602

编写监控项

编写自定义监控项有两种方法可以实现,第一种直接在zabbix_agent.conf作修改,第二种编写单独的配置文件(推荐),以增加配置文件为例:

[root@ceph-node01 ~]# cat /usr/zagt/etc/zabbix_params/mem_tmp.conf 
UserParameter=mem_status[*],/usr/zagt/zabbix_scripts/check_mem.sh $1

参数说明: 

mem_status[*]   代表监控项的键值,[*]代表该监控项需要传入参数

,   注意监控项和参数之间存在","逗号

/usr/zagt/zabbix_scripts/check_mem.sh  脚本路径

$1        运行该脚本时需要传入的参数,需传入多个值时增加即可

重启zabbix_agent服务

修改zabbix_agent.conf后需要重启agentd服务,相应参数才会生效。

[root@ceph-node01 ~]# systemctl restart zabbix_agentd

zabbix_get测试

注意:zabbix_get需要切换到zabbix所在服务器进行zabbix_get操作。

[root@BCNC ~]# zabbix_get -s 77.1.13.91 -k mem_status[cache]
46052

添加图形化

zabbix自定义监控项_第1张图片 新建监控项

单位如何设置,参考其他博文Zabbix 单位换算 - Hello·Word - 博客园 (cnblogs.com)

zabbix自定义监控项_第2张图片

你可能感兴趣的:(Linux运维,运维,zabbix)