Zabbix基础模板制作(小节12)

101 阅读1分钟

105

cd /etc/zabbix/zabbix_agentd.d/

#脚本
cat iotop_total.sh 
#!/bin/bash
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" ];then
    NUM3=$(echo "$NUM2 * 1024 * 1024 * 1024" | bc)
    echo $NUM3
  fi
}

main(){
    case $1 in
        disk_read)
           disk_read;
           ;;
        disk_write)
            disk_write;
            ;;
    esac
}
main $1

添加执行权限

chmod a+x iotop_total.sh
vim linux01.conf

UserParameter=monitor_io[*],/etc/zabbix/zabbix_agentd.d/iotop_total.sh "$1

重启服务

systemctl restart zabbix-agent

101

zabbix_get -s 192.168.37.105 -p 10050 -k "monitor_io[disk_read]"
0.00

创建模板

图片.png

创建监控项 图片.png 磁盘读取

图片.png 磁盘写入 图片.png 创建图形 图片.png

图片.png

关联模板

图片.png

修改模板 图片.png

图片.png

图片.png 添加报警

图片.png

图片.png

图片.png

图片.png 内存

图片.png

图片.png

图片.png

图片.png

内存小于4G报警

图片.png