Установка и настройка LibreNMS на VPS для мониторинга сетевой инфраструктуры
TL;DR
В этом подробном руководстве мы шаг за шагом настроим LibreNMS на современном VPS под управлением Ubuntu 24.04 LTS, чтобы вы могли эффективно мониторить производительность и состояние вашей сетевой инфраструктуры, серверов и приложений. Вы получите полностью функционирующую систему мониторинга, способную собирать данные по SNMP, ICMP и другим протоколам, визуализировать их и оповещать о проблемах.
- Полная установка LibreNMS с нуля на Ubuntu 24.04 LTS.
- Настройка веб-сервера Nginx, PHP-FPM и базы данных MariaDB.
- Обеспечение безопасности сервера с помощью UFW и Fail2ban.
- Конфигурация TLS/HTTPS для защищенного доступа к веб-интерфейсу.
- Рекомендации по бэкапам и обслуживанию системы.
- Подробный раздел по устранению типичных проблем.
Что мы настраиваем и зачем
Мониторинг сетевой инфраструктуры является критически важной задачей для любого владельца сервера, разработчика или системного администратора. Он позволяет своевременно выявлять проблемы, анализировать производительность, планировать масштабирование и предотвращать простои. Сегодня мы будем устанавливать и настраивать LibreNMS – мощную, открытую и полностью бесплатную систему мониторинга, основанную на PHP/MySQL/SNMP. Она предоставляет широкий спектр функций для сбора, анализа и визуализации данных о состоянии серверов, сетевых устройств, приложений и сервисов.
В итоге вы получите централизованную панель, которая будет отображать графики загрузки CPU, использования памяти, трафика, состояния дисков, температур и многих других метрик для всех ваших устройств. Вы сможете настроить оповещения о превышении пороговых значений или недоступности сервисов, получая уведомления по электронной почте, Slack, Telegram или другим каналам. Это позволит вам оперативно реагировать на инциденты и поддерживать стабильность вашей инфраструктуры.
Существуют различные альтернативы LibreNMS, каждая со своими особенностями. Среди популярных решений можно выделить Zabbix (более сложный в настройке, но очень гибкий), Prometheus + Grafana (мощный стек для метрик, но требует отдельной настройки экспортеров), Observium (коммерческий продукт с ограниченной бесплатной версией) или облачные решения, такие как Datadog, New Relic, Grafana Cloud. Однако, облачные сервисы часто дороги и предоставляют меньше контроля над данными, а также могут не подходить для мониторинга приватных сетей без дополнительной настройки VPN. Самостоятельная установка LibreNMS на VPS дает полный контроль над данными, экономит бюджет и позволяет адаптировать систему под уникальные требования вашей инфраструктуры, обеспечивая при этом высокую производительность и гибкость.
Какой VPS-конфиг нужен под эту задачу
Выбор подходящего VPS для LibreNMS зависит от количества устройств, которые вы планируете мониторить, и частоты сбора данных. LibreNMS может быть достаточно ресурсоемким, особенно если у вас много устройств и вы храните данные за длительный период.
Минимальные требования (для 5-10 устройств):
- CPU: 2 ядра (например, Intel Xeon E5 или аналогичный).
- RAM: 4 ГБ. LibreNMS, PHP-FPM, Nginx и MariaDB потребляют значительный объем памяти.
- Диск: 100 ГБ SSD. SSD критически важен для производительности базы данных и RRD-файлов (Round Robin Database), где хранятся графики.
- Сеть: 100 Мбит/с. Для мониторинга обычно достаточно, если ваш VPS не является центральным узлом для огромного количества данных.
Рекомендуемый VPS-план (для 20-50 устройств):
Для более серьезного использования, включающего мониторинг нескольких десятков устройств и хранение истории за несколько месяцев, рекомендуется следующий конфиг:
- CPU: 4 ядра (например, Intel Xeon Gold или AMD EPYC).
- RAM: 8 ГБ.
- Диск: 200-300 ГБ NVMe SSD. NVMe обеспечит максимальную скорость для операций с диском.
- Сеть: 1 Гбит/с.
Вы можете рассмотреть VPS с указанными характеристиками для размещения вашего LibreNMS инстанса. Убедитесь, что выбранный тарифный план предлагает достаточный объем памяти и быстрый дисковый ввод/вывод.
Когда нужен dedicated, а не VPS
Если вы планируете мониторить сотни или тысячи устройств, хранить данные за годы, или если вам требуется очень высокая производительность и изолированные ресурсы, то стоит рассмотреть выделенный сервер (dedicated server). Dedicated серверы предоставляют полную мощность физического оборудования без виртуализации, что идеально подходит для нагруженных баз данных и интенсивных операций ввода-вывода. В этом случае, вы можете выбрать подходящий dedicated, чтобы обеспечить необходимый уровень производительности и масштабируемости.
Локация: на что влияет
Выбор локации VPS важен для минимизации задержек (latency) при сборе данных. Размещайте LibreNMS в том же регионе или максимально близко к устройствам, которые вы планируете мониторить. Это уменьшит время отклика SNMP-запросов и обеспечит более точные и своевременные данные.
Подготовка сервера
Перед установкой LibreNMS необходимо подготовить ваш VPS. Мы будем использовать Ubuntu Server 24.04 LTS как операционную систему, так как она актуальна и поддерживается до 2029 года.
1. Подключение к серверу
Подключитесь к вашему VPS по SSH, используя учетные данные, предоставленные вашим провайдером. Рекомендуется использовать SSH-ключи для большей безопасности.
ssh root@your_vps_ip_address
2. Создание нового пользователя с правами sudo
Работать под root небезопасно. Создадим нового пользователя и добавим его в группу sudo.
adduser librenms_admin # Создаем нового пользователя
usermod -aG sudo librenms_admin # Добавляем его в группу sudo
Теперь выйдите из root и зайдите под новым пользователем:
exit
ssh librenms_admin@your_vps_ip_address
3. Обновление системы и установка базовых утилит
Обновим список пакетов и все установленные пакеты, а также установим необходимые утилиты.
sudo apt update && sudo apt upgrade -y # Обновляем список пакетов и систему
sudo apt install -y curl wget git vim htop screen unzip # Устанавливаем базовые утилиты
4. Настройка брандмауэра (UFW)
UFW (Uncomplicated Firewall) – это простой в использовании интерфейс для iptables. Настроим его, чтобы разрешить только необходимые порты.
sudo ufw allow OpenSSH # Разрешаем SSH (порт 22)
sudo ufw allow http # Разрешаем HTTP (порт 80)
sudo ufw allow https # Разрешаем HTTPS (порт 443)
sudo ufw allow 161/udp # Разрешаем SNMP (порт 161 UDP) - для приема SNMP-трапов
sudo ufw enable # Включаем брандмауэр
sudo ufw status # Проверяем статус брандмауэра
Вывод sudo ufw status должен показать разрешенные порты.
5. Установка Fail2ban
Fail2ban помогает защитить ваш сервер от атак методом подбора пароля, блокируя IP-адреса, с которых были замечены многократные неудачные попытки входа.
sudo apt install -y fail2ban # Устанавливаем Fail2ban
sudo systemctl enable fail2ban # Включаем автозапуск Fail2ban
sudo systemctl start fail2ban # Запускаем Fail2ban
Fail2ban по умолчанию уже настроен для защиты SSH. Вы можете создать файл конфигурации /etc/fail2ban/jail.local для более тонкой настройки, но для начала это не обязательно.
Установка ПО — пошагово
Теперь приступим к установке всех необходимых компонентов для LibreNMS. Мы будем использовать Nginx в качестве веб-сервера, PHP-FPM для обработки PHP-скриптов и MariaDB для базы данных.
1. Установка Nginx
Nginx – это высокопроизводительный веб-сервер, который отлично подходит для статического контента и работы с PHP-FPM.
sudo apt install -y nginx # Устанавливаем Nginx
sudo systemctl enable nginx # Включаем автозапуск Nginx
sudo systemctl start nginx # Запускаем Nginx
Проверить, что Nginx работает, можно, перейдя по IP-адресу вашего VPS в браузере. Вы должны увидеть страницу приветствия Nginx.
2. Установка MariaDB
MariaDB – это форк MySQL, полностью совместимый с ним и часто предлагающий лучшую производительность.
sudo apt install -y mariadb-server mariadb-client # Устанавливаем MariaDB сервер и клиент
sudo systemctl enable mariadb # Включаем автозапуск MariaDB
sudo systemctl start mariadb # Запускаем MariaDB
sudo mysql_secure_installation # Запускаем скрипт для защиты MariaDB
Во время выполнения mysql_secure_installation вам будет предложено установить пароль для пользователя root базы данных, удалить анонимных пользователей, запретить удаленный вход root и удалить тестовую базу данных. Рекомендуется ответить "Y" на все вопросы.
3. Установка PHP и PHP-FPM
LibreNMS требует PHP. Для 2026 года актуальной будет PHP 8.2 или 8.3 (или даже новее). Ubuntu 24.04 LTS обычно поставляется с PHP 8.3.
sudo apt install -y php8.3-cli php8.3-fpm php8.3-mysql php8.3-gd php8.3-snmp php8.3-curl php8.3-xml php8.3-zip php8.3-mbstring php8.3-json php8.3-gmp php8.3-pear php8.3-bcmath php8.3-memcached php8.3-imagick php8.3-ssh2 php8.3-redis # Устанавливаем PHP-FPM и необходимые расширения
sudo systemctl enable php8.3-fpm # Включаем автозапуск PHP-FPM
sudo systemctl start php8.3-fpm # Запускаем PHP-FPM
Необходимо также установить некоторые системные пакеты, которые LibreNMS использует для сбора данных и обработки графиков.
sudo apt install -y snmp snmpd rrdtool fping imagemagick whois mtr-tiny nmap python3-pymysql python3-memcache python3-dotenv # Устанавливаем дополнительные утилиты
4. Настройка PHP для LibreNMS
Отредактируем файл конфигурации PHP-FPM, чтобы увеличить лимиты памяти и времени выполнения, что необходимо для LibreNMS.
sudo vim /etc/php/8.3/fpm/php.ini # Открываем файл конфигурации PHP-FPM
Найдите следующие строки и измените их значения:
memory_limit = 256M
max_execution_time = 300
date.timezone = Europe/Moscow ; или ваш часовой пояс
Сохраните изменения и перезапустите PHP-FPM:
sudo systemctl restart php8.3-fpm
5. Установка Composer
Composer – это менеджер зависимостей для PHP, используемый LibreNMS для установки компонентов.
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer # Скачиваем и устанавливаем Composer
6. Создание пользователя LibreNMS и клонирование репозитория
Создадим отдельного системного пользователя для LibreNMS без возможности входа по SSH и скачаем исходный код.
sudo useradd -r -M -d /opt/librenms librenms # Создаем системного пользователя librenms
sudo usermod -a -G librenms www-data # Добавляем пользователя librenms в группу www-data (для Nginx)
sudo mkdir /opt/librenms # Создаем директорию для LibreNMS
sudo chown librenms:librenms /opt/librenms # Устанавливаем владельца директории
sudo chmod 775 /opt/librenms # Устанавливаем права на директорию
sudo su - librenms # Переключаемся на пользователя librenms
git clone https://github.com/librenms/librenms.git /opt/librenms # Клонируем репозиторий LibreNMS
exit # Возвращаемся к нашему пользователю sudo
7. Установка зависимостей LibreNMS
Переходим в директорию LibreNMS и устанавливаем все зависимости с помощью Composer.
sudo su - librenms # Переключаемся на пользователя librenms
cd /opt/librenms # Переходим в директорию LibreNMS
composer install --no-dev --optimize-autoloader # Устанавливаем зависимости
exit # Возвращаемся к нашему пользователю sudo
8. Настройка прав доступа к файлам LibreNMS
Необходимо установить правильные права доступа для некоторых директорий, чтобы LibreNMS мог записывать данные.
sudo chown -R librenms:librenms /opt/librenms # Устанавливаем владельца на всю директорию
sudo setfacl -R -m g:www-data:rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/ # Устанавливаем права ACL для веб-сервера
sudo setfacl -R -m o::--- /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/ # Запрещаем доступ другим
Конфигурация
После установки всех компонентов, необходимо их правильно сконфигурировать.
1. Настройка базы данных MariaDB
Создадим базу данных и пользователя для LibreNMS.
sudo mysql -u root -p # Подключаемся к MariaDB от имени root (потребует пароль, который вы установили ранее)
Внутри консоли MariaDB выполните следующие команды, заменив your_db_password на надежный пароль:
CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'your_db_password';
GRANT ALL PRIVILEGES ON librenms. TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
EXIT;
2. Настройка Nginx для LibreNMS
Создадим файл конфигурации Nginx для LibreNMS. Удалим конфигурацию по умолчанию и создадим новую.
sudo rm /etc/nginx/sites-enabled/default # Удаляем дефолтный конфиг
sudo vim /etc/nginx/sites-available/librenms.conf # Создаем новый конфиг
Вставьте следующее содержимое в файл librenms.conf. Замените your_domain_or_ip на ваш домен или IP-адрес VPS.
server {
listen 80;
server_name your_domain_or_ip;
root /opt/librenms/html;
index index.php;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/xml application/xml application/xml+rss text/javascript;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
location ~ /.env {
deny all;
}
location /images/os {
deny all;
}
# Enable for LibreNMS API
location /api {
try_files $uri $uri/ /api_v2.php?$query_string;
}
}
Сохраните файл, создайте символическую ссылку и проверьте конфигурацию Nginx, затем перезапустите его.
sudo ln -s /etc/nginx/sites-available/librenms.conf /etc/nginx/sites-enabled/ # Создаем симлинк
sudo nginx -t # Проверяем конфигурацию Nginx на ошибки
sudo systemctl reload nginx # Перезапускаем Nginx
3. Базовая конфигурация LibreNMS
LibreNMS использует файл config.php для основных настроек. Создадим его из примера.
sudo cp /opt/librenms/config.php.default /opt/librenms/config.php # Копируем шаблон конфига
sudo vim /opt/librenms/config.php # Открываем для редактирования
Найдите и отредактируйте следующие строки, заменив значения на свои:
// Database config
$config['db_host'] = 'localhost';
$config['db_user'] = 'librenms';
$config['db_pass'] = 'your_db_password'; // Пароль, который вы задали для пользователя librenms
$config['db_name'] = 'librenms';
// Other settings
$config['snmp']['community'][] = 'public'; // Добавьте ваши SNMP community строки
$config['rrd_dir'] = '/opt/librenms/rrd'; // Директория для RRD файлов
$config['log_dir'] = '/opt/librenms/logs'; // Директория для логов
$config['timezone'] = 'Europe/Moscow'; // Ваш часовой пояс
Сохраните изменения. Убедитесь, что часовой пояс в config.php совпадает с часовым поясом в php.ini.
4. Настройка Cron-заданий
LibreNMS использует cron-задания для регулярного опроса устройств, обработки данных и выполнения других фоновых задач.
sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms # Копируем cron-файл
sudo vim /etc/cron.d/librenms # Открываем для редактирования
Убедитесь, что все строки начинаются с librenms, как пользователь, от которого будут выполняться задания.
# /etc/cron.d/librenms: crontab entries for librenms
# Update LibreNMS every 5 minutes
/5 librenms /opt/librenms/discovery.php -h all >> /dev/null 2>&1
/5 librenms /opt/librenms/poller-wrapper.py 16 >> /dev/null 2>&1
# Daily maintenance tasks
15 0 librenms /opt/librenms/daily.sh >> /dev/null 2>&1
# Housekeeping
0 /6 librenms /opt/librenms/cronic /opt/librenms/db-schema-validate.php >> /dev/null 2>&1
Сохраните файл.
5. Настройка SNMP Daemon (snmpd)
На VPS, где установлен LibreNMS, также полезно настроить snmpd, чтобы сам сервер LibreNMS мог быть мониторинг как обычное устройство.
sudo vim /etc/snmp/snmpd.conf # Открываем файл конфигурации snmpd
Закомментируйте или удалите строку agentAddress udp:127.0.0.1:161 и добавьте agentAddress udp:161,udp6:[::1]:161 для прослушивания всех интерфейсов.
Найдите строку rocommunity public default -V systemonly и измените её на что-то вроде:
rocommunity your_snmp_community_string default -V systemonly
Замените your_snmp_community_string на вашу надежную строку community. Также добавьте следующую строку, чтобы snmpd мог получать информацию о дисках и других метриках:
disk /
Сохраните изменения и перезапустите snmpd:
sudo systemctl restart snmpd
6. Установка TLS/HTTPS с Certbot
Для безопасного доступа к веб-интерфейсу LibreNMS необходимо настроить HTTPS. Используем Certbot для получения и автоматического обновления SSL-сертификатов Let's Encrypt.
sudo apt install -y certbot python3-certbot-nginx # Устанавливаем Certbot и плагин для Nginx
sudo certbot --nginx -d your_domain_or_ip # Запускаем Certbot для получения сертификата
Следуйте инструкциям Certbot. Он автоматически изменит конфигурацию Nginx, добавит необходимые записи для HTTPS и настроит автоматическое обновление сертификатов.
7. Проверка работоспособности
После всех настроек, откройте ваш домен или IP-адрес в браузере (теперь уже по HTTPS). Вы должны увидеть страницу установки LibreNMS.
- Шаг 1: Перейдите на
https://your_domain_or_ip. - Шаг 2: Следуйте инструкциям веб-установщика LibreNMS. Он проверит все зависимости. Если есть предупреждения, убедитесь, что вы правильно выполнили все предыдущие шаги.
- Шаг 3: Создайте первого административного пользователя.
- Шаг 4: После завершения установки вы попадете в панель LibreNMS.
Теперь вы можете добавить ваш VPS с LibreNMS в качестве устройства для мониторинга, используя строку community, которую вы настроили в /etc/snmp/snmpd.conf.
Бэкапы и обслуживание
Регулярное резервное копирование и обслуживание критически важны для любой производственной системы. LibreNMS не исключение.
Что бэкапить
- База данных MariaDB: Содержит всю информацию о ваших устройствах, конфигурациях, пользователях и истории событий.
- Конфигурационные файлы LibreNMS: Особенно
/opt/librenms/config.phpи любые кастомные скрипты или шаблоны. - RRD-файлы: Эти файлы в
/opt/librenms/rrd/содержат все данные графиков. Они могут быть очень большими.
Простой скрипт автобэкапа
Создадим простой скрипт для ежедневного бэкапа. Скрипт будет выполнять дамп базы данных и архивировать конфигурационные файлы и RRD-данные.
sudo mkdir -p /opt/librenms/backups # Создаем директорию для бэкапов
sudo chown librenms:librenms /opt/librenms/backups # Устанавливаем владельца
sudo vim /opt/librenms/backup.sh # Создаем скрипт бэкапа
Вставьте следующее содержимое в backup.sh, заменив your_db_password на ваш пароль от базы данных LibreNMS.
#!/bin/bash
# Настройки
DB_USER="librenms"
DB_PASS="your_db_password"
DB_NAME="librenms"
BACKUP_DIR="/opt/librenms/backups"
LIBRENMS_DIR="/opt/librenms"
TIMESTAMP=$(date +%Y%m%d%H%M%S)
# Создаем дамп базы данных
echo "Dumping database..."
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/librenms_db_$TIMESTAMP.sql
# Архивируем конфиги и RRD
echo "Archiving configs and RRDs..."
tar -czvf $BACKUP_DIR/librenms_files_$TIMESTAMP.tar.gz \
$LIBRENMS_DIR/config.php \
$LIBRENMS_DIR/rrd \
$LIBRENMS_DIR/logs \
--exclude="$LIBRENMS_DIR/backups"
# Удаляем старые бэкапы (старше 7 дней)
echo "Cleaning old backups..."
find $BACKUP_DIR -type f -name "librenms_" -mtime +7 -delete
echo "Backup completed!"
Сделайте скрипт исполняемым и добавьте его в cron.
sudo chmod +x /opt/librenms/backup.sh # Делаем скрипт исполняемым
sudo crontab -e -u librenms # Открываем crontab для пользователя librenms
Добавьте следующую строку в конец файла cron для ежедневного запуска бэкапа (например, в 3:00 ночи):
0 3 /opt/librenms/backup.sh >> /opt/librenms/logs/backup.log 2>&1
Куда складывать
Хранить бэкапы на том же сервере, что и оригинальные данные, небезопасно. Рассмотрите следующие варианты:
- Внешнее S3-совместимое хранилище: Используйте утилиты типа
s3cmdилиrcloneдля автоматической синхронизации бэкапов с облачным хранилищем (например, Amazon S3, DigitalOcean Spaces, Backblaze B2). - Отдельный VPS: Настройте
rsyncпо SSH для копирования бэкапов на другой ваш VPS. - Локальное хранилище с шифрованием: Для небольших объемов можно использовать локальное хранилище, но оно должно быть зашифровано и регулярно копироваться вручную или по скрипту на внешний носитель.
Обновления: rolling vs maintenance window
LibreNMS регулярно выпускает обновления. Важно поддерживать систему в актуальном состоянии.
- Rolling updates: LibreNMS имеет скрипт
daily.sh, который выполняет обновление кода, если он запускается из cron. Это относительно безопасно для минорных обновлений. - Maintenance window: Для крупных обновлений (например, смена версии PHP или ядра ОС) рекомендуется выделять окно обслуживания.
- Остановите LibreNMS poller:
sudo systemctl stop librenms-poller.service(если вы используете systemd service для поллера). - Сделайте полный бэкап.
- Выполните обновление ОС:
sudo apt update && sudo apt upgrade -y. - Обновите LibreNMS вручную:
cd /opt/librenms && git pull && composer install --no-dev --optimize-autoloader && ./daily.sh. - Проверьте логи и веб-интерфейс.
- Запустите poller:
sudo systemctl start librenms-poller.service.
- Остановите LibreNMS poller:
Troubleshooting + FAQ
Q: Какой VPS-конфиг минимально подойдёт для LibreNMS?
A: Для начала, если вы планируете мониторить до 10 устройств, минимально приемлемый конфиг будет 2 ядра CPU, 4 ГБ ОЗУ и 100 ГБ SSD. Однако, для стабильной работы и хранения данных за более длительный период, рекомендуется увеличить эти параметры до 4 ядер CPU, 8 ГБ ОЗУ и 200 ГБ NVMe SSD. Это обеспечит лучшую производительность базы данных и более плавную работу веб-интерфейса.
Q: Что выбрать — VPS или dedicated для этой задачи?
A: Для большинства индивидуальных пользователей или небольших команд VPS будет оптимальным выбором, предлагая хороший баланс между стоимостью и производительностью. Если же вы управляете крупной инфраструктурой с сотнями или тысячами устройств, требуете максимальной производительности дисковой подсистемы и хотите полной изоляции ресурсов, то выделенный сервер (dedicated) будет более подходящим решением. Он предоставит вам полный контроль над аппаратным обеспечением и гарантированную производительность.
Q: Веб-интерфейс LibreNMS не загружается или показывает ошибку 502 Bad Gateway. Что делать?
A: Ошибка 502 обычно указывает на проблемы с PHP-FPM. Проверьте статус PHP-FPM: sudo systemctl status php8.3-fpm. Убедитесь, что он запущен и работает. Также проверьте логи Nginx (sudo tail /var/log/nginx/error.log) и PHP-FPM (sudo tail /var/log/php8.3-fpm.log или аналогичный путь). Часто проблема связана с неправильными разрешениями файлов, нехваткой памяти или ошибками в конфигурации PHP.
Q: Устройства добавлены, но графики пустые или нет данных.
A: Это означает, что поллер LibreNMS не может собрать данные по SNMP. Проверьте следующее:
- Firewall: Убедитесь, что порт 161 UDP открыт на LibreNMS сервере и на целевом устройстве.
- SNMP Community: Убедитесь, что строка SNMP community в LibreNMS (в
config.phpи при добавлении устройства) совпадает с той, что настроена на целевом устройстве. - SNMP Daemon: На целевом устройстве убедитесь, что
snmpdзапущен и правильно настроен. - Poller: Запустите poller вручную для одного устройства:
sudo su - librenms -c "/opt/librenms/poller.php -h <device_id_or_hostname> -r -f -d". Это даст подробный вывод о процессе сбора данных.
Q: LibreNMS работает медленно, страницы долго загружаются.
A: Медленная работа может быть вызвана несколькими причинами:
- Недостаток ресурсов: Проверьте загрузку CPU, использование RAM и операции ввода-вывода диска на вашем VPS (
htop,iostat,free -h). Если какой-либо ресурс постоянно загружен, возможно, вам потребуется более мощный VPS. - Оптимизация MariaDB: Убедитесь, что MariaDB настроена оптимально. Для начала можно использовать скрипт
mysqltuner.plдля рекомендаций. - PHP-FPM Workers: Возможно, у вас недостаточно процессов PHP-FPM. Отредактируйте
/etc/php/8.3/fpm/pool.d/www.confи увеличьтеpm.max_children,pm.start_serversи другие параметры, перезапустив PHP-FPM. - RRD Updates: Убедитесь, что cron-задания работают корректно и нет задержек в обновлении RRD-файлов.
Q: Как добавить новое устройство для мониторинга?
A: После входа в веб-интерфейс LibreNMS, перейдите в раздел "Devices" -> "Add Device". Вам потребуется указать IP-адрес или hostname устройства, а также SNMP Community String. LibreNMS автоматически обнаружит тип устройства и начнет сбор данных.
Выводы и следующие шаги
Поздравляем! Вы успешно установили и настроили LibreNMS на вашем VPS, создав мощную и гибкую систему для мониторинга сетевой инфраструктуры. Теперь у вас есть централизованный инструмент для отслеживания состояния и производительности всех ваших устройств, что значительно упростит управление и сократит время реакции на потенциальные проблемы. Вы можете быть уверены, что ваша инфраструктура находится под постоянным контролем.
Теперь, когда базовая настройка завершена, вы можете двигаться дальше:
- Добавление устройств: Начните добавлять все ваши серверы, роутеры, коммутаторы и другие сетевые устройства в LibreNMS.
- Настройка оповещений: Изучите систему оповещений LibreNMS. Настройте уведомления по электронной почте, Slack, Telegram или другим каналам для своевременного информирования о критических событиях.
- Исследование возможностей: LibreNMS обладает обширным функционалом, включая автообнаружение, кастомные графики, карты сети, интеграции. Потратьте время на изучение документации и экспериментирование с различными функциями, чтобы максимально использовать потенциал вашей новой системы мониторинга.