Инструменты пользователя

Инструменты сайта


raspberry_pi:pi_4_model_b:raspberry_pi_os:librenms:configuration:extensions

Это старая версия документа!


Настройка дополнительных компонентов LibreNMS

В этой статье описаны некоторые дополнительные настройки системы мониторинга сети «LibreNMS». Сама установка описана тут.

:!: Для удобства, все операции выполняются из консоли с правами «root», для этого нужно ввести команду sudo -s, в противном случае, перед каждым вводом необходимо добавлять «sudo»1)!

Быстрая проверка ICMP

По умолчанию, LibreNMS опрашивает устройства каждые 5 минут, предварительно делая проверку доступности. При необходимости, интервал опроса можно снизить до 1 минуты2), но зачастую это не нужно, т.к. это создает дополнительную большую нагрузку на дисковую подсистему сервера мониторинга и более чем достаточно, просто ежеминутно проверять доступность устройства в сети, посредством отправки ICMP-запроса.

  1. Если установлен RRDCached3), его необходимо предварительно остановить

    systemctl stop rrdcached
  2. авторизуемся под пользователем «librenms»

    su - librenms
  3. открываем файл конфигурации

    nano config.php

    добавляем в него параметр «ping_rrd_step» или, если он там уже есть, – правим, сохраняем, закрываем

    $config['ping_rrd_step'] = 60;
  4. обновляем файлы RRD

    ./scripts/rrdstep.php -h all
  5. выходим из пользователя

    exit
  6. открываем конфигурацию Cron для LibreNMS

    nano /etc/cron.d/librenms

    и добавляем в нее

    *    *    * * *   librenms    /opt/librenms/ping.php >> /dev/null 2>&1
  7. запускаем службу RRDCached

    systemctl start rrdcached

При желании, немного извратившись, интервал проверки можно снизить до 30 секунд.

Настройка RRDCached

Для снижения нагрузки на дисковую подсистему сервера мониторинга, создаваемую RRD при обновлении графиков, крайне желательно настроить RRDCached.

  1. Устанавливаем пакет и его зависимости

    apt update && apt install rrdcached
  2. открываем конфигурацию

    nano /etc/default/rrdcached

    и вносим в нее изменения

    DAEMON=/usr/bin/rrdcached
    WRITE_TIMEOUT=1800
    WRITE_JITTER=1800
    WRITE_THREADS=4
    BASE_PATH=/opt/librenms/rrd/
    JOURNAL_PATH=/var/lib/rrdcached/journal/
    PIDFILE=/var/run/rrdcached.pid
    SOCKFILE=/run/rrdcached.sock
    SOCKGROUP=librenms
    DAEMON_GROUP=librenms
    DAEMON_USER=librenms
    BASE_OPTIONS="-B -F -R"
  3. исправляем разрешения

    chown librenms:librenms /var/lib/rrdcached/journal/
  4. перезапускаем для применения новых настроек

    systemctl restart rrdcached
  5. авторизуемся под пользователем «librenms»

    su - librenms

    и включаем RRDCached в настройках LibreNMS4)

    ./lnms config:set rrdcached "unix:/run/rrdcached.sock"

Сбор сообщений syslog

sdfsdfsdfs!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Включение SNMP

Зачастую, включение SNMP-агента (сервера) не вызывает вопросов, но, как оказалось, могут быть нюансы.

Windows

В Windows 11 (22H2) достаточно запустить PowerShell в привилегированном режиме и выполнить команду

Add-WindowsCapability -Online -Name "SNMP.Client~~~~0.0.1.0"

и, возможно5),

Add-WindowsCapability -Online -Name "WMI-SNMP-Provider.Client~~~~0.0.1.0"

Далее заходим в «Службы», находим «Служба SNMP» и открываем свойства.

И вот тут у меня возникла проблема – служба есть, запускается и останавливается, а закладок «Агент SNMP», «Ловушки» и «Безопасность» – нет! Долго копался, но оказалось, что надо перезагрузить Windows… m( Скорее всего этот нюанс так же верен и для серверной версии и прочих.

Теперь, когда появились эти чертовы закладки, нужно только добавить сообщество «public»6) в режиме «read only» и выбрать «Принимать пакеты SNMP только от этих узлов», добавив адрес менеджера. Все, это v2c, детка, поэтому только так.

MikroTik

На этом божественном девайсе нужно отключить сообщество по умолчанию, добавить сообщество с настройками авторизации и шифрования и, собственно, выбрав третью версию протокола, включить его.

snmp.rsc
/snmp community
set [ find default=yes ] disabled=yes
add authentication-password="AuThPwd" authentication-protocol=SHA1 encryption-password="EncrPws" encryption-protocol=AES name=security-public security=private
 
/snmp
set enabled=yes location=Corridor trap-community=security-public trap-generators="" trap-version=3

Прочие настройки можно не трогать, они в данном контексте роли не играют.

Debian 11

Настройки SNMP для локального использования на Raspberry Pi 4 Model B с Raspberry Pi OS 11 (bullseye)7):

  1. загружаем скрипт определения версии ОС и разрешаем его выполнение

    curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro && chmod +x /usr/bin/distro
  2. переименовываем оригинальный файл конфигурации, открываем пустой файл

    mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.default && nano /etc/snmp/snmpd.conf

    и добавляем, не забыв поправить первые две строчки, следующее

    sysLocation    anyString
    sysContact     My Name <my@email.zone>
    
    sysServices    72
    master         agentx
    
    agentaddress   127.0.0.1
    
    #        sec.name   source         community
    com2sec  readonly   default        public
    
    #        groupName  securityModel  securityName
    group    rogrp      v2c            readonly
    
    #        name       incl/excl      subtree    mask(optional)
    view     allview    included       .1         80
    
    #        group      context        sec.model  sec.level  prefix  read      write  notif
    access   rogrp      ""             any        noauth     exact   allview   none   none
    
    #OS Distribution Detection
    extend distro /usr/bin/distro
    
    #Hardware Detection
    # (uncomment for x86 platforms)
    #extend manufacturer '/bin/cat /sys/devices/virtual/dmi/id/sys_vendor'
    #extend hardware '/bin/cat /sys/devices/virtual/dmi/id/product_name'
    #extend serial '/bin/cat /sys/devices/virtual/dmi/id/product_serial'
    
    # (uncomment for ARM platforms)
    extend hardware '/bin/cat /sys/firmware/devicetree/base/model'
    extend serial '/bin/cat /sys/firmware/devicetree/base/serial-number'

    Выше результат объединения идей из файла конфигурации по умолчанию, файла, поставляемого с LibreNMS, и статьи на IBM.

    :!: Такая конфигурация актуальна только при локальном доступе! Если доступ осуществляется по сети, необходимо настраивать третью версию протокола, которая поддерживает авторизацию и шифрование.

  3. активируем и перезапускаем snmpd

    systemctl enable snmpd && systemctl restart snmpd
1)
К примеру «sudo systemctl status rrdcached».
2)
А предварительную ping-проверку можно вовсе отключить.
3)
См. ниже.
4)
Тоже самое можно сделать через верб интерфейс по пути «Global Settings» → «Poller» → «Datastore: RRDTool» → «Enable rrdcached (socket)», но зачем…
5)
Но, скорее всего, этот компонент не нужен, не помню, надо будет проверить…
6)
Рекомендуют использовать что-то не очевидное, но зачем, если учесть следующий пункт.
7)
Для прочих версий платформ и дистрибутивов могут незначительно или кардинально отличать!

Обсуждение

Ваш комментарий:
Y᠎ O U W N E X S U᠎ F D H D P N A
 
Последнее изменение: 2023/03/17 09:47 — Николай Солошин