Ad Widget

Collapse

Некорректно работают зависимости тригг&a

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Aurora
    Junior Member
    • Apr 2014
    • 8

    #1

    Некорректно работают зависимости тригг&a

    Есть проблема

    Имеем сервер zabbix в интернете и сервера в локальной сети, один из которых (MD_HQ_TMG-01) смотрит в интернет и раздаёт его остальным. На всех серверах стоит агент.

    Стоит задача получать сообщение по почте, если какой-либо из серверов будет недоступен. Соответственно, чтобы при пропадании пограничного сервера не приходило сообщение о недоступности всех остальных серверов нужно сделать зависимость их триггеров от триггера этого сервера. Всё сделал, но сообщения всё равно приходят.

    Триггер для пограничного сервера следующий:
    {MD_HQ_TMG-01:agent.ping.nodata(10m)}=1

    Для остальных серверов триггер шаблона:
    {Template_Windows_Baseline_MDM_HQ:agent.ping.nodat a(10m)}=1
    Dependencies:
    MD_HQ_TMG-01: Zabbix agent on {HOST.NAME} is unreachable for 10 minutes

    Пробовал уменьшать время на триггере MD_HQ_TMG-01 - всё равно зависимые триггеры срабатывают и присылают оповещение.

    Что я делаю не так ?
  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    Originally posted by Aurora
    Есть проблема

    Имеем сервер zabbix в интернете и сервера в локальной сети, один из которых (MD_HQ_TMG-01) смотрит в интернет и раздаёт его остальным. На всех серверах стоит агент.

    Стоит задача получать сообщение по почте, если какой-либо из серверов будет недоступен. Соответственно, чтобы при пропадании пограничного сервера не приходило сообщение о недоступности всех остальных серверов нужно сделать зависимость их триггеров от триггера этого сервера. Всё сделал, но сообщения всё равно приходят.

    Триггер для пограничного сервера следующий:
    {MD_HQ_TMG-01:agent.ping.nodata(10m)}=1

    Для остальных серверов триггер шаблона:
    {Template_Windows_Baseline_MDM_HQ:agent.ping.nodat a(10m)}=1
    Dependencies:
    MD_HQ_TMG-01: Zabbix agent on {HOST.NAME} is unreachable for 10 minutes

    Пробовал уменьшать время на триггере MD_HQ_TMG-01 - всё равно зависимые триггеры срабатывают и присылают оповещение.

    Что я делаю не так ?
    Пробовали ждать 20 минут и смотреть в список активных триггеров? По идеи ситуация происходит примерно так:
    • Возьмем для простоты что интервал 'item update' у вас везде 5 минут.
    • Проверяем MD_HQ_TMG-01 и он доступен
    • Ждем минуту (потому что проверяются какие то совершенно другие айтемы)
    • Пропадает интернет на MD_HQ_TMG-01
    • Проверяем "сервера за MD_HQ_TMG-01" и видим что они недоступны (начинаем отсчитывать 10 минут).
    • Ждем 4 минуты и проверяем MD_HQ_TMG-01, видим что он недоступен и начинаем отсчитывать 10 минут теперь уже для него
    • ...
    • "Первые" 10 минут вышли - шлем пачку оповещений о серверах "за MD_HQ_TMG-01"
    • Вышли 10 минут для MD_HQ_TMG-01 шлем оповещение о нем (по идеи в этот момент в интерфейсе триггеры о серверах за MD_HQ_TMG-01 должны скрыться.


    Решения как минимум 2:
    1. Уменьшить время срабатывания триггера для MD_HQ_TMG-01 так, что бы триггер гарантированно сработал если хост недоступен. Например если item update у вас 1 минута, то {MD_HQ_TMG-01:agent.ping.nodata(3m)}=1
    2. Переписать триггеры для внутренних хостов примерно так: "{HOSTNAME:agent.ping.nodata(10m)}=1&{MD_HQ_TM G-01:agent.ping.last()}=1" (Читает как: Хост недоступен более 10 минут и последняя проверка MD_HQ_TMG-01 говорит что MD_HQ_TMG-01 доступен)

    Comment

    • Aurora
      Junior Member
      • Apr 2014
      • 8

      #3
      Originally posted by yukra
      Решения как минимум 2:
      1. Уменьшить время срабатывания триггера для md_hq_tmg-01 так, что бы триггер гарантированно сработал если хост недоступен. Например если item update у вас 1 минута, то {md_hq_tmg-01:agent.ping.nodata(3m)}=1
      2. Переписать триггеры для внутренних хостов примерно так: "{hostname:agent.ping.nodata(10m)}=1&{md_hq_tm g-01:agent.ping.last()}=1" (Читает как: Хост недоступен более 10 минут и последняя проверка md_hq_tmg-01 говорит что md_hq_tmg-01 доступен)
      Первое решение совсем не помогает
      Второе решение помогло, но при "возврате" доступности сервера md_hq_tmg-01 приходят письма от остальных серверов, что они упали и сразу поднялись
      Как-то можно решить эту проблему?

      Comment

      • yukra
        Senior Member
        • Apr 2013
        • 1359

        #4
        Originally posted by Aurora
        Первое решение совсем не помогает
        Второе решение помогло, но при "возврате" доступности сервера md_hq_tmg-01 приходят письма от остальных серверов, что они упали и сразу поднялись
        Как-то можно решить эту проблему?
        Так давайте проверим когда md_hq_tm g-01 поднялся.
        Code:
        {hostname:agent.ping.nodata(10m)}=1&{md_hq_tm g-01:agent.ping.last()}=1&{md_hq_tm g-01:agent.ping.count(5m)}<3
        Зы я не люблю использовать agent.ping потому что либо 1, либо .nodata, а предпочитаю использовать православный icmpping* проверки, у которых в любом случае есть какое то значение, а не nodata. Это возволяет использовать разные функции типа min, max, diff прочие.

        Comment

        Working...