Настройка мониторинга сервера Nagios-Zabbix — различия между версиями

Материал из ARK-HOSTER.RU | Документация хостинга
Перейти к: навигация, поиск
(Новая страница: «= Настройка мониторинга сервера (Nagios/Zabbix) = == 1. Подготовка системы == * Войдите в систему п…»)
(нет различий)

Версия 08:33, 15 октября 2025

Содержание

Настройка мониторинга сервера (Nagios/Zabbix)

1. Подготовка системы

  • Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
  • Убедитесь, что у вас есть доступ к серверу через SSH или консоль.

2. Установка Nagios =

Обновление системы

1. Обновите систему: sudo apt update

2. Установите необходимые пакеты: sudo apt install -y wget curl build-essential apache2 php libapache2-mod-php php-gd libgd-dev libssl-dev libc6-dev libffi-dev unzip libapache2-mod-php7.4

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

1. Создайте пользователя и группу: sudo useradd nagios sudo groupadd nagcmd sudo usermod -a -G nagcmd nagios sudo usermod -a -G nagcmd www-data

Установка Nagios Core

1. Скачайте исходный код Nagios: cd /tmp wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.6.tar.gz tar xzf nagios-4.4.6.tar.gz cd nagios-4.4.6

2. Скомпилируйте и установите: sudo ./configure --with-command-group=nagcmd sudo make all sudo make install sudo make install-commandmode sudo make install-config sudo make install-webconf

3. Создайте пользователя для веб-интерфейса: sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Установка Nagios Plugins

1. Скачайте и установите плагины: cd /tmp wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz tar xzf nagios-plugins-2.3.3.tar.gz cd nagios-plugins-2.3.3

2. Скомпилируйте плагины: sudo ./configure --with-nagios-user=nagios --with-nagios-group=nagios sudo make sudo make install

Запуск Nagios

1. Запустите и включите автозапуск: sudo systemctl start nagios sudo systemctl enable nagios

2. Перезапустите Apache: sudo systemctl restart apache2

3. Проверьте статус: sudo systemctl status nagios

3. Установка Zabbix =

Установка Zabbix Server

1. Установите репозиторий Zabbix: wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu20.04_all.deb sudo dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb sudo apt update

2. Установите Zabbix Server, Frontend и Agent: sudo apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

Настройка базы данных

1. Установите MySQL: sudo apt install -y mysql-server

2. Создайте базу данных и пользователя: sudo mysql -u root -p

3. В MySQL выполните: CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin; CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost'; FLUSH PRIVILEGES; EXIT;

4. Импортируйте схему базы данных: sudo zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix -p zabbix

Настройка Zabbix Server

1. Отредактируйте конфигурацию: sudo nano /etc/zabbix/zabbix_server.conf

2. Настройте основные параметры: DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=password

3. Запустите и включите автозапуск: sudo systemctl start zabbix-server zabbix-agent apache2 sudo systemctl enable zabbix-server zabbix-agent apache2

4. Проверьте статус: sudo systemctl status zabbix-server

4. Настройка веб-интерфейса =

Настройка Apache для Nagios

1. Создайте виртуальный хост: sudo nano /etc/apache2/sites-available/nagios.conf

2. Добавьте конфигурацию: <VirtualHost *:80>

   ServerName nagios.example.com
   DocumentRoot /usr/local/nagios/share
   
   <Directory "/usr/local/nagios/share">
       Options Indexes FollowSymLinks
       AllowOverride AuthConfig
       Require all granted
   </Directory>
   
   <Directory "/usr/local/nagios/sbin">
       Options ExecCGI
       AllowOverride AuthConfig
       Require all granted
   </Directory>
   
   <Directory "/usr/local/nagios/cgi-bin">
       Options ExecCGI
       AllowOverride AuthConfig
       Require all granted
   </Directory>

</VirtualHost>

3. Включите сайт: sudo a2ensite nagios sudo a2enmod cgi sudo systemctl restart apache2

Настройка Apache для Zabbix

1. Настройте PHP для Zabbix: sudo nano /etc/php/7.4/apache2/php.ini

2. Измените параметры: max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 date.timezone = Europe/Moscow

3. Перезапустите Apache: sudo systemctl restart apache2

4. Откройте веб-интерфейс: http://your-server-ip/zabbix

5. Настройка мониторинга =

Настройка Nagios

1. Отредактируйте главный конфигурационный файл: sudo nano /usr/local/nagios/etc/nagios.cfg

2. Настройте основные параметры: log_file=/usr/local/nagios/var/nagios.log cfg_file=/usr/local/nagios/etc/objects/commands.cfg cfg_file=/usr/local/nagios/etc/objects/contacts.cfg cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg cfg_file=/usr/local/nagios/etc/objects/templates.cfg cfg_file=/usr/local/nagios/etc/objects/localhost.cfg

3. Создайте конфигурацию для хоста: sudo nano /usr/local/nagios/etc/objects/localhost.cfg

4. Добавьте конфигурацию хоста: define host{

   use                     linux-server
   host_name               localhost
   alias                   localhost
   address                 127.0.0.1

}

define service{

   use                     local-service
   host_name               localhost
   service_description     PING
   check_command           check_ping!100.0,20%!500.0,60%

}

define service{

   use                     local-service
   host_name               localhost
   service_description     Root Partition
   check_command           check_local_disk!20%!10%!/

}

Настройка Zabbix

1. Создайте хосты в Zabbix:

  • Зайдите в веб-интерфейс Zabbix
  • Перейдите в Configuration → Hosts
  • Нажмите Create host
  • Заполните параметры хоста

2. Настройте элементы данных:

  • Перейдите в Configuration → Hosts
  • Выберите хост и нажмите Items
  • Создайте элементы для мониторинга

3. Настройте триггеры:

  • Перейдите в Configuration → Hosts
  • Выберите хост и нажмите Triggers
  • Создайте триггеры для уведомлений

6. Настройка уведомлений =

Настройка email уведомлений в Nagios

1. Отредактируйте конфигурацию контактов: sudo nano /usr/local/nagios/etc/objects/contacts.cfg

2. Настройте контакт: define contact{

   contact_name                    nagiosadmin
   use                            generic-contact
   alias                          Nagios Admin
   email                          admin@example.com

}

define contactgroup{

   contactgroup_name       admins
   alias                   Nagios Administrators
   members                 nagiosadmin

}

3. Настройте команду уведомления: sudo nano /usr/local/nagios/etc/objects/commands.cfg

4. Добавьте команду: define command{

   command_name    notify-host-by-email
   command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$

}

Настройка уведомлений в Zabbix

1. Настройте медиа типы:

  • Перейдите в Administration → Media types
  • Создайте email медиа тип
  • Настройте SMTP сервер

2. Настройте пользователей:

  • Перейдите в Administration → Users
  • Создайте пользователя
  • Настройте медиа для пользователя

3. Настройте действия:

  • Перейдите в Configuration → Actions
  • Создайте action для уведомлений
  • Настройте условия и операции

7. Установка агентов =

Установка Nagios NRPE Agent

1. Установите NRPE на удаленном хосте: sudo apt install -y nagios-nrpe-server nagios-plugins

2. Настройте NRPE: sudo nano /etc/nagios/nrpe.cfg

3. Разрешите подключения от Nagios сервера: allowed_hosts=192.168.1.100

4. Запустите NRPE: sudo systemctl start nagios-nrpe-server sudo systemctl enable nagios-nrpe-server

Установка Zabbix Agent

1. Установите Zabbix Agent: sudo apt install -y zabbix-agent

2. Настройте агент: sudo nano /etc/zabbix/zabbix_agentd.conf

3. Настройте подключение к серверу: Server=192.168.1.100 ServerActive=192.168.1.100 Hostname=client-hostname

4. Запустите агент: sudo systemctl start zabbix-agent sudo systemctl enable zabbix-agent

8. Мониторинг сервисов =

Мониторинг веб-сервера

1. Nagios - проверка HTTP: define service{

   use                     local-service
   host_name               web-server
   service_description     HTTP
   check_command           check_http

}

2. Zabbix - HTTP мониторинг:

  • Создайте элемент данных для HTTP проверки
  • Настройте триггер для недоступности
  • Создайте график для отображения

Мониторинг базы данных

1. Nagios - проверка MySQL: define service{

   use                     local-service
   host_name               db-server
   service_description     MySQL
   check_command           check_mysql

}

2. Zabbix - MySQL мониторинг:

  • Установите MySQL плагин для Zabbix
  • Настройте элементы данных для MySQL
  • Создайте дашборд для базы данных

Мониторинг дискового пространства

1. Nagios - проверка дисков: define service{

   use                     local-service
   host_name               server
   service_description     Disk Space
   check_command           check_disk!20%!10%!/

}

2. Zabbix - мониторинг дисков:

  • Используйте встроенные элементы для дисков
  • Настройте триггеры для предупреждений
  • Создайте графики использования

9. Создание дашбордов =

Настройка дашборда в Zabbix

1. Создайте дашборд:

  • Перейдите в Monitoring → Dashboards
  • Нажмите Create dashboard
  • Добавьте виджеты для мониторинга

2. Настройте виджеты:

  • Добавьте графики производительности
  • Настройте карты сети
  • Добавьте таблицы проблем

Настройка карт в Nagios

1. Установите NagVis: sudo apt install -y nagvis

2. Настройте карты:

  • Создайте карту сети
  • Добавьте хосты и сервисы
  • Настройте автоматическое обновление

10. Резервное копирование =

Резервное копирование Nagios

1. Создайте скрипт резервного копирования: sudo nano /usr/local/bin/nagios-backup.sh

2. Добавьте содержимое: #!/bin/bash BACKUP_DIR="/backup/nagios" DATE=$(date +%Y%m%d_%H%M%S)

  1. Создание архива конфигурации

tar -czf $BACKUP_DIR/nagios-config-$DATE.tar.gz /usr/local/nagios/etc/

  1. Создание архива логов

tar -czf $BACKUP_DIR/nagios-logs-$DATE.tar.gz /usr/local/nagios/var/

echo "Nagios backup completed: $DATE"

3. Сделайте скрипт исполняемым: sudo chmod +x /usr/local/bin/nagios-backup.sh

Резервное копирование Zabbix

1. Создайте скрипт резервного копирования: sudo nano /usr/local/bin/zabbix-backup.sh

2. Добавьте содержимое: #!/bin/bash BACKUP_DIR="/backup/zabbix" DATE=$(date +%Y%m%d_%H%M%S)

  1. Резервное копирование базы данных

mysqldump -u zabbix -p zabbix > $BACKUP_DIR/zabbix-db-$DATE.sql

  1. Резервное копирование конфигурации

tar -czf $BACKUP_DIR/zabbix-config-$DATE.tar.gz /etc/zabbix/

echo "Zabbix backup completed: $DATE"

11. Устранение неполадок =

Частые проблемы

1. Nagios не запускается:

  • Проверьте синтаксис конфигурации: sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  • Проверьте права доступа к файлам
  • Проверьте логи: sudo tail -f /usr/local/nagios/var/nagios.log

2. Zabbix не подключается к базе данных:

  • Проверьте настройки подключения в zabbix_server.conf
  • Проверьте статус MySQL
  • Проверьте права пользователя zabbix

3. Агенты не подключаются:

  • Проверьте сетевую связность
  • Проверьте настройки файрвола
  • Проверьте конфигурацию агентов

Диагностика

1. Проверка статуса сервисов: sudo systemctl status nagios sudo systemctl status zabbix-server

2. Проверка логов: sudo tail -f /var/log/nagios/nagios.log sudo tail -f /var/log/zabbix/zabbix_server.log

3. Проверка подключений: sudo netstat -tlnp | grep :10050 sudo netstat -tlnp | grep :10051

Заключение

Система мониторинга успешно настроена! Теперь вы можете отслеживать состояние ваших серверов и получать уведомления о проблемах.

Для размещения ваших систем мониторинга на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):

Наши специалисты помогут с настройкой мониторинга и оптимизацией производительности ваших систем!