Агент SNMP

From Wiren Board
(Redirected from Агент SNMP)

This is the approved revision of this page, as well as being the most recent.
Jump to navigation Jump to search

Контроллер как источник SNMP

Иногда нужно получать какие-то параметры из контроллера по SNMP, например, значения топиков. Для реализации требуется установить и настроить на контроллере агента SNMP.

Установка и предварительная настройка пакетов

Обновите источники и установите пакеты snmp и snmpd:

apt update && apt-get install snmp snmpd -y

Отредактируйте основной файл конфигурации демона:

mcedit /etc/snmp/snmpd.conf

В секцию # ACCESS CONTROL допишите строчку:

view   systemonly  included   .1.3.6.1.4.1.2021.8

А в конец файла допишите ссылку на скрипт:

extend .1.3.6.1.4.1.2021.8 tt /var/lib/snmp/mqtt-snmp.sh

Добавление скрипта

Отредактируйте скрипт /var/lib/snmp/mqtt-snmp.sh

mcedit /var/lib/snmp/mqtt-snmp.sh

И приведите его к виду:

#!/bin/sh
echo "mosquitto topics"
# voltage Vout
echo $(/usr/bin/mosquitto_sub -C 1 -t "/devices/wb-adc/controls/5Vout")
# voltage Vin
echo $(/usr/bin/mosquitto_sub -C 1 -t "/devices/wb-adc/controls/Vin")

Установите права:

chmod a+rx /var/lib/snmp/mqtt-snmp.sh

Теперь добавляем в этот скрипт нужные топики, или создаем несколько скриптов с разными наборами. Если вы создаете несколько скриптов, не забудьте дописать ссылки на них в конец файла /etc/snmp/snmpd.conf.

После сохранения изменений в скрипте, перезапустите демон snmpd:

systemctl restart snmpd && systemctl status snmpd

Можно протестировать:

snmpwalk -On -v2c -c public 127.0.0.1 1.3.6.1.4.1.2021.8.4