zoukankan      html  css  js  c++  java
  • Centos7下zabbix部署(三)自定义监控项

    引言

      在前面的博客中我们介绍了zabbix自带的模板,并且完成了我们的一些比较常用的监控,现在我们如果想要监控我们磁盘的IO,这时候zabbix并没有给我们提供这么一个模板,所以我们需要自己来创建一个模板来完成磁盘IO的监控。

      1. 添加userparameter_io.conf配置文件

       在/etc/zabbix/zabbix_agentd.d下添加userparameter_io.conf, 文件内容如下:  

    UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$4}'                    //磁盘读的次数  
    UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$7}'                     //磁盘读的毫秒数  
    UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$8}'                   //磁盘写的次数  
    UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$11}'                  //磁盘写的毫秒数  
    UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$12}'              
    UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$13}'                       //花费在IO操作上的毫秒数  
    UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$6}'             //读扇区的次数(一个扇区的等于512B)  
    UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$10}'          //写扇区的次数(一个扇区的等于512B)  

      2、重启zabbix-agent服务

       systemctl restart zabbix-agent

      3、测试zabbix-server主动获取数据

      [root@zabbix-server ~]# zabbix_get -s 10.0.0.44 -p 10050 -k custom.vfs.dev.write.ops[sda]
      bash: zabbix_get: command not found...

    #如果出现这样的情况
    [root@zabbix-server ~]# yum install zabbix-get -y

      [root@zabbix-server ~]# zabbix_get -s 10.0.0.44 -p 10050 -k custom.vfs.dev.write.ops[sda]
      75112

      [root@zabbix-server ~]# zabbix_get -s 10.0.0.45 -p 10050 -k custom.vfs.dev.write.ops[sda]
      3947

      4、配置zabbix-server模板

        进入web界面—》配置—》模板—创建模板

      Name:  Disk:$1:Read:Bytes/sec
       Key:  custom.vfs.dev.read.sectors[sda]
       Units: B/sec
       Store value: speed per second       //会进行差值计算
       Use custom multiplier     512      //会对值乘以512,因为这里是一个扇区,转换为字节为512B

     第二监控项:和第一个一样的配置过程

                      Name:Disk:$1:Write:Bytes/sec
                      Key:          custom.vfs.dev.write.sectors[sda]
                      Units:        B/sec
                      Store value: speed per second
                      Use custom multiplier     512

      第三个监控项配置参数:

                     Name:Disk:$1:Read:ops per second
                      Key:          custom.vfs.dev.read.ops[sda]
                      Units:        ops/second
                      Store value: speed per second

      第四个监控项配置参数:

                     Name: Disk:$1:Write:ops per second
                      Key:          custom.vfs.dev.write.ops[sda]
                      Units:        ops/second
                      Store value: speed per second

     第五个监控项配置参数:

                     Name: Disk:$1:Read:ms
                      Key:         custom.vfs.dev.read.ms[sda]
                      Units:      ms
                      Store value: speed per second

     第六个监控项配置参数:

                     Name:Disk:$1:Write:ms
                      Key:         custom.vfs.dev.write.ms[sda]
                      Units:      ms
                      Store value: speed per second

    上面我们就完成了对IO的监控,但是我们也想和zabbix自带的那样的模板一样,可以看到监控以后的图形,当然这也是可以做到的,下面就介绍图形的添加。

     5、添加图形

       返回到模板的列表页面,找到我们创建的模板Template io 然后点击后面的图形—》创建图形

     

  • 相关阅读:
    编程术语英汉对照
    asp.net常用函数
    好的博客地址
    读取项目中的txt文件内容
    Web Service的定义
    ADO.NET在开发中的部分使用方法和技巧
    如何实现文本框焦点自动跳转及通过回车键提交表单
    15位和18位身份证JS校验实例
    PL/SQL 操作数据库常见脚本
    android 隐藏标题栏
  • 原文地址:https://www.cnblogs.com/benjamin77/p/8593986.html
Copyright © 2011-2022 走看看