Мониторинг сетевых сервисов при помощи Nagios
Nagios — это программа мониторинга компьютерных систем и сетей с открытым кодом. Предназначена для наблюдения, контроля состояния вычислительных узлов и служб, оповещает администратора в том случае, если какие-то из служб прекращают (или возобновляют) свою работу.
Nagios первоначально была создана под именем Netsaint, разработана Этаном Галстадом. Он же поддерживает и развивает систему сегодня, совместно с командой разработчиков, которые занимаются как официальными, так и неофициальными плагинами.
Первоначально Nagios была разработана для работы под Linux, но она также хорошо работает и под другими ОС, такими как Sun Solaris, FreeBSD, AIX и HP-UX.
Возможности Nagios очень широки.
Эта система может
-
Мониторить сетевые службы (SMTP, POP3, HTTP, NNTP, ICMP, SNMP)
-
Мониторить состояние хостов (загрузка процессора, использование диска, системные логи) в большинстве сетевых операционных систем
-
Простая архитектура модулей расширений (плагинов) позволяет, используя любой язык программирования по выбору (Shell, C++, Perl, Python, PHP и другие), легко разрабатывать свои собственные способы проверки служб
-
В качестве уведомлений системному администратору поддерживается отправка оповещений в случае возникновения проблем со службой или хостом (с помощью почты, пейджера, SMS, или любым другим способом, определенным пользователем через модуль системы)
-
так же есть возможность организации совместной работы нескольких систем мониторинга с целью повышения надёжности и создания распределенной системы мониторинга
Установка Nagios
Для работы Nagios необходим веб-сервер, который мы и установим:
# apt-get install apache2
Установка сервера Nagios производится командой:
#apt-get install nagios3 nagios-plugins-extra
Обратите внимание, что кроме этих двух пакетов по зависимостям устанавливается еще довольно много дополнительных программ и сервисов.
В процессе настройки сервера Nagios будет предложено ввести пароль для учетной записи nagiosadmin для доступа к консоли.
После окончания установки и настройки всех компонентов можно зайти на веб-интерфейс Nagios по адресу http://server-ip/nagios3 и после перехода на закладку “Service Details” мы увидим информацию о сервере, который добавляется автоматически при установке — локальном сервере, на который установлен Nagios.
Добавление нового хоста в систему мониторинга
Для добавления нового хоста следует создать его файл конфигурации. Настроим мониторинг сервера, к примеру, 192.168.0.30. Для этого создадим файл /etc/nagios3/conf.d/192.168.0.30.cfg
и запишем в него
define host {
host_name my_server
alias my_server
address 192.168.0.30
use generic-host
}
Кроме этого необходимо описать какие сервисы на сервере следует мониторить.
Описание того, какие сервисы мониторятся на серверах находится в файле /etc/nagios3/conf.d/hostgroups_nagios2.cfg
Откроем этот файл и добавим наш сервер в группу ssh-servers.
define hostgroup {
hostgroup_name http-servers
alias HTTP servers
members localhost, my_server
}
После этих изменений следует дать команду сервису Nagios перечитать конфигурацию
#service nagios3 reload
Теперь, после обновления веб-страницы Nagios мы увидим информацию о нашем сервере, который мы добавили в систему мониторинга.
Добавление мониторинга новых сервисов
Описание всех сервисов, которые могут мониториться в сети находятся в файле /etc/nagios3/conf.d/services_nagios2.cfg. По умолчанию их там всего два — HTTP и SSH. Естественно этого не достаточно для полноценного мониторинга. По этому мы сейчас рассмотрим, как добавить новые сервисы. Для примера настроим мониторинг почтового сервера, то есть будем проверять то, что наш сервер отвечает на 25 порту по протоколу SMTP.
Откроем файл /etc/nagios3/conf.d/services_nagios2.cfg и добавим в него описание нового сервиса:
define service {
hostgroup_name smtp-servers
service_description smtp
check_command check_smtp
use generic-service
notification_interval 0 ; set > 0 if you want to be renotified
}
Далее необходимо включить проверку данного сервиса на нашем сервере. Для этого в файле /etc/nagios3/conf.d/hostgroups_nagios2.cfg необходимо описать новую группу и включить в нее наш сервер
define hostgroup {
hostgroup_name smtp-servers
alias SMTP servers
members my_server
}
После перезагрузки конфигурации Nagios в веб-интерфейсе можно будет увидеть результаты мониторинга сервиса SMTP.
Для того, что бы выяснить как описывается команда проверки разных сервисов, стоит посмотреть содержимое файлов в /etc/nagios-plugins/config. Там уже есть готовые проверки для большого количества разнообразных сервисов.
http://yakim.org.ua/articles/servers/166-nagios1.html
|