Мониторинг сетевых сервисов при помощи 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. Там уже есть готовые проверки для большого количества разнообразных сервисов.

     

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

Защитный код
Обновить