Ad Widget

Collapse

Помогите разобраться с зависимостями тригеров

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • VladOst
    Junior Member
    • Jun 2018
    • 12

    #1

    Помогите разобраться с зависимостями тригеров

    Схематически топология сети примитивная. Есть головной офис, в котором установлен Zabbix сервер и роутер, который поднимает VPN подключения до удалённых офисов по VPN (удалённые офисы на 4G модемах, т.ч. роутер в главном офисе фактически принимает от них запросы на создание VPN). Соответственно, надо на Заббиксе мониторить по SNMP оборудование, находящееся в удалённых офисах. Как правильно создать зависимости? Сейчас делаем следующим образом:
    1. Мониторинг доступности с Заббикса самого роутера в головном офисе
    2. Мониторинг доступности Интернет канала в головном офисе (Зависимость от триггера 1)
    3. Мониторинг VPN интерфейса на головном роутере (Зависимость от триггера 1, и от триггера 2)
    4. Мониторинг доступности устройства в удалённой подсети (Зависимость от триггера 3, от триггера 2, от триггера 1)
    5. Снятие показаний с самого устройства по SNMP.

    "Мониторинг доступности" делаем через PING раз в минуту (5 раз пинг не пришёл - зажигаем триггер). Статус VPN канала выдаёт по SNMP сам роутер (Микротик). Всё бы ничего, но если VPN каналов десятки, и в каждой удалённой сети по десяткам устройств, то очень уж напряжно для каждого устройства прописывать цепочку из зависимости минимум 5 триггеров. Ведь Заббикс не поддерживает рекурсивный просмотр триггеров...
    Если на удалённом устройстве поставить зависимость только от триггера 3, то сам триггер 3 не сработает (т.к. на нём зависимость от 2), и я получу кучу сработок недоступности устройств за VPN, хотя недоступен только VPN канал...
    Неужели нельзя назначить, например, на устройстве зависимость от триггера 3, а Заббикс сам рекурсивно уже посмотрит, что триггер 3 зависит от триггера 2, а тот в свою очередь от триггера 1?
    Click image for larger version

Name:	Diagram.png
Views:	194
Size:	147.8 KB
ID:	365199
  • Evgeniy
    Senior Member
    • May 2012
    • 157

    #2
    https://www.zabbix.com/documentation...s/dependencies

    Примеры нескольких зависимостей

    Например, узел сети Хост находится за маршрутизатором Роутер2, а Роутер2 находится за Роутер1.
    Zabbix - Роутер1 – Роутер2 - Хост Если Роутер1 недоступен, то очевидно, что и Хост и Роутер2 недоступны. И мы не хотим получать три оповещения с информацией о недоступности Хост, Роутер1 и Роутер2.
    Для этого случая, мы зададим эти зависимости:

    триггер 'Хост недоступен' зависит от триггера 'Роутер2 недоступен' триггер 'Роутер2 недоступен' зависит от триггера 'Роутер1 недоступен' Перед изменением состояния триггера 'Хост недоступен', Zabbix проверит зависимости у соответствующих триггеров. Если они будут найдены, и один из триггеров в находится в состоянии ПРОБЛЕМА, то состояние триггера не будет изменено и, следовательно, действия не будут выполнены и оповещения не будут отправлены.
    Zabbix выполняет эту проверку рекурсивно. Если Роутер1 или Роутер2 недоступен, то триггер у Хост не будет изменен.
    P.S. Чтобы не получать лишних сработок настройте правильно триггеры. Например, триггер 4 не должен срабатывать первее триггеров 1,2,3.
    Last edited by Evgeniy; 03-09-2018, 09:40.

    Comment

    • VladOst
      Junior Member
      • Jun 2018
      • 12

      #3
      Спасибо, понял! Надо было просто первый узел сзязи проверять, например, тремя пингами, следующий за ним пятью, и само устройство семью... Тогда получтся, что Устройство перейдёт в ошибку гарантированоо позже всех предыдущих, и не будет лишних триггеров в индикации. Странно, что я до последней строки раньше этот мануал не прочитал

      Comment

      Working...