首页 技术 正文
技术 2022年11月23日
0 收藏 410 点赞 5,073 浏览 9027 个字

              zabbix Server 4.0 触发器(Trigger)篇

                                           作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.触发器(Trigger)概述

1>.上一篇博客我们介绍了“内置item使用案例”,item(监控项)仅负责收集数据,而通常收集数据的目的还包括在某指标对应的数据超出合理范围时给先关人员发送告警信息,“触发器”正是用于为监控项所收集的数据定义阈值。 

2>.每一个触发器仅能关联至一个监控项,但可以为一个监控项同时使用多个触发器(事实上,为一个监控项预定义多个具有不同阈值的触发器,可以实现不同级别的报警功能)。

3>.一个触发器由一个表达式构成,它定义了监控项所采取的数据的一个阈值,一旦某次采集超出了此触发器定义的阈值,触发器状态将会转换为“Problem”;而当采取的数据再次回归至合理范围内时,其状态将重新返回到“OK”。

 

二.触发器(Trigger)表达式

1>.触发器表达式高度灵活,可以以之创建出非常复杂的测试条件。

2>.基本的触发器表达式格式如下:

{<server:<key>.<function>(<parameter>)}<operator><constant>下面我们对每一个位置参数进行说明
  server:
    主机名称。  key:
    主机上关系的相应监控项的key。  function:
    评估采集到的数据是否在合理范围内时所使用的函数,其评估过程可以根据采集的数据,当前时间及其它因素进行;目前,触发器所支持的函数有avg,count,change,data,dayofweek,delta,diff,iregexp,last,max,min,nodata,now,sun等。  parameter:
    函数参数,大多数数值函数可以接受秒数为其参数,而如果在数值参数之前使用“#”作为前缀,则表示为最近几次的取值,如sum()表示300秒内取值之和,而sum(#)则表示最近10次取值之和。此外,avg,count,last,min和max还支持使用第二个参数,用于完成时间限定,例如:max(1h,7d)将返回一周之前的最大值。  operator:
    用于走比较的操作,如:"/",“*”,">","<","#","=","&","|","+"等等。
  
  constant:
    是一个常数,即可以理解是一个固定值,采集的结果通过预定义的操作符合和改值进行比较后判断是启用触发器。  
举个例子:
  {node101.yinzhengjie.org.cn:system.cpu.load[all,avg1].last(0)}>3
  
  上述案例表示主机"node101.yinzhengjie.org.cn"上所有CPU的过去1分钟内的平均负载和最后一次取值大于3时将触发状态变化。对last函数来说,last(0)相当于last(#1)。

三.触发器(Trigger)间的依赖关系

  在一个网络中,主机的可用性之间可能存在依赖关系。如下图所示:

zabbix Server 4.0 触发器(Trigger)篇

  我们假设Zabbix Server和我们被监控的打印机,路由器等网络设备,服务器都连接到核心交换机上了,如果此时的核心交换宕机了(即该设备变得不可用),其背后的所有主机都无法正常访问。如果所有主机都配置了触发器并定义了相关通知功能,相关人员将会接收到许多告警信息,这既不利于快速定位问题,也会浪费资源。正确定义的触发器依赖关系可以避免类似情况的发生,它将使用通知机制仅发送最根本问题先关的告警。(也就是说我们合理定义了触发器的依赖关系,当核心交换机宕机时,并不会所有配置告警都触发,而是先判断核心交换机是否挂掉,把最精准的故障定位报出来!)

  需要注意的是,目前zabbix不能够直接定义主机间的依赖关系,其依赖关系仅能通过触发器来定义。

四.触发器(Trigger)等级

  触发器等级用于标识时间的严重性。zabbix支持以如下表 所示的等级。下图摘自官方网站:https://www.zabbix.com/documentation/4.0/manual/config/triggers/severity中文链接戳我)。

zabbix Server 4.0 触发器(Trigger)篇

五.创建触发器(Trigger)

1>.如下图所示,找到我们要定义触发器的主机

zabbix Server 4.0 触发器(Trigger)篇

2>.点击Create trigger

zabbix Server 4.0 触发器(Trigger)篇

3>.根据zabbix内置的选择器,我们根据匹配规则自动生成触发器表达式

zabbix Server 4.0 触发器(Trigger)篇

4>.点击添加(注意下图只是配置Trigger页面,点击图中的“Dependencies”可以配置相应的依赖关系!)

zabbix Server 4.0 触发器(Trigger)篇

5>.添加触发器成功

zabbix Server 4.0 触发器(Trigger)篇

6>.查看主机配置,发现多出来一个触发器

zabbix Server 4.0 触发器(Trigger)篇

7>.查看触发器相关信息

zabbix Server 4.0 触发器(Trigger)篇

8>. 查看最新的数据

zabbix Server 4.0 触发器(Trigger)篇

9>.查看item的Graph图形(如果有遇到中文乱码问题,可参考:https://www.cnblogs.com/yinzhengjie/p/10386196.html中的解决方案。)

zabbix Server 4.0 触发器(Trigger)篇

六.模拟实验环境让触发器生效

1>.在zabbix server服务器发包到node102.yinzhengjie.org.cn主机上

[root@node101.yinzhengjie.org.cn ~]# yum -y install epel-release                                           #安装epel源
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB ::
extras | 3.4 kB ::
mysql-connectors-community | 2.5 kB ::
mysql-tools-community | 2.5 kB ::
mysql56-community | 2.5 kB ::
updates | 3.4 kB ::
zabbix | 2.9 kB ::
zabbix-non-supported | B ::
Resolving Dependencies
--> Running transaction check
---> Package epel-release.noarch :- will be installed
--> Finished Dependency ResolutionDependencies Resolved======================================================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================================================
Installing:
epel-release noarch - extras kTransaction Summary
======================================================================================================================================================================================
Install PackageTotal download size: k
Installed size: k
Downloading packages:
epel-release--.noarch.rpm | kB ::
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : epel-release--.noarch /
Verifying : epel-release--.noarch / Installed:
epel-release.noarch :- Complete!
[root@node101.yinzhengjie.org.cn ~]#

[root@node101.yinzhengjie.org.cn ~]# yum -y install epel-release         #安装epel源

[root@node101.yinzhengjie.org.cn ~]# yum -y install hping3                                                  #安装hping3工具包
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
epel/x86_64/metalink | 6.8 kB ::
* base: mirrors.aliyun.com
* epel: mirror.premi.st
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
epel | 4.7 kB ::
(/): epel/x86_64/group_gz | kB ::
(/): epel/x86_64/updateinfo | kB ::
(/): epel/x86_64/primary_db | 6.7 MB ::
Resolving Dependencies
--> Running transaction check
---> Package hping3.x86_64 :0.0.-.el7 will be installed
--> Processing Dependency: libpcap.so.()(64bit) for package: hping3-0.0.-.el7.x86_64
--> Processing Dependency: libtcl8..so()(64bit) for package: hping3-0.0.-.el7.x86_64
--> Running transaction check
---> Package libpcap.x86_64 :1.5.-.el7 will be installed
---> Package tcl.x86_64 :8.5.-.el7 will be installed
--> Finished Dependency ResolutionDependencies Resolved======================================================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================================================
Installing:
hping3 x86_64 0.0.-.el7 epel k
Installing for dependencies:
libpcap x86_64 :1.5.-.el7 base k
tcl x86_64 :8.5.-.el7 base 1.9 MTransaction Summary
======================================================================================================================================================================================
Install Package (+ Dependent packages)Total download size: 2.1 M
Installed size: 4.9 M
Downloading packages:
warning: /var/cache/yum/x86_64//epel/packages/hping3-0.0.-.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
Public key for hping3-0.0.-.el7.x86_64.rpm is not installed
(/): hping3-0.0.-.el7.x86_64.rpm | kB ::
(/): tcl-8.5.-.el7.x86_64.rpm | 1.9 MB ::
(/): libpcap-1.5.-.el7.x86_64.rpm | kB ::
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total kB/s | 2.1 MB ::
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Importing GPG key 0x352C64E5:
Userid : "Fedora EPEL (7) <epel@fedoraproject.org>"
Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5
Package : epel-release--.noarch (@extras)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : :tcl-8.5.-.el7.x86_64 /
Installing : :libpcap-1.5.-.el7.x86_64 /
Installing : hping3-0.0.-.el7.x86_64 /
Verifying : :libpcap-1.5.-.el7.x86_64 /
Verifying : :tcl-8.5.-.el7.x86_64 /
Verifying : hping3-0.0.-.el7.x86_64 / Installed:
hping3.x86_64 :0.0.-.el7 Dependency Installed:
libpcap.x86_64 :1.5.-.el7 tcl.x86_64 :8.5.-.el7 Complete!
[root@node101.yinzhengjie.org.cn ~]#

[root@node101.yinzhengjie.org.cn ~]# yum -y install hping3             #安装hping3工具包

[root@node101.yinzhengjie.org.cn ~]# hping3 --faster node102.yinzhengjie.org.cn
HPING node102.yinzhengjie.org.cn (eth0 172.30.1.102): NO FLAGS are set, headers + data bytes
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.4 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.3 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.3 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.3 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.4 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.4 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.4 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
len= ip=172.30.1.102 ttl= DF id= sport= flags=RA seq= win= rtt=0.2 ms
..........

[root@node101.yinzhengjie.org.cn ~]# hping3 –faster node102.yinzhengjie.org.cn

2>.查看最新数据的流量图

zabbix Server 4.0 触发器(Trigger)篇

3>.查看zabbix的Dashboard界面

zabbix Server 4.0 触发器(Trigger)篇

七.item(监控项)可以定义多个触发器

1>.克隆我们之间的触发器,我们将触发器的值稍作修改

zabbix Server 4.0 触发器(Trigger)篇

2>.修改触发器的值和触发器的名称

zabbix Server 4.0 触发器(Trigger)篇

3>.重复上述步骤,我们可以再clone一个触发器,添加成功后,我们就会成功添加3个触发器

zabbix Server 4.0 触发器(Trigger)篇

4>.查看item的触发器个数

zabbix Server 4.0 触发器(Trigger)篇

5>.查看Graph图形

zabbix Server 4.0 触发器(Trigger)篇

6>.查看Dashboard

zabbix Server 4.0 触发器(Trigger)篇

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,907
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,432
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,247
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,058
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,690
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,727