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

Плагин Nagios отображает неверные результаты

Я хочу проверить количество баз данных MySQL. Я создал простой тестовый «плагин»:

Расположение: `/ var / lib64 / nagios / plugins

тест:

#!/bin/bash

db=$(mysql -e 'SHOW DATABASES' | wc -l)
echo $db

Он работает с локальной машины:

# ./test 
71

Конфигурация NRPE:

command[test]=/usr/lib64/nagios/plugins/test

Сервер Nagios:

# ./check_nrpe -H 192.168.1.10 -c "test"
0

Reagrds

Команды NPRE обычно выполняются как nagios. Похоже, ваш запрос на самом деле проверяет, сколько баз данных вы nagios пользователь может видеть.

Есть несколько вариантов решения вашей проблемы:

  • Добавьте информацию о пользователе и пароле в вашу команду (mysql -uroot -proot -e 'SHOW DATABASES' | wc -l);
  • Добавить nagios на ваш sudoers файл, чтобы он мог запускать mysql как root (nagios ALL=(ALL) NOPASSWD:/usr/bin/mysql -e 'SHOW DATABASES');
  • Добавьте пользователя nagios в свою базу данных с достаточными разрешениями для просмотра всех баз данных (документация mysql) - РЕКОМЕНДУЕМЫЕ;

Кстати, вам следует проконсультироваться http://nagios.sourceforge.net/docs/3_0/pluginapi.html поскольку вывод, показанный в сценарии вашего плагина, весьма нестандартен для Nagios, и f вызовет проблемы.