设为首页 收藏本站
查看: 1593|回复: 0

[经验分享] Zabbix添加自定义监控项(一)

[复制链接]

尚未签到

发表于 2017-12-31 11:00:26 | 显示全部楼层 |阅读模式
  前言:由于Zabbix提供的项目和模板有限,有时我们需要自定义监控项,下面以监控磁盘I/O使用率为例,创建自动发现规则,并配置图形。
  (1)Zabbix_agentd端自动发现脚本,zabbix要求返回的数据为json格式。
  自动发现磁盘,这里有sd和md开头的,根据需求修改脚本去过滤出磁盘:
  运行:/usr/local/etc/disk_io_check.sh disk_count
  脚本摘自网络,可自行修改,或用其他语言编写也可以。
  

# vim /usr/local/etc/disk_io_check.sh  
#!/bin/sh
  
#disk_io monitor
  
disk=$2
  
function disk_count {
  
diskarray=(`cat /proc/diskstats | grep -E "\b[s|m]d[a-z|0]\b| \
  
\bxvd[a-z]\b|cciss/c[0-9]d[0-9]\b" | grep -i "\b$1\b" \
  
|awk '{print $3}' | sort|uniq 2>/dev/null`)
  
length=${#diskarray[@]}
  
printf "{\n"
  
printf '\t'"\"data\":["
  
for ((i=0;i<$length;i++));do
  
printf '\n\t\t{'
  
printf "\"{#DISK_NAME}\":\"${diskarray[$i]}\"}"
  
if [ $i -lt $[$length-1] ];then
  
printf ','
  
fi
  
done
  
printf "\n\t]\n"
  
printf "}\n"
  
}
  
function qps {
  
qps=$(iostat $disk -x 1 2 | grep -E "^sd|^cciss|md" | awk '{if(NR==2)print $NF}')
  
echo $qps
  
}
  
$1
  

  
exit 0
  

  

  (2)采集数据脚本:
  也是上面的脚本/usr/local/etc/disk_io_check.sh qps
  (3)配置zabbix_agentd.conf
  

# cat /etc/zabbix/zabbix_agentd.d/disk_io.conf  

  
UserParameter=iostat.count,/usr/local/etc/disk_io_check.sh disk_count
  

  
UserParameter=iostat.util
  • ,/usr/local/etc/disk_io_check.sh qps $1
      

      

      (4)重启zabbix_agentd
      

    killall zabbix_agentd;./zabbix_agentd  

      

      (5)Zabbix_server端测试:返回预知的数据,则脚本和配置OK
      

    # /usr/local/zabbix-2.2.2/bin/zabbix_get -s XXX.XXX.XXX.XXX -p 10050 -k 'iostat.count'  

      
    {
      

      "data":[
      

      {"{#DISK_NAME}":"md0"},
      

      {"{#DISK_NAME}":"sda"},
      

      {"{#DISK_NAME}":"sdb"},
      

      {"{#DISK_NAME}":"sdc"},
      

      {"{#DISK_NAME}":"sdd"}
      

      ]
      

      
    }
      

      

      
    # /usr/local/zabbix-2.2.2/bin/zabbix_get -s xxx.xxx.xxx.xxx -p 10050 -k 'iostat.util[sdc]'
      

      
    2.50
      

      

      (6)在模板中配置自动发现:
    DSC0000.png

      配置项目原型:
    DSC0001.png

      (7)在主机或模板中配置图形:
    DSC0002.png

      下面是数据采集一段时间后的图形:
    DSC0003.png

      至此,自动发现配置完毕。
      注意点:(1)键值要对应起来(2)自动发现返回的数据为json格式

  • 运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
    2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
    3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
    4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
    5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
    6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
    7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
    8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

    所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-430227-1-1.html 上篇帖子: zabbix haproxy 监控 下篇帖子: 第3章Zabbix完整监控
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫码加入运维网微信交流群X

    扫码加入运维网微信交流群

    扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

    扫描微信二维码查看详情

    客服E-mail:kefu@iyunv.com 客服QQ:1061981298


    QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


    提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


    本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



    合作伙伴: 青云cloud

    快速回复 返回顶部 返回列表