Установка системы мониторинга Nagios на Centos 7

Nagios — программа с открытым кодом, предназначенная для мониторинга компьютерных систем и сетей: наблюдения, контроля состояния вычислительных узлов и служб, оповещения администратора в том случае, если какие-то из служб прекращают (или возобновляют) свою работу.

Обладая поддержкой всевозможных протоколов, огромного количества готовых плагинов и возможностью мониторинга при помощи скриптов собственного написания на различных языках программирования (Shell, C++, Perl, Python, PHP, C# и другие) делают Nagios незаменимым и очень мощным инструментом системного администратора.

Содержание:


Установка Nagios

Настраиваем LAMP.

Устанавливаем необходимые пакеты:

Создаём пользователя «nagios» и группу «nagcmd», которая необходима для управления через web-интерфейс. А также добавим в группу «nagcmd» пользователя вашего web-сервера.

Переходим в каталог куда мы складываем исходники, скачиваем архив с исходным кодом последней версии Nagios Core с официального сайта (на момент написания статьи доступна версия 4.1.1), разархивируем и переходим в папку nagios.

Конфигурируем с указанным параметром:

Компилируем:

Устанавливаем Nagios, командный режим, init скрипты, файлы конфигурации по умолчанию и web-интерфейс:

Установка плагинов Nagios

Скачиваем последнюю версию Nagios Plugins с официального сайта.

Конфигурируем исходники:

Компилируем:

Устанавливаем:

Nagios установлен, осталось настроить его.

Настройка Nagios

Откройте главный конфигурационный файл Nagios в вашем любимом текстовом редакторе.

Укажем директорию в которой будут храниться наши файлы конфигурации, находим и раскоментируем строку:

ИЛИ для удобства (ну по как по мне) назовём каталог иначе, вместо  servers зададим conf.d:

Сохраняемся и выходим.

Теперь, создадим указанную выше директорию:

ИЛИ

Редактируем файл содержащий список контактов на которые будут отправляться уведомления:

Прописываем свой email в следующую строку вместо [email protected]:

Сохраняемся и выходим.

Возможно надо будет создать /usr/local/nagios/var/nagios.lock в котором хранится PID процесса nagios.

Настраиваем Apache

Используем htpasswd для создания пользователя «nagiosadmin» (лучше использовать другое имя), для доступа к web-интерфейсу Nagios:

Примечание: необходима поддержка обработки cgi-скриптов. В секции <IfModule mime_module>, файла конфигурации web-сервера httpd.conf, должна быть раскоментирована строка «AddHandler cgi-script .cgi».

Запускаем Nagios и рестартуем Apache:

Чтобы Nagios запускался автоматически при старте системы нужно выполнить:

!!!ВАЖНО!!! Лучше сразу проверить запускается ли он при старте системы, т.к. иногда он не желает корректно отрабатывать. В этом случае прийдётся редактировать /etc/rc.local.

Если настроен firewall добавляем в исключения:

Проверка конфигурации на ошибки

После внесения изменений в конфигурацию Nagios очень важно убедиться, что нет никаких проблем, ошибок синтаксиса и программа запустится нормально. Для этого существует команда проверки конфигурации:

Эта команда сохранит ваше время и нервы, т.к. умеет, довольно точно, сообщать  где именно присутствуют ошибки конфигурации.

Заметки

Если, при управлении через web-интерфейс, появляется ошибка:

Error: Could not stat() command file 

Попробуйте отключить SELinux (необходима перезагрузка) или прописать setenforce 0 .

####

Для работы скрипта проверяющего Samba шару нужно установить клиент:

 ####

При мониторинге с использованием плагинов, которые имеют warning и critical значения, используются параметры команды -c -w, которые ведут себя немного странно.

Вот несколько примеров:
No warning если значение между 0 и 60:
-w 0:60

No critical если значение между 0 и 80
-c 0:80

Или другим иначе:
critical если значение между XXX и 80
-c XXX:80

warning если значение между 80 и 60
-w 80:60

####

Для написания своих плагинов или скриптов мониторинга понадобятся Nagios Exit Codes. Это код возвращаемый от скрипта или плагина, который указывает на результат выполнения скрипта и переводит сервис или хост для Nagios в соответствующее состояние:
0 — OK
1 — WARNING
2 — CRITICAL
3 — UNKNOWN


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *