Итак. Снова поднимаю старый вопрос, на который я так и не нашёл приемлимого решения.
Есть Шлюз и есть Сервер. На Сервере делаются проверки ping и некоторые другие, для которых срабатывают триггеры "нет данных" если значение не получено. Для Шлюза делаем только ping.
Разумеется, если проблема с сетью и для шлюза срабатывает триггер "фатальная потеря пакетов", я не хочу видеть всю ту кучу сообщений о том, что нет данных и о том, что такая же потеря пакетов для Сервера. Но я так и не понял как это реализовать.
Что я пробовал.
1. Зависимость триггеров Сервера от триггера Шлюза. Не подходит! Все проверки заведены через шаблоны, а Сервер у меня не один, а много и мне совершенно не нужны зависимости других серверов, от постороннего для них Шлюза. Делать отдельные триггеры - тоже не подходит! Зачем мне тогда шаблон, если мне каждый раз надо переделывать для каждого Сервера зависимости триггеров? Да и мягко говоря это КРАЙНЕ хлопотно, когда серверов десятки, а то и сотни.
2. Глобальная корелляция. Мне говорили, что можно сделать через неё. Да, я завёл на триггеры Сервера тэг "NODATA" поставил туда {HOST.NAME}, создал корелляцию, что при срабатывании триггера Шлюза, я закрываю все события с тегом NODATA равным "Сервер". Это действительно работает! ОДИН РАЗ! Т.е. при срабатывании корелляции, у меня закрываются проблемные триггеры, а затем (поскольку данные по-прежнему недоступны) они открываются снова, но корелляция их больше не закрывает! Кроме того, есть ещё одна засада. Поскольку все проверки асинхронны во времени, то срабатывание триггера Шлюза, по которому сработает корелляция может произойти РАНЬШЕ, чем сработают триггеры "нет данных" на Сервере. В этом случае вообще толку от этой корелляции не будет никакого!
Итак, вопрос по-прежнему открыт! Как НОРМАЛЬНО сделать зависимость одного хоста от другого, чтобы в случае проблем с первым хостом, проблем со вторым хостом я не видел! В том же Nagios это решается совершенно просто и элементарно, указанием свойства Parent для узла. Неужели в Zabbix нет никакого способа это сделать? Не верю!
Есть Шлюз и есть Сервер. На Сервере делаются проверки ping и некоторые другие, для которых срабатывают триггеры "нет данных" если значение не получено. Для Шлюза делаем только ping.
Разумеется, если проблема с сетью и для шлюза срабатывает триггер "фатальная потеря пакетов", я не хочу видеть всю ту кучу сообщений о том, что нет данных и о том, что такая же потеря пакетов для Сервера. Но я так и не понял как это реализовать.
Что я пробовал.
1. Зависимость триггеров Сервера от триггера Шлюза. Не подходит! Все проверки заведены через шаблоны, а Сервер у меня не один, а много и мне совершенно не нужны зависимости других серверов, от постороннего для них Шлюза. Делать отдельные триггеры - тоже не подходит! Зачем мне тогда шаблон, если мне каждый раз надо переделывать для каждого Сервера зависимости триггеров? Да и мягко говоря это КРАЙНЕ хлопотно, когда серверов десятки, а то и сотни.
2. Глобальная корелляция. Мне говорили, что можно сделать через неё. Да, я завёл на триггеры Сервера тэг "NODATA" поставил туда {HOST.NAME}, создал корелляцию, что при срабатывании триггера Шлюза, я закрываю все события с тегом NODATA равным "Сервер". Это действительно работает! ОДИН РАЗ! Т.е. при срабатывании корелляции, у меня закрываются проблемные триггеры, а затем (поскольку данные по-прежнему недоступны) они открываются снова, но корелляция их больше не закрывает! Кроме того, есть ещё одна засада. Поскольку все проверки асинхронны во времени, то срабатывание триггера Шлюза, по которому сработает корелляция может произойти РАНЬШЕ, чем сработают триггеры "нет данных" на Сервере. В этом случае вообще толку от этой корелляции не будет никакого!
Итак, вопрос по-прежнему открыт! Как НОРМАЛЬНО сделать зависимость одного хоста от другого, чтобы в случае проблем с первым хостом, проблем со вторым хостом я не видел! В том же Nagios это решается совершенно просто и элементарно, указанием свойства Parent для узла. Неужели в Zabbix нет никакого способа это сделать? Не верю!
Comment