Я использую Nagios для мониторинга хостов Windows. Я использую Nagios 3.5, работающий на сервере Centos 7. Следующие пакеты были установлены из официальных репозиториев и репозитория EPEL:
nagios
nagios-plugins-all
nagios-plugins-nrpe
Пока что я использую метод check_nt для выполнения некоторых базовых проверок на хостах Windows. Это нормально работает.
Теперь я хочу использовать check_hwinfo плагин для сбора информации о хостах в одном месте. Этот плагин требует NRPE для работы.
В файле commands.cfg я добавил:
define command{
command_name check_hwinfo
command_line $USER1$/check_nrpe_hwinfo $HOSTNAME$ $HOSTADDRESS$
}
В nrpe.cfg я добавил:
command[check_hwinfo]=/usr/bin/sudo /usr/lib64/nagios/plugins/check_hwinfo.pl
command[check_hwinfo_csv]=/usr/bin/sudo /usr/lib64/nagios/plugins/check_hwinfo.pl -t csv
command[check_hwinfo]=c:\windows\system32\cscript.exe //NoLogo //T:10 "C:check_hwinfo\check_hwinfo.wsf"
command[check_hwinfo_csv]=c:\windows\system32\cscript.exe //NoLogo //T:10 "C:\check_hwinfo\check_hwinfo.wsf" /sep:csv
Я скопировал сценарий check_hwinfo.pl в папку / usr / lib64 / nagios / plugins и сделал его исполняемым с такими же разрешениями, что и другие сценарии в папке.
Я добавил эти строки в '/ etc / sudoers' для выполнения без пароля:
Defaults:nagios !requiretty
nagios ALL=NOPASSWD: /usr/lib/nagios/plugins/check_hwinfo.pl "", /usr/lib/nagios/plugins/check_hwinfo.pl -t csv
На стороне клиента я запускаю NSClient ++ на узлах Windows, которые я отслеживаю. Для check_hwinfo я сделал папку C: \ check_hwinfo и поместил внутрь файл check_hwinfo.wsf, необходимый для запуска теста в Windows.
Это мое nsclient.ini а это мой nsclient-full.ini файлы.
В то время как все остальные проверки (через check_nt) работают нормально, check_hwinfo отказывается работать, что бы я ни пытался. Статус службы на странице Nagios - «ПРЕДУПРЕЖДЕНИЕ», а сообщение об ошибке - «Нет обработчика для команды: check_hwinfo_csv».
У кого-нибудь есть опыт работы с check_hwinfo? Не могли бы вы указать мне правильное направление?
ОБНОВЛЕНИЕ 1:
При попытке запустить check_nrpe вручную я получаю следующее:
./check_nrpe -H 192.168.10.13 -c CheckDisk
No handler for command: checkdisk
Это то же самое, что и сообщение об ошибке, которое я получаю в графическом интерфейсе от плагина check_hwinfo.
No handler for command: check_hwinfo_csv
ОБНОВЛЕНИЕ 2:
В клиенте Windows в файле nsclient-full.ini есть следующие определения:
check_hwinfo=C:\check_hwinfo\check_hwinfo.wsf
check_hwinfo_csv=C:\check_hwinfo\check_hwinfo.wsf -t csv
Эта ошибка указывает на то, что у вас не включен внешний обработчик сценариев. К счастью, nsclient ++ имеет отличную документацию по этому поводу.
(Похоже, они в настоящее время переделывают вики / документацию, так что вы можете проверить Старый тоже, если чего-то не хватает.)