• Zabbix实战-简易教程--低层次发现(LLD)


    一、概述

    自动发现(LLD)提供了一种在为不同实体自动创建监控项,触发器和图形的方法。例如,Zabbix可以在你的机器上自动监控磁盘或网卡,而无需为每个磁盘或网卡手动创建监控项。(LLD)

    此外,可以配置Zabbix根据定期执行发现后的得到实际结果,来移除不需要的监控项。(根据正则过滤)

    二、类型

    在Zabbix中,支持六种类型的发现项目:

    • 系统文件的发现;
    • 网络接口的发现;
    • CPU和CPU内核的发现
    • SNMP OID的发现
    • 使用ODBC SQL查询的发现
    • Windows服务的发现

    三、流程

    发现过程的流程如下。

    首先,用户在“配置”→“模板”→“自动发现”列中创建一个发现规则。发现规则包括(1)发现必要实体(例如,磁盘或网卡)的项目和(2)应该根据该项目的值创建的监控项,触发器和图形的原型。

    其次,用户也可以自己定义发现类型,只要它们遵循特定的JSON协议。

    四、查看自带LLD

    1、我们先查看系统自带的LLD,选择  模板管理-->自动发现

    2、查看到,系统自带的2个LLD

    3、随便点击一个,比如,我们点击文件系统的这个

    4、查看具体监控项

    需要说的是:{#FSNAME}为宏变量,宏变量,我们之前已经说过,请参考:http://www.cnblogs.com/skyflask/p/7523535.html

    五、自定义LLD(实例)

    流程:(比如采集linux机器上所有磁盘IO)

    1、自定义key

    UserParameter=custom.vfs.dev.discovery,/bin/sh /etc/zabbix/externalscripts/disk.sh

    cat  /etc/zabbix/externalscripts/disk.sh

    #!/bin/bash
    diskarray=(`cat /proc/diskstats |grep -E "vd[a-z]|hd[a-z]|sd[a-z]|c0d0p[0-9]"|grep -i "$1"|awk '{print $3}'|sort|uniq   2>/dev/null`)
    length2=${#diskarray[@]}
    printf "{
    "
    printf  '	'""data":["
    for ((i=0;i<$length2;i++))
    do
        printf '
    		{'
        printf ""{#DISK}":"${diskarray[$i]}"}"
        if [ $i -lt $[$length2-1] ];then
                printf ','
        fi
    done
    printf  "
    	]
    "
    printf "}
    "
    

      

    2、设置item

    # reads completed successfully
    UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$4}'
    # sectors read
    UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$6}'
    # time spent reading (ms)
    UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$7}'
    # writes completed
    UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$8}'
    # sectors written
    UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$10}'
    # time spent writing (ms)
    UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$11}'
    # I/Os currently in progress
    UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$12}'
    # time spent doing I/Os (ms)
    UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | egrep $1 | head -1 | awk '{print $$13}'
    #IOPS
    UserParameter=custom.vfs.dev.util[*],iostat -x -d -c 1 1|egrep $1|awk '{print $NF}'

    3、设置模板

    上面忘记说了,我们还可以对发现的磁盘通过正则进行过滤,正则详情参考:http://www.cnblogs.com/skyflask/p/7520829.html

    4、效果图

     最后,选定一台主机,将模板绑到他上面,就可以看到效果了:

     

    六、参考文件和脚本

    脚本地址:https://github.com/loveqx/zabbix-doc/blob/master/zabbix-scripts/zabbix-template-disk/disk.sh

    模板地址:https://github.com/loveqx/zabbix-doc/tree/master/zabbix-scripts/zabbix-template-disk

    参考文献:无

  • 相关阅读:
    选中dom,用length来判断点击的元素是否是当前元素
    threejs学习笔记05---相机透视-正透视
    threejs学习笔记04---相机动
    threejs学习笔记04---物体动
    threejs学习笔记03---网格
    maven web项目部署
    数组,集合相关小结
    安装及配置mysql-5.7.21-winx64
    对oracle数据库使用的小结
    机器学习实战书-第二章K-近邻算法笔记
  • 原文地址:https://www.cnblogs.com/skyflask/p/7538324.html
Copyright © 2020-2023  润新知