zoukankan      html  css  js  c++  java
  • zabbix自定义监控项一

    1、在agent端配置

    1.1 添加自定义监控项

    zabbix中监控项叫做item,监控项的取值方法叫做key

    item: Items是从agnet主机里面获取的所有数据。通常情况下我叫itme为监控项,item由key+参数组成

    Key:我们可以理解为key是item的唯一标识,在agent端有很多监控项,zabbix-server根据key区分不同的监控项

    zabbix_server通过发送key给zabbix_agent,然后agent端口根据key,把所要监控的item的最新数据返回给server端

    例如添加一个简单的自定义监控项:监控硬盘的tps值(tps即为磁盘的 IOPS,KBPS 即为磁盘每秒的吞吐量)

    tps值的获取可以用iostat命令得到,在使用iostat命令的时候需要先安装

    [root@db01 ~]# yum install sysstat -y

    [root@db01 ~]# iostat        #此处得到的tps值为8.97

    Linux 3.10.0-327.el7.x86_64 (db01)     20180611     _x86_64_    (1 CPU)

     

    avg-cpu: %user %nice %system %iowait %steal %idle

    0.48 0.00 1.67 2.14 0.00 95.71

     

    Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn

    sda 8.97 168.68 10.91 186118 12042

    [root@db01 ~]# iostat|awk '/^sda/{print $2}'    #利用正则表达式取出tps的值

    7.98

    [root@db01 ~]# vim /etc/zabbix/zabbix_agentd.conf        #修改zabbix-agent配置文件,在配置文件中设置允许并添加自定义监控项

    284 UnsafeUserParameters=1    #默认为1,不修改也可以

    自定义监控项的key值,格式为UserParameter=<key>,<shell command>,key值不能与现有的重复,现有的key值可以通过zabbix的web界面找到或者通过命令zabbix_agentd -p打印出来。命令最好使用全路径

    285 UserParameter=monitor_tps,/usr/bin/iostat|/usr/bin/awk '/^sda/{print $2}

    1.2 重启zabbix-agent服务

    [root@db01 ~]# systemctl restart zabbix-agent.service

    [root@db01 ~]# zabbix_agentd -p    #打印出所有zabbixkey值,可以发现自定义的会出现在最后面,此处已经取到了值,取值为5.69

    2、在server端配置

    2.1 测试zabbix-server主动获取数据

    在zabbix服务端使用zabbix-get

    [root@zabbix ~]# yum install zabbix-get -y        #安装

    [root@zabbix ~]# zabbix_get -s 192.168.1.51 -p 10050 -k "monitor_tps"

    3.86        #-s参数指定客户端地址,-p指定端口,-k指定key值,这里获取到客户端的tps值为3.86

    2.2 在zabbix的web界面添加自定义监控项

    点击:配置——>主机,选择并点击要添加自定义监控项的主机的监控项

    点击创建监控项,填写相关信息后再点击添加

    其中的键值要与自定义的key值对应,即monitor_tps

    数据类型tps值为小数,即浮点类型

    数据更新间隔,历史数据保留时长等要根据所添加的监控项合理设置

    最后点击添加

    2.3 查看自定义监控项

    点击:监测中——>最新数据,过滤主机及应用集

    自定义的监控项已经成功获取到了值,相关监控图形也生成了

    3、批量增加自定义监控项

    利用zabbix-agent的include方法,为每一个自定义的监控项创建一个配置文件,并将自定义的监控项发送到其他机器

    [root@db01 ~]# vim /etc/zabbix/zabbix_agentd.conf        #修改配置文件

    294 删除自定义的单个监控项

    265 Include=/etc/zabbix/zabbix_agentd.d/*.conf

    [root@db01 ~]# cd /etc/zabbix/zabbix_agentd.d/

    [root@db01 zabbix_agentd.d]# ls

    userparameter_mysql.conf

    [root@db01 zabbix_agentd.d]# vim tps.conf        #新建自定义监控项的配置文件

    UserParameter=monitor_tps,/usr/bin/iostat|/usr/bin/awk '/^sda/{print $2}'

    [root@db01 zabbix_agentd.d]# systemctl restart zabbix-agent.service    #重启服务

    [root@db01 zabbix_agentd.d]# scp tps.conf 10.0.0.63:`pwd`    #将配置文件发送到其他机器,这里发送到zabbix服务器上

    [root@zabbix ~]# yum install sysstat -y

    iosstat的命令在zabbix-server上并不具备,需要安装,因此批量添加自定义监控项的时候要注意的是,自定义的监控项中所使用的命令必须存在

    接下来在web界面上为zabbix-servver也添加自定义的监控项,点击:配置——>主机,选择已经添加了自定义监控项的机器,点击监控项,找到并勾选自定义的监控项,点击复制

    选择目标并复制

    按照此方法,就可以批量为多台机器添加自定义的监控项

     

    博主原创文章,转载请务必注明出处

  • 相关阅读:
    NGINX proxy_pass 域名解析问题
    NGINX源码分析——概览
    NGINX源代码自我总结(一)
    XWindow、Server、Client和QT、GTK之间的关系
    UBUNTU 字符界面来回切换
    ECshop 数据库表结构
    通读Cheerio文档
    Node.js 0.12: 正确发送HTTP POST请求
    npm配置镜像、设置代理
    配置 Windows 下的 nodejs C++ 模块编译环境 安装 node-gyp
  • 原文地址:https://www.cnblogs.com/ssgeek/p/9223527.html
Copyright © 2011-2022 走看看