Назад | Перейти на главную страницу

Настройка дополнительного ip для хостов в nagios 3

Я только что перешел с nagios2 на nagios3, в основном для функции настраиваемых макросов.
В моей сети есть два типа серверов:

Я пытаюсь установить значение по умолчанию для макроса $ _HOSTIPSNMP $ в шаблоне хоста ..

define host {
       name linux-server
       ...
       _IPSNMP                 $HOSTADDRESS$
       ...
}

Я предположил, что все хосты автоматически установят $ _HOSTIPSNMP $ с содержимым $ HOSTADDRESS $

Если я смогу заставить это работать, вторая часть будет заключаться в установке пользовательских значений для каждого хоста для $ _HOSTIPSNMP $ в стиле:

define host {
       use linux-server
       address           123.123.123.123
       _IPSNMP        192.168.1.10
}

Итак, $ _HOSTIPSNMP $ всегда имеет разумное значение, и я могу установить его на все, что захочу, когда мне нужно.

Ошибка, с которой я столкнулся, заключается в следующем: кажется, что _HOSTIPSNMP не заменяется должным образом для значения переменной, а вместо этого заменяется на имя переменной.

cmd=[/usr/lib/nagios/plugins/check_snmp_storage.pl '-H' 'HOSTADDRESS'
'-C' 'comunity' '-m' '/' '-w' '80%' '-c' '85%']
output=[ERROR: Unable to resolve UDP/IPv4 address 'HOSTADDRESS'.

Я попытался изменить цитирование $ HOSTADDRESS $ в шаблоне, но ничего из того, что я пробовал, не сработало.

Спасибо за вашу помощь.

Что ж, в конце единственным решением для этого было сообщить всем хостам значение _IPSNMP.
Кажется, что макросы не разрешаются рекурсивно, и это предполагаемое поведение (по крайней мере, в nagios 3)
По крайней мере, я умел делать то, что хотел, аккуратно. Всем рекомендую использовать макросы.

Согласно Nagios документация в макросах правильным способом ссылки на _IPSNMP, определенного выше, будет $ _HOSTIPSNMP $