II. 6 шагов для установки плагинов Nagios и NRPE на удаленной Linux системе.
1. Скачиваем плагины Nagios и NRPE
Скачиваем следующие файлы с Nagios.org и помещаем их в /home/downloads:
- nagios-plugins-1.4.11.tar.gz
- nrpe-2.12.tar.gz
4. Устанавливаем NRPE
5. Запускаем NRPE как демон:
Измените /etc/xinetd.d/nrpe и добавьте ip-адрес Nagios сервера в директиву only_from.
only_from = 127.0.0.1 192.168.1.2
Измените /etc/services добавив следующую строку в конец файла.
nrpe 5666/tcp # NRPE
Перезапустите xinetd
#service xinetd restart
Проверьте слушает ли NRPE свой порт.
# netstat -at | grep nrpe tcp 0 0 *:nrpe *:* LISTEN
Убедитесь что NRPE функционирует правильно.
# /usr/local/nagios/libexec/check_nrpe -H localhost
NRPE v2.12
6. Измените /usr/local/nagios/etc/nrpe.cfg
Файл nrpe.cfg содержит команды, которые проверяют различные сервисы. По умолчанию в nrpe.cfg содержиться несколько стандартных команд, к примеру check_users и check_load:
В команде check опция “-w” означает “Warning” и “-c” означает “Critical”. К примеру, в команде check_disk, описанной ниже, если доступного места на диске менее 20%, nagios пошлет предупреждающее сообщение. Если менее 10%, будет послано критическое сообщение.
Заметка: Вы можете выполнить любую из этих команд в командной строке для проверки.
1: Установка Nagios 4
Существует множество способов установки Nagios, но мы рекомендуем установить Nagios и все компоненты из исходного кода, чтобы получить самые новые функции, обновления для системы безопасности и исправления багов.
Войдите на сервер 1 (на котором запущен Apache). Также этот сервер будет далее условно называться сервером Nagios.
Поскольку мы соберем Nagios и его компоненты из исходного кода, сейчас нужно установить несколько библиотек разработки, включая компиляторы, заголовки разработки и OpenSSL.
Обновите индекс, чтобы загрузить последние версии необходимых пакетов:
Теперь установите эти пакеты:
После этого можно установить сам Nagios. Загрузите исходный код последней стабильной версии Nagios Core. Откройте страницу загрузки Nagios и нажмите ссылку Skip to download под формой. Скопируйте адрес ссылки на последнюю стабильную версию, чтобы скачать ее на сервер Nagios.
Загрузите релиз в домашний каталог:
Распакуйте скачанный архив:
Перейдите в новый каталог:
Прежде чем начать сборку Nagios, запустите сценарий configure, чтобы указать каталог конфигураций Apache.
Примечание: Если вы хотите, чтобы Nagios отправлял электронные уведомления с помощью Postfix, вам нужно установить Postfix и настроить Nagios для его поддержки. Для этого добавьте в команду configure опцию –with-mail=/usr/sbin/sendmail. В этом мануале мы не включаем Postfix, но если вы решите использовать его позже, вам нужно будет перенастроить и переустановить Nagios.
Команда configure вернет такой результат:
Теперь скомпилируйте Nagios:
После этого создайте пользователя nagios и группу nagios:
Запустите следующие команды make, чтобы установить Nagios, сценарии инициализации и образцы конфигурационных файлов:
Apache будет обслуживать веб-интерфейс Nagios. Чтобы скопировать конфигурационный файл Apache и настроить его параметры, введите команду:
Теперь включите модули rewrite и cgi:
Чтобы выполнять внешние команды через веб-интерфейс Nagios, добавьте пользователя веб-сервера www-data в группу nagcmd:
С помощью команды htpasswd создайте администратора по имени nagiosadmin. У него будет доступ е веб-интерфейсу Nagios:
По запросу введите пароль. Запомните или запишите его – без него у вас не получится открыть веб-интерфейс.
Важно! Если вы назвали своего пользователя не nagiosadmin, вам нужно отредактировать /usr/local/nagios/etc/cgi.cfg и заменить все ссылки на nagiosadmin именем вашего пользователя. Чтобы обновить параметры Apache, перезагрузите его:
Чтобы обновить параметры Apache, перезагрузите его:
Система мониторинга Nagios установлена.
Установка Nagios в Ubuntu
Следующие шаги описывают, как установить последнюю версию Nagios Core из исходного кода.
1. Скачивание Nagios
Мы собираемся загрузить исходный код Nagios в каталог который является обычным местом для размещения исходных файлов, перейдите в каталог с помощью:
Когда загрузка завершится, извлеките tar-файл с помощью:
Перед тем, как продолжить следующие шаги, убедитесь , что вы измените в исходный каталог Nagios, набрав:
2. Компиляция Nagios
Чтобы запустить процесс сборки, запустите сценарий который выполнит ряд проверок, чтобы убедиться, что все зависимости в вашей системе присутствуют:
После успешного завершения на вашем экране будет напечатано следующее сообщение:
Теперь вы можете запустить процесс компиляции с помощью команды :
В зависимости от вашей системы компиляция может занять некоторое время. После завершения процесса сборки вам будет представлено следующее сообщение:
Следующая команда создаст нового пользователя и группу системного :
Добавьте пользователя Apache в группу :
4. Установите двоичные файлы Nagios.
Выполните следующую команду, чтобы установить двоичные файлы Nagios, CGI и файлы HTML:
Вы должны увидеть следующий результат:
7. Установите файлы конфигурации Apache.
Следующая команда установит файлы конфигурации веб-сервера Apache:
Убедитесь, что модули Apache rewrite и cgi включены:
9. Создание учетной записи пользователя
Чтобы иметь доступ к веб-интерфейсу Nagios, вам необходимо создать пользователя-администратора с именем
Используйте следующую команду чтобы создать пользователя с именем
Вам будет предложено ввести и подтвердить пароль пользователя.
Перезапустите службу Apache, чтобы изменения вступили в силу:
10. Настройка межсетевого экрана.
Брандмауэр защитит ваш сервер от нежелательного трафика.
Если на вашем сервере не настроен брандмауэр, вы можете ознакомиться с нашим руководством о том, как настроить брандмауэр с ufw на ubuntu.
Откройте порты Apache, набрав:
Step 7 — Monitoring Hosts with Nagios
To monitor your hosts with Nagios, you’ll add configuration files for each host specifying what you want to monitor. You can then view those hosts in the Nagios web interface.
On your Nagios server, create a new configuration file for each of the remote hosts that you want to monitor in . Replace the highlighted word, with the name of your host:
Add the following host definition, replacing the value with your remote hostname, the value with a description of the host, and the value with the private IP address of the remote host:
/usr/local/nagios/etc/servers/your_monitored_server_host_name.cfg
With this configuration, Nagios will only tell you if the host is up or down. Let’s add some services to monitor.
First, add this block to monitor load average:
/usr/local/nagios/etc/servers/your_monitored_server_host_name.cfg
The directive tells Nagios to inherit the values of a service template called generic-service, which is predefined by Nagios.
Next, add this block to monitor disk usage:
/usr/local/nagios/etc/servers/your_monitored_server_host_name.cfg
Now save and quit. Restart the Nagios service to put any changes into effect:
After several minutes, Nagios will check the new hosts and you’ll see them in the Nagios web interface. Click on the Services link in the left navigation bar to see all of your monitored hosts and services.
iftop
Мониторинг сети Linux является довольно легким в освоении. Для этого существует огромное количество вариантов. Вы можете выбрать самый удобный для вас. Iftop измеряет данные, проходящие через отдельные соединения сокетов, и работает таким образом, который отличается от Nload. Iftop использует библиотеку pcap для захвата пакетов, перемещающихся в и из сетевого адаптера, а затем суммирует размер и количество, чтобы найти общую используемую ширину полосы пропускания.
Несмотря на то, что iftop сообщает пропускную способность, используемую отдельными соединениями, он не может сообщить имя / идентификатор процесса, участвующего в конкретном подключении сокета. Но, основываясь на библиотеке pcap, iftop может фильтровать трафик и использовать пропускную способность для передачи по выбранным узловым соединениям, как это определено фильтром.
Опция n не позволяет iptop отыскивать IP-адреса на имя хоста, что вызывает дополнительный сетевой трафик.
Установить в Debian или Ubuntu можно из репозиториев по-умолчанию.
Пользователи CentOS или Fedora могут установить командой:
Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить Epel
А затем ввести команду установки iftop заново.
Configuration Overview
There are a couple of directories containing Nagios configuration and check files.
-
: contains configuration files for the operation of the nagios daemon, CGI files, hosts, etc.
-
: houses configuration files for the service checks.
-
: on the remote host contains the nagios-nrpe-server configuration files.
-
: where the check binaries are stored. To see the options of a check use the -h option.
For example:
There are a plethora of checks Nagios can be configured to execute for any given host. For this example Nagios will be configured to check disk space, DNS, and a MySQL hostgroup. The DNS check will be on server02, and the MySQL hostgroup will include both server01 and server02.
Additionally, there are some terms that once explained will hopefully make understanding Nagios configuration easier:
-
Host: a server, workstation, network device, etc that is being monitored.
-
Host Group: a group of similar hosts. For example, you could group all web servers, file server, etc.
-
Service: the service being monitored on the host. Such as HTTP, DNS, NFS, etc.
-
Service Group: allows you to group multiple services together. This is useful for grouping multiple HTTP for example.
By default Nagios is configured to check HTTP, disk space, SSH, current users, processes, and load on the localhost. Nagios will also ping check the gateway.
Large Nagios installations can be quite complex to configure. It is usually best to start small, one or two hosts, get things configured the way you like then expand.
Monitor a Host with NRPE
In this section, we’ll show you how to add a new host to Nagios, so it will be monitored. Repeat this section for each server you wish to monitor.
On a server that you want to monitor, update apt-get:
Now install Nagios Plugins and NRPE:
Configure Allowed Hosts
Now, let’s update the NRPE configuration file. Open it in your favorite editor (we’re using vi):
Find the directive, and add the private IP address of your Nagios server to the comma-delimited list (substitute it in place of the highlighted example):
Save and exit. This configures NRPE to accept requests from your Nagios server, via its private IP address.
Configure Allowed NRPE Commands
Look up the name of your root filesystem (because it is one of the items we want to monitor):
We will be using the filesystem name in the NRPE configuration to monitor your disk usage (it is probably ). Now open nrpe.cfg for editing:
The NRPE configuration file is very long and full of comments. There are a few lines that you will need to find and modify:
- server_address: Set to the private IP address of this host
- allowed_hosts: Set to the private IP address of your Nagios server
- command: Change to whatever your root filesystem is called
The three aforementioned lines should look like this (substitute the appropriate values):
Note that there are several other “commands” defined in this file that will run if the Nagios server is configured to use them. Also note that NRPE will be listening on port 5666 because is set. If you have any firewalls blocking that port, be sure to open it to your Nagios server.
Save and quit.
Restart NRPE
Restart NRPE to put the change into effect:
Once you are done installing and configuring NRPE on the hosts that you want to monitor, you will have to add these hosts to your Nagios server configuration before it will start monitoring them.
Add Host to Nagios Configuration
On your Nagios server, create a new configuration file for each of the remote hosts that you want to monitor in . Replace the highlighted word, “yourhost”, with the name of your host:
Add in the following host definition, replacing the value with your remote hostname (“web-1” in the example), the value with a description of the host, and the value with the private IP address of the remote host:
With the configuration file above, Nagios will only monitor if the host is up or down. If this is sufficient for you, save and exit then restart Nagios. If you want to monitor particular services, read on.
Add any of these service blocks for services you want to monitor. Note that the value of check_command determines what will be monitored, including status threshold values. Here are some examples that you can add to your host’s configuration file:
Ping:
SSH (notifications_enabled set to 0 disables notifications for a service):
If you’re not sure what means, it is simply inheriting the values of a service template called “generic-service” that is defined by default.
Now save and quit. Reload your Nagios configuration to put any changes into effect:
Once you are done configuring Nagios to monitor all of your remote hosts, you should be set. Be sure to access your Nagios web interface, and check out the Services page to see all of your monitored hosts and services:
Access Nagios Web Interface
Now access the Nagios web interface using the following URL.
http://ip-add-re-ss/nagios/
You’ll be prompted for the username (nagiosadmin) and password you specified earlier.
Install Nagios 4.4.3 on Ubuntu 18.04 – Nagios Login
Upon successful login, you would get the Nagios’s home page.
Install Nagios 4.4.3 on Ubuntu 18.04 – Nagios Monitoring Home Page
You can monitor the services by clicking on Services in the left pane.
Install Nagios 4.4.3 on Ubuntu 18.04 – Nagios Services Monitoring
By default, Nagios can monitor only the localhost, i.e., Nagios server. If you want to monitor remote machines, then you need to install and configure NRPE plugin.
READ: How To Add Linux Host To Nagios Monitoring Using NRPE Plugin
That’s All.
I. Обзор Nagios
Nagios это программа для мониторинга узлов сети и сервисов. Ниже указаны некоторые из возможностей nagios.
- Возможность мониторинга оборудования, такого как серверов, свитчей, роутеров, файерволов, ИБП и т.д.
- Возможность мониторинга сервисов и служб, таких как HTTP, Mail, SSH, дискового пространства, использования памяти, температуры оборудования, и другое.
- Nagios очень сильно расширяется плагинами, которые позволяют мониторить различные определенные пользователями сервисы. К Nagios существует огромное множество различных плагинов.
- Nagios может посылать уведомления о возникновении проблем в зависимости от выбранного способа уведомления.
- Nagios имеет веб интерфейс для просмотра текущего состояния объектов, извещений, истории проблем, лог файлов.
Использование скриптов
# cat /etc/nagios-dhcp-stat.sh
#!/bin/sh #CMD='rsh router show ip dhcp binding | grep 192.168 | wc -l' #MAX=99 #CUR=`eval $CMD` #CMD='/usr/bin/dhcpd-pools -l /var/lib/dhcp/dhcpd.leases -c /etc/dhcp/dhcpd.conf -f c | grep 192.168.X.' #CMD='/usr/local/bin/dhcpd-pools -l /var/db/dhcpd/dhcpd.leases -c /usr/local/etc/dhcpd.conf -f c | grep 192.168.X.' #MAX=`eval $CMD | cut -d'"' -f8` #CUR=`eval $CMD | cut -d'"' -f10` echo CUR:$CUR MAX:$MAX test $CUR -eq $MAX && exit 2 exit 0
# cat corpX.cfg
... define command { command_name check_dhcp_stat command_line /etc/nagios-dhcp-stat.sh } define service{ use generic-service host_name localhost service_description check dhcp stat check_command check_dhcp_stat }
#8. MRTG
Ключевые особенности:
- MRTG расшифровывается как Multi Router Traffic Grapher.
- MRTG – это инструмент мониторинга сети.
- MRTG использует SNMP (Simple Network Management Protocol для мониторинга сетевого трафика.
- У MRTG есть агент, который знает управленческую информацию на местном уровне.
- NMS (Network Management System) система в MRTG, которая запускает приложения, которые контролирует управляемые устройства.
- В управляемом устройстве MTRG содержит агент SNMP и находится в управляемой сети.
Преимущества:
- MRTG предоставляет ресурсы, необходимые для управления сетью.
- Агент делает информацию доступной по протоколу SNMP.
- С помощью MRTG анализируется сетевой трафик.
- Живой сетевой трафик такой анализируется в MRTG.
- Сетевой трафик также отслеживается на наших сетевых портах и ссылках.
- MRTG – это инструмент мониторинга с открытым исходным кодом.
- Есть оптимизация сети.
- Есть устранение неполадок сети.
см. также:
#5. Zabbix
Ключевые особенности:
- Zabbix – это бесплатный инструмент для мониторинга серверов с открытым исходным кодом.
- Мы можем легко контролировать серверы, приложения и сетевые устройства, что дает точную статистику и данные о производительности.
- Данные, собранные Zabbix, позволяют легко проанализировать нашу инфраструктуру.
Типы мониторинга, выполняемые Zabbix:
- Мониторинг сети
- Мониторинг сервера
- Облачный мониторинг
- Мониторинг приложений
- Мониторинг служб
Zabbix имеет сквозное шифрование и хорошую аутентификацию, и благодаря этому Zabbix имеет надежную защиту.
В Zabbix есть несколько веток, поэтому распределенный мониторинг возможен одновременно.
Преимущества:
- Zabbix разработан для масштабирования от небольших сред до больших сред.
- Zabbix доверяют такие мировые бренды, как Dell, HP, Salesforce, T Systems и т. Д.
- Zabbix имеет высокую доступность, потому что у него несколько серверов, таких как прокси-серверы, поэтому нагрузка распределяется.
см. также:
Использование скриптов
# cat /etc/nagios-dhcp-stat.sh
#!/bin/sh #CMD='rsh router show ip dhcp binding | grep 192.168 | wc -l' #MAX=99 #CUR=`eval $CMD` #CMD='/usr/bin/dhcpd-pools -l /var/lib/dhcp/dhcpd.leases -c /etc/dhcp/dhcpd.conf -f c | grep 192.168.X.' #CMD='/usr/local/bin/dhcpd-pools -l /var/db/dhcpd/dhcpd.leases -c /usr/local/etc/dhcpd.conf -f c | grep 192.168.X.' #MAX=`eval $CMD | cut -d'"' -f8` #CUR=`eval $CMD | cut -d'"' -f10` echo CUR:$CUR MAX:$MAX test $CUR -eq $MAX && exit 2 exit 0
# cat corpX.cfg
... define command { command_name check_dhcp_stat command_line /etc/nagios-dhcp-stat.sh } define service{ use generic-service host_name localhost service_description check dhcp stat check_command check_dhcp_stat }
Vnstat
Vnstat немного отличается от большинства других инструментов где Мониторинг сети Linux является основой. На самом деле он запускает фоновый сервис / daemon и постоянно фиксирует размер передачи данных. Кроме того, его можно использовать для создания отчета об истории использования сети.
:~$ sudo service vnstat status * vnStat daemon is running
Запуск vnstat без каких-либо параметров просто покажет общий объем передачи данных, который произошел с момента запуска демона.
:~$ sudo vnstat Database updated: Mon Mar 17 15:26:59 2014 eth0 since 06/12/13 rx: 135.14 GiB tx: 35.76 GiB total: 170.90 GiB monthly rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- Feb '14 8.19 GiB | 2.08 GiB | 10.27 GiB | 35.60 kbit/s Mar '14 4.98 GiB | 1.52 GiB | 6.50 GiB | 37.93 kbit/s ------------------------+-------------+-------------+--------------- estimated 9.28 GiB | 2.83 GiB | 12.11 GiB | daily rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- yesterday 236.11 MiB | 98.61 MiB | 334.72 MiB | 31.74 kbit/s today 128.55 MiB | 41.00 MiB | 169.56 MiB | 24.97 kbit/s ------------------------+-------------+-------------+--------------- estimated 199 MiB | 63 MiB | 262 MiB |
Чтобы отслеживать использование полосы пропускания в реальном времени, используйте параметр «-l» (режим «вживую»). Затем она покажет общую пропускную способность, используемую входящими и исходящими данными, но очень точным образом, без каких-либо внутренних сведений о хостах или процессах.
:~$ vnstat -l -i eth0 Monitoring eth0... (press CTRL-C to stop) rx: 12 kbit/s 10 p/s tx: 12 kbit/s 11 p/s
Vnstat больше походит на инструмент для получения исторических отчетов о том, как много трафика используется каждый день или в течение последнего месяца. Это не строго инструмент для мониторинга сети в реальном времени.
Vnstat поддерживает множество опций, подробности о которых можно найти на странице руководства.
Установить в Debian или Ubuntu
Установить в Fedora или CentOS
Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить
А затем ввести команду установки заново.
Step 4 — Configuring Nagios
Now let’s perform the initial Nagios configuration, which involves editing some configuration files. You only need to perform this section once on your Nagios server.
Open the main Nagios configuration file in your preferred text editor. Here, you’ll use :
Find this line in the file:
/usr/local/nagios/etc/nagios.cfg
Uncomment this line by deleting the character from the front of the line:
/usr/local/nagios/etc/nagios.cfg
Save and close by pressing , followed by , and then (if you’re using ).
Now create the directory that will store the configuration file for each server that you will monitor:
Open the Nagios contacts configuration in your text editor:
/usr/local/nagios/etc/objects/contacts.cfg
Save and exit the editor.
Next, add a new command to your Nagios configuration that lets you use the command in Nagios service definitions. Open the file in your editor:
Add the following to the end of the file to define a new command called :
/usr/local/nagios/etc/objects/commands.cfg
This defines the name and specifies the command-line options to execute the plugin.
Save and exit the editor.
Then start Nagios and enable it to start when the server boots:
Nagios is now running, so let’s log in to its web interface.
Prerequisites
To follow this tutorial, you will need:
- Two Ubuntu 18.04 servers set up by following our Initial Server Setup Guide for Ubuntu 18.04, including a non-root user with sudo privileges and a firewall configured with . On one server, you will install Nagios; this tutorial will refer to this as the Nagios server. It will monitor your second server; this second server will be referred to as the second Ubuntu server.
- The server that will run the Nagios server needs Apache and PHP installed. Follow this guide to configure those on one of your servers. You can skip the MySQL steps in that tutorial.
Typically, Nagios runs behind a hardware firewall or VPN. If your Nagios server is exposed to the public internet, you should secure the Nagios web interface by installing a TLS/SSL certificate. This is optional but strongly encouraged. You can follow the Let’s Encrypt on Ubuntu 18.04 guide to obtain the free TLS/SSL certificate.
This tutorial assumes that your servers have private networking enabled so that monitoring happens on the private network rather than the public network. If you don’t have private networking enabled, you can still follow this tutorial by replacing all the references to private IP addresses with public IP addresses.
1. Zabbix
Это одна из самых популярных промышленных систем мониторинга для Linux. Zabbix поддерживает сбор информации с нескольких серверов, мониторинг таких часто используемых служб, как Apache, Nginx, PHP-FPM, MySQL, PostgreSQL, Tomcat и многих других, а также обнаруживает и сообщает об различных типичных ошибках. Есть возможность отправки уведомления на электронную почту при возникновении определённого события. Это позволяет реагировать очень быстро на любые ошибки. Все настройки выполняются с помощью удобного веб-интерфейса и хранятся в базе данных MySQL. Вы также можете посмотреть текущие значения различных метрик сервера в разделе Monitoring -> Last data. Доступны графики для основных отслеживаемых параметров.
8.8 Мониторинг удаленных машин Linux под nagios
Тот же принципЛокальный мониторинг под nagios, разница в том, что вам нужно установить nrpe, nagios и связанные плагины на отслеживаемую машину для мониторинга хоста, а затем получить данные и отобразить их через сервер мониторинга.
Прежде всего, поскольку яДля тестирования под VMware, для удобства прямого создания клона хоста мониторинга с именем Testclient, исходным хостом мониторинга является Test (IP-адрес по умолчанию — 192.168.254.123, имеется полный набор программного обеспечения для мониторинга cacti + nagios + ntop), а Testclient включен.
8.8.1 На контролируемом компьютере
Vi /etc/conf.d/net изменить IP-адрес
modules=(«ifconfig») config_eth0=(«192.168.254.124 netmask 255.255.255.0 brd 192.168.254.255») routes_eth0=(«default via 192.168.254.2») |
Изменить имя хоста(Несущественно)
Hostname Testclient
добавить вИмя пользователя и пароль администратора nagios. Это клонированный компьютер, и его можно не указывать.
Useradd nagios
Passwd nagios
установкаПлагин Nagios (это клонированный компьютер, можно не указывать)
cd nagios-plugins-1.4.9
./configure –prefix=/var/www/localhost/htdocs/nagios/
Make && make install
установкапрограммное обеспечение для мониторинга nrpe
Cd nrpe-2.1.3
./configure –prefix=/var/www/localhost/htdocs/nagios/
Make all
установкаcheck_nrpe этот плагин
make install-plugin
Я сказал ранее, что нужно установить машину мониторингаПлагин check_nrpe не нужен контролируемой машине, мы устанавливаем его здесь для тестирования
установкаdeamon
make install-daemon
Установите файл конфигурации
make install-daemon-config
установкаxinetd скрипт
make install-xinetd
Редактировать скрипт
Vi /etc/xinetd/nrpe
service nrpe { flags= REUSE socket_type= stream port= 5666 wait= no user= nagios group= nagios server= /var/www/localhost/htdocs/nagios/bin/nrpe server_args= -c /var/www/localhost/htdocs/nagios/etc/nrpe.cfg —inetd log_on_failure+= USERID disable= no only_from= 127.0.0.1 192.168.254.123 } |
Включитьслужба nrpe
Cd /var/www/localhost/htdocs/nagios/
Ln –s etc/nrpe nrpe
Vi nrpe
модифицироватьAllow hosts
allowed_hosts=127.0.0.1,192.168.254.123
bin/nrpe –d etc/nrpe.cfg
Проверить состояние
Netstat –at | grep nrpe
tcp00 *:nrpe*:*LISTEN
Netstat –an | grep :5666
tcp00 0.0.0.0:56660.0.0.0:*LISTEN
OK!
Добавить команды мониторинга
command=/var/www/localhost/htdocs/nagios/libexec/check_users -w 5 -c 10 command=/var/www/localhost/htdocs/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 command=/var/www/localhost/htdocs/nagios/libexec/check_disk -w 20% -c 10% -p / command=/var/www/localhost/htdocs/nagios/libexec/check_procs -w 5 -c 10 -s Z command=/var/www/localhost/htdocs/nagios/libexec/check_procs -w 150 -c 200 command=/var/www/localhost/htdocs/nagios/libexec/check_swap -w 20% -c 10% |
Может использоваться специальная запись команд/ nagios / libexec / check_nrpe —h view, обратите внимание на использование зеленого цвета на узле мониторинга. перезагружатьслужба nrpe
перезагружатьслужба nrpe
8.8.2 Мониторинг на хосте
На самом деле это очень просто, как и локальный мониторинг
определениеhosts
define host{ host_nameLinuxClient aliasZhengzhouPC address192.168.254.124 check_commandcheck-host-alive max_check_attempts5 check_period24x7 contact_groupsnagios notification_interval10 notification_period24x7 notification_optionsd,u,r } |
Определите услуги, перечислите одну из них
define service{ host_nameLinuxClient service_descriptioncheckfreeswap check_commandcheck_nrpe!check_free_swap max_check_attempts5 normal_check_interval3 retry_check_interval2 check_period24x7 contact_groupsnagios notification_interval10 notification_period24x7 notification_optionsw,u,c,r } |
Разместите фотографию завершения
Prerequisites
To follow this tutorial, you must have superuser privileges on the Ubuntu 14.04 server that will run Nagios. Ideally, you will be using a non-root user with superuser privileges. If you need help setting that up, follow the steps 1 through 3 in this tutorial: Initial Server Setup with Ubuntu 14.04.
A LAMP stack is also required. Follow this tutorial if you need to set that up: How To Install Linux, Apache, MySQL, PHP (LAMP) stack on Ubuntu 14.04.
This tutorial assumes that your server has private networking enabled. If it doesn’t, just replace all the references to private IP addresses with public IP addresses.
Now that we have the prerequisites sorted out, let’s move on to getting Nagios 4 installed.
5: Установка NRPE на хост
Давайте добавим новый хост, чтобы Nagios мог его отслеживать. Установите NRPE на удаленный хост, установите дополнительные плагины, а затем настройте сервер Nagios для мониторинга этого хоста (в разделе Требования этот сервер назывался сервером 2).
Войдите на сервер 2 (также он будет называться «сервер мониторинга»).
Создайте пользователя nagios для запуска агента NRPE.
NRPE нужно установить из исходного кода, а для этого вам понадобятся те же библиотеки разработки, которые вы устанавливали на сервере Nagios в разделе 1. Обновите индекс пакетов и установите необходимые библиотеки:
NRPE требует, чтобы на удаленном хосте был установлен пакет Nagios Plugins. Установите этот пакет из исходного кода.
Найдите последнюю версию Nagios Plugins на странице загрузки Nagios. Скопируйте адрес ссылки на последнюю версию.
Загрузите Nagios Plugins в домашний каталог:
Распакуйте архив Nagios Plugins:
Перейдите в полученный каталог:
Прежде чем приступить к сборке Nagios Plugins, настройте программу для использования группы и пользователя nagios, а также включите поддержку OpenSSL:
Скомпилируйте пакет:
Затем установите его:
Затем установите NRPE. Найдите URL-адрес для загрузки последней стабильной версии NRPE на сайте Nagios Exchange. Загрузите последнюю стабильную версию NRPE в домашний каталог сервера мониторинга с помощью curl:
Распакуйте архив:
Перейдите в этот каталог:
Чтобы настроить NRPE, укажите пользователя и группу Nagios, а также включите поддержку SSL.
Затем соберите и установите NRPE и запустите сценарий:
Обновите конфигурационный файл NRPE:
Найдите директиву allowed_hosts и добавьте внутренний IP-адрес сервера Nagios в список через запятую:
Теперь NRPE может принимать подключения от сервера Nagios через его внутренний IP-адрес.
Сохраните и закройте файл. Запустите NRPE:
Запросите состояние сервиса, чтобы убедиться, что он работает:
Команда вернет:
Затем откройте в брандмауэре порт 5666. Если вы используете UFW, настройте его для поддержки TCP-подключений по порту 5666:
Теперь вы можете проверить связь с удаленным сервером NRPE. Выполните следующую команду на сервере Nagios:
Теперь настройте базовые метрики, которые будет проверять Nagios.
Во-первых, нужно настроить мониторинг использования диска на этом сервере. Введите команду df –h, чтобы найти имя корневой файловой системы. Вы будете использовать это имя файловой системы в конфигурации NRPE:
Узнайте, какая файловая система связана с /. На сервере это, вероятно, /dev/vda1.
Откройте файл /usr/local/nagios/etc/nrpe.cfg в редакторе:
Конфигурационный файл NRPE очень длинный, в нем много комментариев. Вот строки, которые вам нужно будет найти и изменить:
- server_address: укажите внутренний IP-адрес сервера мониторинга.
- command: вместо /dev/hda1 укажите имя корневой файловой системы.
Найдите эти параметры и измените их соответствующим образом:
Сохраните и закройте файл.
Перезапустите NRPE:
Повторите действия этого раздела на каждом новом сервере мониторинга.
После того, как вы закончите установку и настройку NRPE на хостах, которые хотите отслеживать, вам нужно добавить эти хосты в конфигурацию сервера Nagios.
Базовая конфигурация
Установка
Debian 10
- Рекомендуется настроить Сервис MTA и установить UA mail (не обязательно), иначе поставит exim4 как зависимость
# a2enmod auth_digest # a2enmod authz_groupfile # systemctl restart apache2 # apt install nagios4
Настройка объектов мониторинга
server# /usr/lib/nagios/plugins/check_http -H yandex.ru -S server# less /etc/nagios-plugins/config/http.cfg
server# cat /etc/nagios4/conf.d/corpX.cfg
define host{ use generic-host name my-templ-host register 0 max_check_attempts 1 notification_interval 1440 check_command check-host-alive_4 # mail send to user nagios contacts nagiosadmin } define service{ use generic-service register 0 name my-templ-service-https service_description www check_command check_https_4 check_interval 5 retry_interval 1 notification_interval 1440 } define service{ use generic-service register 0 name my-templ-service-ping service_description ping check_command check_ping_4!100.0,20%!500.0,60% check_interval 5 retry_interval 1 notification_interval 1440 } #--------------------------------- define host{ use my-templ-host host_name yandex address yandex.ru } define service{ use my-templ-service-https host_name yandex } define host{ use my-templ-host host_name val-bmstu address val.bmstu.ru } define service{ use my-templ-service-https check_command check_http_4 host_name val-bmstu } #--------------------------------- define host{ use my-templ-host host_name switch1 address switch1 } define service{ use my-templ-service-ping host_name switch1 } define host{ use my-templ-host host_name switch2 address switch2 } define service{ use my-templ-service-ping host_name switch2 } define host{ use my-templ-host host_name switch3 address switch3 } define service{ use my-templ-service-ping host_name switch3 }
root@server:~# nagios4 -v /etc/nagios4/nagios.cfg root@server:~# service nagios4 restart
#11. Pandora FMS
Ключевые особенности:
- Pandora FMS расшифровывается как Pandora Flexible Monitoring Solution.
- Pandora FMS – это инструмент мониторинга ИТ-инфраструктуры в единой консоли.
- Элементы Pandora FMS состоят из консоли, базы данных, серверов, агентов.
Используя Pandora FMS, мы можем отслеживать:
- Сеть
- Логи
- Базы данных
- Облака
- Приложения
- Серверы
- IPAM
- SAP
- Интернет вещей
Он может выполнять как удаленный мониторинг, так и мониторинг на основе агентов, установленных на серверах.
Преимущества:
- Pandora FMS имеет версию с открытым исходным кодом.
- У него также есть также версия Enterprise, которая используется многими ИТ-компаниями.
- Версия Pandora FMS с открытым исходным кодом и корпоративная версия регулярно обновляются каждый месяц.
- Имеет прямой доступ с консоли.
Мы рассмотрели инструменты мониторинга с открытым исходным кодом для Linux-Prometheus, Grafana, Elastic search, Nagios Core, Zabbix, Cacti, Icinga, MRTG, Netdata, Sensu, Pandora FMS.