Как установить инструмент мониторинга Nagios на Ubuntu 22.04

Nagios — это мощный бесплатный инструмент мониторинга с открытым исходным кодом, используемый для мониторинга серверов Linux и Windows, а также сетей и инфраструктуры. С помощью Nagios вы можете отслеживать использование процессора, диска и нескольких сервисов, включая HTTP, SSH, FTP, SMTP и другие. Он имеет простой и удобный веб-интерфейс, который помогает контролировать все серверы из центрального узла. Его можно легко интегрировать с приложениями сторонних разработчиков с помощью многочисленных API. Nagios работает, постоянно отслеживая указанные вами хосты и сервисы и предупреждая вас, когда что-то идет не так.

В этом руководстве мы покажем вам, как установить Nagios Core на сервер Ubuntu 22.04.

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

Перед началом работы вам необходимо обновить системный пакет и установить другие необходимые зависимости на вашем сервере:

apt-get update -y
apt-get install wget unzip vim curl openssl build-essential libgd-dev libssl-dev libapache2-mod-php php-gd php apache2 -y

После установки всех пакетов можно переходить к следующему шагу.

Установка Nagios Core из исходного кода

По умолчанию последняя версия Nagios Core недоступна в стандартном репозитории 22.04. Поэтому рекомендуется компилировать Nagios из исходного кода.

Сначала загрузите последнюю версию Nagios Core из Git-репозитория с помощью следующей команды:

wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.7.tar.gz

После загрузки распакуйте загруженный файл с помощью следующей команды:

tar -xvzf nagios-4.4.7.tar.gz

Затем измените каталог на извлеченный и настройте Nagios Core с помощью следующей команды:

cd nagios-4.4.7
./configure --with-httpd-conf=/etc/apache2/sites-enabled

Вы должны получить следующий результат:

*** Configuration summary for nagios 4.4.7 2022-04-14 ***:

 General Options:
 -------------------------
        Nagios executable:  nagios
        Nagios user/group:  nagios,nagios
       Command user/group:  nagios,nagios
             Event Broker:  yes
        Install ${prefix}:  /usr/local/nagios
    Install ${includedir}:  /usr/local/nagios/include/nagios
                Lock file:  /run/nagios.lock
   Check result directory:  /usr/local/nagios/var/spool/checkresults
           Init directory:  /lib/systemd/system
  Apache conf.d directory:  /etc/apache2/sites-enabled
             Mail program:  /bin/mail
                  Host OS:  linux-gnu
          IOBroker Method:  epoll

 Web Interface Options:
 ------------------------
                 HTML URL:  http://localhost/nagios/
                  CGI URL:  http://localhost/nagios/cgi-bin/
 Traceroute (used by WAP):  


Review the options above for accuracy.  If they look okay,
type 'make all' to compile the main program and CGIs.

Далее выполните следующую команду для компиляции Nagios:

make all

Затем создайте необходимых пользователей и группы и добавьте пользователя Nagios в группу www-data с помощью следующей команды:

make install-groups-users
usermod -a -G nagios www-data

Далее установите Nagios Core с помощью следующей команды:

make install

Вы должны увидеть следующий результат:

*** Main program, CGIs and HTML files installed ***

You can continue with installing Nagios as follows (type 'make'
without any arguments for a list of all possible options):

  make install-init
     - This installs the init script in /lib/systemd/system

  make install-commandmode
     - This installs and configures permissions on the
       directory for holding the external command file

  make install-config
     - This installs sample config files in /usr/local/nagios/etc

make[1]: Leaving directory '/root/nagios-4.4.7'

После установки Nagios Core вам нужно будет создать файл службы systemd для управления службой Nagios. Вы можете создать скрипт systemd init с помощью следующей команды:

make install-daemoninit

Затем установите соответствующие права на каталог установки Nagios с помощью следующей команды:

make install-commandmode

Далее создайте образец конфигурационного файла Nagios с помощью следующей команды:

make install-config

Далее установите веб-интерфейс Nagios с помощью следующей команды:

make install-webconf
a2enmod rewrite cgi

Затем перезапустите службу Apache, чтобы применить изменения:

systemctl restart apache2

Далее установите тему для веб-интерфейса Nagios.

make install-exfoliation

Создание пользователя Nagios Admin

Далее вам нужно будет создать пользователя admin для доступа к веб-интерфейсу Nagios. Вы можете создать его с помощью следующей команды:

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

Установите желаемый пароль, как показано ниже:

New password: 
Re-type new password: 
Adding password for user nagiosadmin

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

Далее вам нужно будет загрузить плагины Nagios для мониторинга системных служб. Вы можете загрузить их из Git-репозитория с помощью следующей команды:

wget https://github.com/nagios-plugins/nagios-plugins/releases/download/release-2.4.0/nagios-plugins-2.4.0.tar.gz

После загрузки распакуйте загруженный файл следующей командой:

tar -xvzf nagios-plugins-2.4.0.tar.gz

Затем измените каталог на извлеченный и настройте его следующей командой:

cd nagios-plugins-2.4.0
./configure --with-nagios-user=nagios --with-nagios-group=nagios

Затем установите его с помощью следующей команды:

make
make install

Далее проверьте конфигурационные файлы примера Nagios перед его запуском с помощью следующей команды:

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

Если все в порядке, вы должны получить следующий результат:

Running pre-flight check on configuration data...

Checking objects...
	Checked 8 services.
	Checked 1 hosts.
	Checked 1 host groups.
	Checked 0 service groups.
	Checked 1 contacts.
	Checked 1 contact groups.
	Checked 24 commands.
	Checked 5 time periods.
	Checked 0 host escalations.
	Checked 0 service escalations.
Checking for circular paths...
	Checked 1 hosts
	Checked 0 service dependencies
	Checked 0 host dependencies
	Checked 5 timeperiods
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-flight check

Запуск службы Nagios

Теперь запустите службу Nagios и включите ее запуск при перезагрузке системы с помощью следующей команды:

systemctl start nagios
systemctl enable nagios

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

systemctl status nagios

Вы должны получить следующий результат:

? nagios.service - Nagios Core 4.4.7
     Loaded: loaded (/lib/systemd/system/nagios.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-05-04 17:18:52 UTC; 1s ago
       Docs: https://www.nagios.org/documentation
    Process: 15854 ExecStartPre=/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg (code=exited, status=0/SUCCESS)
    Process: 15855 ExecStart=/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg (code=exited, status=0/SUCCESS)
   Main PID: 15856 (nagios)
      Tasks: 6 (limit: 2241)
     Memory: 5.2M
        CPU: 355ms
     CGroup: /system.slice/nagios.service
             ??15856 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
             ??15857 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             ??15858 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             ??15859 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             ??15860 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh
             ??15861 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg

June 12 06:10:52 jellyfish nagios[15856]: qh: core query handler registered
June 12 06:10:52 jellyfish nagios[15856]: qh: echo service query handler registered
June 12 06:10:52 jellyfish nagios[15856]: qh: help for the query handler registered
June 12 06:10:52 jellyfish nagios[15856]: wproc: Successfully registered manager as @wproc with query handler
June 12 06:10:52 jellyfish nagios[15856]: wproc: Registry request: name=Core Worker 15858;pid=15858
June 12 06:10:52 jellyfish nagios[15856]: wproc: Registry request: name=Core Worker 15857;pid=15857
June 12 06:10:52 jellyfish nagios[15856]: wproc: Registry request: name=Core Worker 15860;pid=15860
June 12 06:10:52 jellyfish nagios[15856]: wproc: Registry request: name=Core Worker 15859;pid=15859
June 12 06:10:53 jellyfish nagios[15856]: Successfully launched command file worker with pid 15861
June 12 06:10:53 jellyfish nagios[15856]: HOST ALERT: localhost;DOWN;SOFT;1;(No output on stdout)

Доступ к веб-интерфейсу Nagios

Теперь откройте веб-браузер и введите URL-адрес http://your-server-ip/nagios. Вы будете перенаправлены на экран входа в систему Nagios:

 

Введите имя пользователя и пароль администратора Nagios и нажмите на кнопку OK кнопку. На следующем экране вы увидите панель Nagios по умолчанию:

Приборная панель Nagios

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

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