Я только что попробовал check_mysqld что я нашел на monitoringexchange.org, но оказалось, что он выводит в формате, который ни NRPE 2.12, ни Nagios 3.2.1 не понимают.
Может ли кто-нибудь порекомендовать проверочный плагин для Nagios 3, который работает с NRPE?
Что бы вы хотели проверить?
Я использую check_mysql, который поставляется с пакетом плагинов в моем модуле Centos nagios, для удаленного мониторинга MySQL. При такой настройке нет необходимости в NRPE.
NRPE очень востребован в ситуациях, когда MSQL не должен быть открыт для запросов от хостов, отличных от localhost, или когда процесс mysqld не может быть запущен, чтобы разрешить изменение конфигурации.
~
Добавить команды для проверки через NRPE действительно просто. Для Mysql Добавьте следующую строку в свой файл nrpe.cfg:
команда [check_mysql] = sudo / usr / lib / nagios / plugins / check_mysql -u'user '-p'pass'
Вот определение вашей команды для Nagios: $ USER1 $ / check_nrpe -H $ HOSTADDRESS $ -c check_mysql
Добавьте эту строку в свой / etc / sudoers: nagios ALL = (ALL) NOPASSWD: / usr / lib / nagios / plugins / check_mysql
Убедитесь, что вы не разрешаете передавать команде параметры командной строки: dont_blame_nrpe = 0
~
Чтобы создать любую другую команду NRPE, замените check_mysql именем команды, которую вы хотите создать, и путем к самой команде после sudo. То же самое и с файлом sudoers.
Я попробовал плагин check_mysqld от Уильяма Лейбзона, и он отлично работает. Вы действительно можете контролировать гораздо больше переменных, чем стандартный плагин nagios. Я просто сбросил плагин в / usr / local / nagios / libexec и запустил его из cli, и он работает. Я добавил его в проверки nagios (на самом деле opsview, но движок - nagios), и теперь у меня хорошая графика. Так что, возможно, вы что-то неправильно настроили.
Несколько вещей: запустите плагин от имени пользователя nagios из оболочки. Если база данных является удаленным сервером, убедитесь, что пользователь и сервер, с которого вы используете подключаемый модуль, могут запрашивать сервер mysql и базу данных, из которой вы извлекаете данные (стандарт - это база данных: mysql).
Мой чек такой:
nagios@host:$ cd /usr/local/nagios/libexec
$./check_mysqld.pl -H hostname -u user -a slow_queries -w 44 -c 55 -f
MYSQL 5.0.51a-24+lenny4 OK - slow_queries=0 | slow_queries=0
-u - это пользователь mysql на сервере базы данных. У этого пользователя базы данных нет пароля для запроса базы данных mysql.