zabbix of monitoring io

#:编写监控脚本

root@ubuntu:/etc/zabbix/zabbix_agentd.conf.d# vim iotop_total.sh 
#!/bin/bash
#Date: 2016/11/11
#Author:zhangjie
disk_read(){
  NUM=`/usr/bin/sudo iotop -b -n 3 | grep "Total DISK READ" | grep -v grep | awk  -F "|" '{print $1}' | awk -F ":" '{print $2}' |  tail -n1 | awk -F "/" '{print $1}'`
  NUM2=`echo $NUM | awk '{print $1}'`
  UNIT=`echo $NUM | awk '{print $2}'`
  if [ $UNIT == "B" ];then
    echo $NUM2
  elif [ $UNIT == "K" ];then
    NUM3=$(echo "$NUM2 * 1024" | bc)
    echo $NUM3
  elif [ $UNIT == "M" ];then
    NUM3=$(echo "$NUM2 * 1024 * 1024" | bc)
    echo $NUM3
  elif [ $UNIT == "G" ];then
    NUM3=$(echo "$NUM2 * 1024 * 1024 * 1024" | bc)
    echo $NUM3
  fi
}
disk_write(){
  NUM=`/usr/bin/sudo iotop -b -n 3 | grep "Total DISK WRITE :" |  grep -v grep | awk  -F "|" '{print $2}' | awk -F ":" '{print $2}' | tail -n1 | awk -F "/" '{print $1}'`
  NUM2=`echo $NUM | awk '{print $1}'`
  UNIT=`echo $NUM | awk '{print $2}'`
  if [ $UNIT == "B" ];then
    echo $NUM2
  elif [ $UNIT == "K" ];then
    NUM3=$(echo "$NUM2 * 1024" | bc)
    echo $NUM3
  elif [ $UNIT == "M" ];then
    NUM3=$(echo "$NUM2 * 1024 * 1024" |BC)
     echo $ NUM3
   elif [$ UNIT == " G " ]; the then 
    NUM3 = $ ( echo  " $ NUM2 * 1024 * 1024 * 1024 " | BC)
     echo $ NUM3
   Fi 
} 

main () { 
    Case $ . 1  in 
        with disk_read) 
           with disk_read; 
           ;; 
        DISK_WRITE) 
            DISK_WRITE; 
            ;; 
    Esac 
} 
main $ . 1 

#: configuration Parameter (note file storage location) 
the root @ Ubuntu: / etc / ZABBIX /zabbix_agentd.conf.d# vim linux37.conf
UserParameter=io_stats[*],/etc/zabbix/zabbix_agentd.conf.d/iotop_total.sh "$1"

#:修改权限
root@ubuntu:/etc/zabbix/zabbix_agentd.conf.d# chmod a+x iotop_total.sh
root@ubuntu:/etc/zabbix/zabbix_agentd.conf.d# chown zabbix.zabbix linux37.conf

#:重启服务
root@ubuntu:/etc/zabbix/zabbix_agentd.conf.d# systemctl restart zabbix-agent

#;在本机测试一下
root@ubuntu:/etc/zabbix/zabbix_agentd.conf.d# bash iotop_total.sh disk_read

#:在server端测试
root@ubuntu:~# /apps/zabbix_server/bin/zabbix_get -s 192.168.7.112 -p 10050 -k "io_stats[disk_read]"
0.00

 

Create a template to create web end ---- monitored item (this item script monitoring units have been converted to B) - to create a trigger to create graphics ---- ---- association template

Case

 

Guess you like

Origin www.cnblogs.com/maxuebin/p/11586373.html