Как правильно разделить хосты по группам в Icinga2?
Я просто мигрирую из Nagios в Icinga2 и у меня есть вопрос. Например, у меня есть несколько хостов, связанных с группой по их функционалу, например, "сеть". Но я хочу проверить температуру для этой группы с разными порогами. Например, для host1 60C обычно, но для host2 я хочу установить порог не более 55C.
Какова наилучшая стратегия организации хостов, если я должен создать отдельные группы, такие как "web_low_temp", "web_high_temp" и т. Д., И связать отдельные команды проверки для этих групп, или, может быть, кто-нибудь знает лучшее решение?
ps Я довольно новичок в Icinga2, пожалуйста, поделитесь своим опытом.
1 ответ
Для этого я бы не зависел от групп хостов - их можно использовать для группировки хостов для внешних пользовательских интерфейсов и для справки, но я бы порекомендовал изучить альтернативные условия сопоставления правил применения, такие как
- настраиваемые атрибуты, такие как строки, числа, логические значения, массивы или (вложенные) словари
- шаблон имени совпадает с подстановочными знаками / регулярным выражением
- сопоставлять атрибуты объекта, такие как подсети IP-адресов
Конечно, вы можете использовать правило назначения присваивать / игнорировать, где выражения для сервисов также внутри определения назначения членства в вашей группе хостов, если они совпадают.
Еще одна интересная вещь, которую вы можете сделать с Icinga 2 - использовать apply для правил и сервисов grnerate на основе пользовательских атрибутов хоста, таких как массив или словарь. Таким образом, если вы захотите, вы передадите всю информацию о проверке с хоста в службу, применяющую правила.
Посмотрите документы для подробного объяснения и примера: http://docs.icinga.org/icinga2/latest/doc/module/icinga2/chapter/monitoring-basics