赞
踩
由于Zabbix监控模板中并没有直接提供磁盘IO性能的监控项,所以我们需要自定义一个脚本来获取数据,并将这个脚本获取的数据与配置的监控项、触发器、图形等联系起来;并且我们可能不止配置一台主机,所以,该脚本对应的监控项,我们可以放入已有的模板或自定义模板的监控项中,也可以使用自动发现,这里我们试着使用自动发现来配置
首先,我们需要监控的数据,这些数据需要我们编写脚本获得,这里我们需要得到磁盘IO的相关数据,所以会用iostat命令或者查看/proc/diskstats
文件内容获得,但是iostat命令和top命令一样,每次使用时的第一次返回值是显示的系统启动开始的各项统计信息,第二次返回的值才是实时的磁盘IO信息,所以使用该命令时,一般都是取第二次返回值,这样就比较麻烦,所以这里我们使用另一种方式来获得数据:
#/bin/sh
device=$1
DISK=$2
case $DISK in
read.ops)
/bin/cat /proc/diskstats | grep "\b$device\b" | head -1 | awk '{print $4}' #磁盘读的次数
;;
read.ms)
/bin/cat /proc/diskstats | grep "\b$device\b" | head -1 | awk '{print $7}' #磁盘读的毫秒数
;;
write.ops)
/bin/cat /proc/diskstats | grep "\b$device\b" | head -1 | awk
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。