创建自定义监控项
添加一个自定义监控项:监控硬盘的tps值(tps为磁盘每秒的吞吐量)
1、在agent端配置
1.1 添加自定义监控项
zabbix中监控项叫做item,监控项的取值方法叫做key
item: Items是从agnet主机里面获取的所有数据。
Key:我们可以理解为key是item的唯一标识,在agent端有很多监控项,zabbix-server根据key区分不同的监控项
zabbix_server通过发送key给zabbix_agent,然后agent端口根据key,把所要监控的item的最新数据返回给server端
现添加监控硬盘的tps值为监控项,tps值的获取可以用iostat命令得到
可以看出tps是2.32,然后利用正则表达式取出tps的值
1.1.1 在客户端创建配置文件
自定义监控项的key值,格式为UserParameter=<key>,<脚本路径>,key值不能与现有的重复,现有的key值可以通过zabbix的web界面找到或者通过命令zabbix_agentd -p打印出来。
cd /etc/zabbix/zabbix_agentd.d/
Vim monitor_tps.conf
UserParameter=monitor_tps,/etc/zabbix/script/6/item/monitor_tps/monitor_tps.sh
1.1.2 在客户端创建脚本
vim /etc/zabbix/script/6/item/monitor_tps/monitor_tps.sh
脚本内容:
iostat|awk '/^sda/{print $2}
1.1.3 在客户端测试脚本
sh ./script/6/item/monitor_tps/monitor_tps.sh
1.2 重启zabbix-agent服务
[[email protected] ~]# systemctl restart zabbix-agent.service
2、在server端配置
2.1 测试zabbix-server主动获取数据(看监控端是否可以从客户端得到key值)
在zabbix服务端使用zabbix-get(来检查能否采集到数据)
zabbix_get -s 192.168.21.23 -k monitor_tps
2.1.1 会告诉你权限不够
2.1.2去客户端改脚本权限
chmod 755 /etc/zabbix/script/6/item/monitor_tps/monitor_tps.sh
2.2 在zabbix的web界面添加自定义监控项
其中的键值要与自定义的key值对应,即monitor_tps
数据类型tps值为小数,即浮点类型