Поиск по сайту:

Как установить Nagios на Ubuntu 16.04


Это руководство существует для этих версий ОС

  • Ubuntu 10.04 (Lucid Lynx)

На этой странице

  1. Предпосылки
    1. Что мы будем делать в этом уроке:

    1. Шаг 1. Загрузите и извлеките ядро Nagios.
    2. Шаг 2. Скомпилируйте Nagios
    3. Шаг 3. Установите подключаемые модули Nagios
    4. Шаг 4. Настройка Nagios

    1. Шаг 1. Включите модули Apache
    2. Шаг 2. Включите виртуальный хост Nagios.
    3. Шаг 3. Запустите Apache и Nagios

    1. Шаг 1. Подключитесь к хосту Ubuntu
    2. Шаг 2. Установите службу NRPE
    3. Шаг 3. Настройка NRPE
    4. Шаг 4. Перезапустите NRPE
    5. Шаг 5. Добавьте хост Ubuntu на сервер Nagios
    6. Шаг 6. Перезапустите все службы
    7. Шаг 7. Проверка хоста Ubuntu

    Nagios — это программное обеспечение с открытым исходным кодом для мониторинга системы и сети. Nagios может отслеживать активность хоста и его служб и выдавать предупреждение/предупреждение, если на сервере происходит что-то плохое. Nagios может работать в операционных системах Linux. В настоящее время я использую Ubuntu 16.04 для установки.

    Предпосылки

    • 2 Ubuntu 16.04 — 64-битные серверы
      • 1 — Хост Nagios с IP-адресом: 192.168.1.9
      • 2 — Клиент Ubuntu с IP-адресом: 192.168.1.10

      Что мы будем делать в этом уроке:

      1. Программное обеспечение, которое зависит от пакетов, таких как LAMP и т. д.
      2. Конфигурация пользователей и групп.
      3. Установка Nagios.
      4. Настройка Apache.
      5. Тестирование сервера Nagios.
      6. Добавление узла для мониторинга.

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

      Для компиляции Nagios требуется компилятор gcc и средства сборки, LAMP (Apache, PHP, MySQL) для веб-интерфейса Nagios и Sendmail для отправки предупреждений с сервера. Чтобы установить все эти пакеты, запустите эту команду (всего 1 строка):

      sudo apt-get install wget build-essential apache2 php apache2-mod-php7.0 php-gd libgd-dev sendmail unzip

      Конфигурация пользователей и групп

      Для запуска Nagios вам необходимо создать нового пользователя для Nagios. Мы назовем пользователя «nagios» и дополнительно создадим группу с именем «nagcmd». Мы добавляем нового пользователя в группу, как показано ниже:

      useradd nagios
      groupadd nagcmd
      usermod -a -G nagcmd nagios
      usermod -a -G nagios,nagcmd www-data

      Установка Нагиос

      Шаг 1. Загрузите и извлеките ядро Nagios.

      cd ~
      wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.2.0.tar.gz
      tar -xzf nagios*.tar.gz
      cd nagios-4.2.0

      Шаг 2 — Скомпилируйте Nagios

      Перед сборкой Nagios вам нужно будет настроить его с пользователем и группой, которую вы создали ранее.

      ./configure --with-nagios-group=nagios --with-command-group=nagcmd

      Для получения дополнительной информации используйте: ./configure --help .

      Теперь, чтобы установить Nagios:

      make all
      sudo make install
      sudo make install-commandmode
      sudo make install-init
      sudo make install-config
      /usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-available/nagios.conf

      И скопируйте каталог evenhandler в каталог nagios:

      cp -R contrib/eventhandlers/ /usr/local/nagios/libexec/
      chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers

      Шаг 3 — Установите плагины Nagios

      Загрузите и распакуйте плагины Nagios:

      cd ~
      wget https://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz
      tar -xzf nagios-plugins*.tar.gz
      cd nagios-plugin-2.1.2/

      Установите плагины Nagios с помощью команд ниже:

      ./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl
      make
      make install

      Шаг 4 — Настройте Nagios

      После завершения этапа установки вы можете найти конфигурацию Nagios по умолчанию в /usr/local/nagios/.

      Мы настроим Nagios и контакт Nagios.

      Отредактируйте конфигурацию nagios по умолчанию с помощью vim:

      vim /usr/local/nagios/etc/nagios.cfg

      раскомментируйте строку 51 для конфигурации монитора хоста.

      cfg_dir=/usr/local/nagios/etc/servers

      Сохранить и выйти.

      Добавьте новую папку с именем серверы:

      mkdir -p /usr/local/nagios/etc/servers

      Контакт Nagios можно настроить в файле contact.cfg. Чтобы открыть его, используйте:

      vim /usr/local/nagios/etc/objects/contacts.cfg

      Затем замените адрес электронной почты по умолчанию своим собственным адресом электронной почты.

      Настройка Apache

      Шаг 1 — включите модули Apache

      sudo a2enmod rewrite
      sudo a2enmod cgi

      Вы можете использовать команду htpasswd, чтобы настроить пользователя nagiosadmin для веб-интерфейса nagios.

      sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

      и введите свой пароль.

      Шаг 2 — включите виртуальный хост Nagios

      sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/

      Шаг 3 — Запустите Apache и Nagios

      service apache2 restart
      service nagios start

      При запуске Nagios вы можете увидеть следующую ошибку:

      Starting nagios (via systemctl): nagios.serviceFailed

      И вот как это исправить:

      cd /etc/init.d/
      cp /etc/init.d/skeleton /etc/init.d/nagios

      Теперь отредактируйте файл Nagios:

      vim /etc/init.d/nagios

      ... и добавьте следующий код:

      DESC="Nagios"
      NAME=nagios
      DAEMON=/usr/local/nagios/bin/$NAME
      DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"
      PIDFILE=/usr/local/nagios/var/$NAME.lock

      Сделайте его исполняемым и запустите Nagios:

      chmod +x /etc/init.d/nagios
      service apache2 restart
      servuce nagios start

      Тестирование сервера Nagios

      Откройте браузер и получите доступ к IP-адресу сервера Nagios, в моем случае: http://192.168.1.9/nagios.

      Войдите в Nagios с помощью apache htpasswd.

      Панель администратора Nagios

      Добавление хоста для мониторинга

      В этом руководстве я добавлю хост Ubuntu для мониторинга к серверу Nagios, который мы создали выше.

      Nagios Server IP : 192.168.1.9
      Ubuntu Host IP : 192.168.1.10

      Шаг 1. Подключитесь к хосту Ubuntu.

      ssh 

      Шаг 2 — Установите службу NRPE

      sudo apt-get install nagios-nrpe-server nagios-plugins

      Шаг 3. Настройте NRPE

      После завершения установки отредактируйте файл nrpe /etc/nagios/nrpe.cfg:

      vim /etc/nagios/nrpe.cfg

      ... и добавьте IP-адрес 192.168.1.9 сервера Nagios к адресу server_address.

      server_address=192.168.1.9

      Шаг 4 — Перезапустите NRPE

      service nagios-nrpe-server restart

      Шаг 5 — Добавьте хост Ubuntu на сервер Nagios

      Пожалуйста, подключитесь к серверу Nagios:

      ssh 

      Затем создайте новый файл для конфигурации хоста в /usr/local/nagios/etc/servers/.

      vim /usr/local/nagios/etc/servers/ubuntu_host.cfg

      Добавьте следующие строки:

      # Ubuntu Host configuration file
      
      define host {
              use                          linux-server
              host_name                    ubuntu_host
              alias                        Ubuntu Host
              address                      192.168.1.10
              register                     1
      }
      
      define service {
            host_name                       ubuntu_host
            service_description             PING
            check_command                   check_ping!100.0,20%!500.0,60%
            max_check_attempts              2
            check_interval                  2
            retry_interval                  2
            check_period                    24x7
            check_freshness                 1
            contact_groups                  admins
            notification_interval           2
            notification_period             24x7
            notifications_enabled           1
            register                        1
      }
      
      define service {
            host_name                       ubuntu_host
            service_description             Check Users
            check_command           check_local_users!20!50
            max_check_attempts              2
            check_interval                  2
            retry_interval                  2
            check_period                    24x7
            check_freshness                 1
            contact_groups                  admins
            notification_interval           2
            notification_period             24x7
            notifications_enabled           1
            register                        1
      }
      
      define service {
            host_name                       ubuntu_host
            service_description             Local Disk
            check_command                   check_local_disk!20%!10%!/
            max_check_attempts              2
            check_interval                  2
            retry_interval                  2
            check_period                    24x7
            check_freshness                 1
            contact_groups                  admins
            notification_interval           2
            notification_period             24x7
            notifications_enabled           1
            register                        1
      }
      
      define service {
            host_name                       ubuntu_host
            service_description             Check SSH
            check_command                   check_ssh
            max_check_attempts              2
            check_interval                  2
            retry_interval                  2
            check_period                    24x7
            check_freshness                 1
            contact_groups                  admins
            notification_interval           2
            notification_period             24x7
            notifications_enabled           1
            register                        1
      }
      
      define service {
            host_name                       ubuntu_host
            service_description             Total Process
            check_command                   check_local_procs!250!400!RSZDT
            max_check_attempts              2
            check_interval                  2
            retry_interval                  2
            check_period                    24x7
            check_freshness                 1
            contact_groups                  admins
            notification_interval           2
            notification_period             24x7
            notifications_enabled           1
            register                        1
      }

      Вы можете найти множество команд check_command в файле /usr/local/nagios/etc/objects/commands.cfg. См. там, если вы хотите добавить дополнительные службы, такие как DHCP, POP и т. д.

      А теперь проверьте конфигурацию:

      /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

      ... чтобы убедиться, что конфигурация верна.

      Шаг 6 - Перезапустите все службы

      На хосте Ubuntu запустите службу NRPE:

      service nagios-nrpe-server restart

      ... и на сервере Nagios запустите Apache и Nagios:

      service apache2 restart
      service nagios restart

      Шаг 7 — Тестирование хоста Ubuntu

      Откройте сервер Nagios из браузера и увидите, что ubuntu_host отслеживается.

      Хост Ubuntu доступен на отслеживаемом хосте.

      Все сервисы проверены без ошибок.

      Заключение

      Nagios — это приложение с открытым исходным кодом для мониторинга системы. Nagios получил широкое распространение из-за простоты настройки. Nagios поддерживает различные плагины, и вы даже можете создавать свои собственные плагины. Подробнее см. здесь.