• (22)zabbix触发器依赖关系详解


     

    概述

    zabbix触发器可以设置依赖性,例如我配置了两个触发器,一个触发器定义www.ttlsa.com这个HOST是否在运行中,另一个是www.ttlsa.com的网络是否通畅。

    假如网络出现故障,但是ttlsa服务器并未出现故障,我们依旧会收到这两个触发器给到的故障通知。
    现在的问题很明显,HOST是正常的,肯定不希望收到他的故障信息,因为它正常工作。所以在配置HOST触发器时,我们需要增加依赖关系,依赖网络是否畅通这个触发器。一旦网络出现故障,将不会出发HOST故障的通知。单个触发器可以依赖于多个触发器。

    触发器依赖要点

    ·   一台HOST的触发器可以依赖其他HOST的触发器,但是注意不要有死循环依赖。比如A依赖B,B依赖C,C又依赖A。一个圆圈,没完没了, 会报错。

    · 一个模板的触发器可以依赖另外一个模板的触发器,例如模板A触发器依赖模板B触发器。一个HOST要链接A模板,那么它同时要链接B模板(因为模板A中的触发器依赖了模板B中的触发器),但是HOST可以单独链接模板B(B是被依赖)。在一个host单独链接template A,结果出现错误,所以别忘记了一起把template B也链接到HOST中。

    ·  模板中的触发器可以依赖HOST中的触发器。如果某个HOST链接这类模板,那么HOST创建的相应的触发器也同样会依赖那个HOST的触发器。举个官方的例子,某个模板中的一些触发器依赖了route/主机的触发器,凡事链接(理解为套用)了这个模板的机器都会依赖这些router/主机。说了那么多,其实就是继承了。

    ·  HOST中的触发器不能依赖模板中的触发器

    配置

    编辑触发器,选择选项卡“dependencies”,点击Add,选择你需要依赖的触发器,如下图:

    然后点击保存,可以看到触发器多了一个depend on

    多个依赖实例

    借用官方文档的示例,Host前面有个Router2,Router2前面有Router1,如下:

    如果Router1挂了,很明显Router2和Host连不上,我们不希望收到关于连不上Router2和HOST的通知,因此,我们定义了如下依赖关系:

    在触发器将Host的状态改变为'Host is down'之前,它会检查host相关的依赖,这时候如果发现它依赖的触发器只要出现一个problem状态,那么当前触发器状态不会变化,这样一来action不会执行,报警通知sms/email自然也不会发送了。

    zabbix会递归执行检测,如果router1或者router2有一个出现连不上,那么Host的触发器不会有任何的改变。

  • 相关阅读:
    【转】Android Hook框架Xposed详解
    【转】不需要 Root,也能用上强大的 Xposed 框架:VirtualXposed
    【转】手把手教你读取Android版微信和手Q的聊天记录(仅作技术研究学习)
    【转】关于音频焦点的理解
    test
    Linux只下载不安装软件包
    Linux用户创建/磁盘挂载相关命令
    telnet的安装配置及xinetd的讨论
    vsftp安装配置教程
    wordpress安装教程
  • 原文地址:https://www.cnblogs.com/wyzhou/p/10832982.html
Copyright © 2020-2023  润新知