1. 概述

  • 《zabbix发现配置》server通过配置好的规则,自动添加host、group、template
  • 《zabbix Active agent自动注册》与discovery相反,功能基本相同,active联系server,server自动添加host、group、template

以上目的都是发现host、添加host

本文的low-level discovery更底层点,用于发现item、trigger、graph等等。我们最常用如:filesystem(如/、/home、/proc、C:、D:等),network(eth0,eth1等)

2. Discovery之文件系统

众多服务器,难免系统以及分区会有所不同。一般存在linux和windows两种系统,linux下分区有/、/data、/proc等等,windows有C:D:E:等,A服务器有/data分区,B服务器可能有/site分区。他有什么分区,我便监控什么分区,这就是low-level discovery的功能。

2.1 创建模板

创建模板A_Template_For_Discovery,.....过程省略....

2.2 配置discovery规则

configuration>>templates>>找到模板“A_Template_For_Discovery”>>Discovery(0)>>Create discovery rule

属性说明:

Keep lost resources period(in days):数据保留天数,默认30天

Fileter:

Macro为{#FSNAME},key “vfs.fs.discovery”返回json数据列表,里面内容为{#FSNAME}作为key,/、/data、C:等等作为value。

regext可以使用表达式,例如"^/data|/C:"

如果想通过{#FSTYPE}来过滤,那么Macro写{#FSTYPE},regexp写^(ext2|ext3|swap)$,或者引入zabbix中定义好的的正则表达式,@表达式名称

2.3 创建Item prototypes

其实就是一个创建一个item,configuration>>templates>>找到模板“A_Template_For_Discovery”>>Discovery(1)>>find file system>>Item prototypes (0)>>create Item prototypes

2.4 创建Trigger

当剩余量小于20%触发warnning

configuration>>templates>>找到模板“A_Template_For_Discovery”>>Discovery(1)>>find file system>>Trigger prototypes (0)>>Create trigger prototypes

与普通的trigger区别在{#FSNAME}

2.4 创建graph

绘制简单图表

configuration>>templates>>找到模板“A_Template_For_Discovery”>>Discovery(1)>>find file system>>Graph prototypes (0)>>Create Graph prototypes

3. 自定义LLD规则

系统已经内建了文件系统的{#FSNAME},网络的{#IFNAME},因为业务的特殊性,我们如何定义我们自己需要的名称呢?

  • 编写脚本,脚本输出json数据,包含key和value
  • 脚本加入zabbix_agentd.conf UserParameter
  • 重启zabbix_agentd
  • 使用定义好的名称配置low-level discovery

3.1 脚本范例

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/perl
 
$first = 1;
print "{\n";
print "\t\"data\":[\n\n";
 
for (`cat /proc/mounts`)
{
    ($fsname, $fstype) = m/\S+ (\S+) (\S+)/;
    $fsname =~ s!/!\\/!g;
 
    print "\t,\n" if not $first;
    $first = 0;
 
    print "\t{\n";
    print "\t\t\"{#FSNAME}\":\"$fsname\",\n";
    print "\t\t\"{#FSTYPE}\":\"$fstype\"\n";
    print "\t}\n";
}
 
print "\n\t]\n";
print "}\n";

3.2 结果范例

执行后得到如下数据,是json格式

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
{
        "data":[
 
        {
                "{#FSNAME}":"\/",
                "{#FSTYPE}":"rootfs"
        }
        ,
        {
                "{#FSNAME}":"\/proc",
                "{#FSTYPE}":"proc"
        }
        ,
        {
                "{#FSNAME}":"\/sys",
                "{#FSTYPE}":"sysfs"
        }
        ,
        {
                "{#FSNAME}":"\/dev",
                "{#FSTYPE}":"devtmpfs"
        }
        ,
        {
                "{#FSNAME}":"\/dev\/pts",
                "{#FSTYPE}":"devpts"
        }
        ,
        {
                "{#FSNAME}":"\/dev\/shm",
                "{#FSTYPE}":"tmpfs"
        }
        ,
        {
                "{#FSNAME}":"\/",
                "{#FSTYPE}":"ext4"
        }
        ,
        {
                "{#FSNAME}":"\/proc\/bus\/usb",
                "{#FSTYPE}":"usbfs"
        }
        ,
        {
                "{#FSNAME}":"\/proc\/xen",
                "{#FSTYPE}":"xenfs"
        }
        ,
        {
                "{#FSNAME}":"\/proc\/sys\/fs\/binfmt_misc",
                "{#FSTYPE}":"binfmt_misc"
        }
        ]
}

zabbix discovery到此结束

(63)zabbix low-level discover zabbix批量部署必备的更多相关文章

  1. 自学Zabbix9.4 zabbix low-level discover底层发现(zabbix批量部署必备)

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix9.4 zabbix low-level discover底层发现(zabbix批 ...

  2. zabbix监控redis多实例(low level discovery)

    对于多实例部署的tomcat.redis等应用,可以利用zabbix的low level discovery功能来实现监控,减少重复操作.  注:Zabbix版本: Zabbix 3.0.2 一.服务 ...

  3. Zabbix监控Low level discovery实时监控网站URL状态

    今天我们来聊一聊Low level discovery这个功能,我们为什么要用到loe level discovery这个功能呢? 很多时候,在使用zabbix监控一些东西,需要对类似于Itens进行 ...

  4. Ansible实现zabbix服务器agent端批量部署

    项目需求:由于搭建zabbix,需要每台服务器都需要安装监控端(agent)正常的的操作是一台一台去安装,这样确实有点浪费时间,这里为大家准备了一款开源 的自动化运维工具Ansible,相信大家也很熟 ...

  5. 【Zabbix】zabora批量部署

    zabora简化批量部署 目的:简化部署zabora,批量监控数据库的常用指标 1 数据库用户赋权 上传cre_arp_monitor.sh,并且部署用户. [root@oradb ~]# chown ...

  6. zabbix(10)自动发现规则(low level discovery)

    1.概念 在配置Iterms的过程中,有时候需要对类似的Iterms进行添加,这些Iterms具有共同的特征,表现为某些特定的参数是变量,而其他设置都是一样的,例如:一个程序有多个端口,而需要对端口配 ...

  7. 【Zabbix】CentOS6.9系统下部署Zabbix-server 3.0

    目录 安装Zabbix 关闭selinux 删除旧版本MySQL5.1数据库 安装MySQL 5.6数据库 安装PHP 5.6 Zabbix-server的部署安装 1.安装Yum源 2.安装Zabb ...

  8. Zabbix 3.4 服务端安装部署

    关于zabbix的安装部署官方也提供了详细的安装文档,链接如下: https://www.zabbix.com/download 选择zabbix的版本,服务器平台及使用的数据库 安装和配置zabbi ...

  9. Zabbix agent 在windows上安装部署

    Zabbix agent 在windows上安装部署 1.下载与解压 地址: http://www.zabbix.com/downloads/2.4.4/zabbix_agents_2.4.4.win ...

随机推荐

  1. 黑马Stream流学习 Stream流 函数式接口 Lambda表达式 方法引用

  2. python操作rabbitmq实现广播效果

    生产方(Fanout_Publisher.py) # __author__ = 'STEVEN' import pika #开启socket connection = pika.BlockingCon ...

  3. 命令行媒体处理工具 FFmpeg

    FFmpeg 是一套在命令行界面运行的跨平台媒体处理工具,属于自由软件,常用来对视频音频和图片等媒体文件进行格式转换.分割和合并等,也可录屏录音. 开发语言:C官网:https://www.ffmpe ...

  4. centos下gitlab的简单安装配置

    一.安装前配置yum源 #wget https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh #s ...

  5. 088 Merge Sorted Array 合并两个有序数组

    给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1中,使得 num1 成为一个有序数组.注意:你可以假设 nums1有足够的空间(空间大小大于或等于m + n)来保存 ...

  6. Rabbitmq~linux环境的部署

    之前写过在windows环境上部署rabbitmq,这回介绍在centos上对这个消息中间件进行部署的过程 一 下载和解压 wget  http://www.rabbitmq.com/releases ...

  7. Apache的多处理模块MPM

    本博文主要参数 Apache 2.2文档以及Apache模块开发指南 Apache的整个运行可以分为两个阶段:启动阶段和运行阶段. 在启动阶段时,它以ROOT特权来启动,进行解析配置文件(一般就是ht ...

  8. Wordpress 之 Rewrite Rules

    ----------------------------------------------------------------- 场景描述: 自定义wp主题中,添加了个关于页面(about.php) ...

  9. #118. 【UR #8】赴京赶考

    链接:#118. [UR #8]赴京赶考 高中,高中,短暂的三年.NOI是高中结业考试,而高考在每年暑假举行. 高二暑假,这是你最后一次参加高考的机会.你已经为了高考停课很久了,OI的知识很久没管了. ...

  10. React项目搭建基于Karma的CI环境

    简介 在浏览Github的时候是否经常看到这样的CI图标呢? 本文即为介绍如何为基于React的项目配置CircleCI的自动化测试环境 源码在此 本地实现 项目依赖如下: "devDepe ...