Як встановити моніторинг сервера Nagios на Ubuntu 16.04

Як встановити моніторинг сервера Nagios на Ubuntu 16.04

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

Передумови

  • 2 Ubuntu 16.04 - 64bit сервери
    • 1 - хост Nagios з IP: 192.168.1.9
    • 2 - клієнт Ubuntu з IP: 192.168.1.10
  • Доступ до Root / Sudo

Що ми будемо робити в цьому підручнику:

  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 розпакувати

Конфігурація користувача та групи

Щоб запустити Nagios, вам доведеться створити нового користувача для Nagios. Ми називатимемо користувача "Нагіос" і додатково створити групу, названу "Nagcmd". Ми додаємо нового користувача до групи, як показано нижче:

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

Додавання користувача Nagios

Встановлення Nagios

Крок 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:

зробити все
sudo зробити встановити
sudo зробити install-commandmode
sudo зробити install-init
sudo зробити install-config
/ usr / bin / install -c -m 644 sample-config / httpd.conf /etc/apache2/sites-available/nagios.conf

І скопіюйте директорію до директорії 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
зробити
зробити установку

Крок 4 - Налаштування Nagios

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

Ми налаштуємо контакт Nagios та Nagios.

Редагувати налаштування nigios за замовчуванням за допомогою 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

Судо a2enmod переписати
Судo 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

Сервіс apache2 перезавантаження
Початок служби Nagios

Коли починається Nagios, ви можете побачити таку помилку:

Початок nagios (через 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
Сервіс apache2 перезавантаження
Начать сервірувати нагіос

Тестування сервера Nagios

Будь ласка, відкрийте свій веб-переглядач та отримайте доступ до сервера Nagios ip у моєму випадку: http://192.168.1.9/nagios.

Nagios Увійти за допомогою apache htpasswd.

Вхід Nagios

Наладон Адміністративний панель

Панель Nagios

Додавання хоста до монітора

У цьому підручнику я додам вузол Ubuntu для моніторингу на сервер Nagios, який ми зробили вище.

IP-адреса Nagios: 192.168.1.9
Ubuntu Host IP: 192.168.1.10

Крок 1 - підключення до вузла Ubuntu

ssh [електронна пошта захищена]

Крок 2 - встановлення служби NRPE

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

Крок 3 - налаштування NRPE

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

vim /etc/nagios/nrpe.cfg

... і додати сервер Nagios IP 192.168.1.9 до адреси сервера.

server_address = 192.168.1.9

Настроювання адреси сервера

Крок 4 - перезапустіть NRPE

сервіс nagios-ntpe-сервер перезавантаження

Крок 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 Host start NRPE Service:

сервіс nagios-ntpe-сервер перезавантаження

... і на сервері Nagios, запустіть Apache і Nagios:

Сервіс apache2 перезавантаження
сервіс Nagios перезавантажити

Крок 7 - тестування хоста Ubuntu

Відкрийте сервер Nagios з браузера та подивіться, як ubuntu_host відстежується.

Веб-вузол Ubuntu доступний на контрольованому хості.

Контрольований сервер вказаний

Усі служби контролюються без помилок.

Всі послуги зелені

Висновок

Nagios - це програма з відкритим кодом для моніторингу системи. Nagios широко використовувався через легкість конфігурації. Nagios підтримуються різними плагінами, і ви навіть можете створити власні плагіни. Подивіться тут для отримання додаткової інформації.

джерело

залишити коментар

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.