Zabbix: различия между версиями

904 байта добавлено ,  3 месяца назад
 
(не показаны 4 промежуточные версии 3 участников)
Строка 1: Строка 1:
Смотрите также:
* [https://github.com/contactless/wb-mqtt-zabbix Репозиторий с устаревшим нативным мостом в Zabbix]. Пакеты в разделе [https://github.com/wirenboard/wb-mqtt-zabbix/releases Releases].
* Статья на Хабре «[https://habr.com/ru/post/525852/ Zabbix + Wirenboard: мониторинг производства]» — подробное описание создания системы с Wiren Board и Zabbix. В статье используется плагин, написанный пользователем — [https://github.com/v-zhuravlev/zbx_mqtt zbx_mqtt]
== Подготовка ==  
== Подготовка ==  


Строка 10: Строка 6:
apt update && apt install zabbix-agent -y
apt update && apt install zabbix-agent -y
</syntaxhighlight>
</syntaxhighlight>
В нашем репозитории только первая версия агента, но вы можете установить вторую версию на сервер с Zabbix (или на контроллер) и подключиться к MQTT контроллера оттуда.


== Настройка Zabbix Agent ==  
== Настройка Zabbix Agent ==  


Для получения значений переменных в Zabbix используется чтение retained-значений каналов.
Получение значений переменных в Zabbix происходит через чтение retained-значений каналов.


Для настройки <code>zabbix-agent</code> нужно создать файл <code>zabbix-mqtt.conf</code> в директории <code>/etc/zabbix/zabbix_agentd.conf.d/</code> и записать в него строку:
Для работы zabbix-агента ему нужно дать расширенные права доступа. Поэтому потребуется установить <code>sudo</code>:
<syntaxhighlight lang="bash">
apt install sudo -y
</syntaxhighlight>
 
Предоставить нужные права пользователю zabbix можно командой:
<syntaxhighlight lang="bash">
echo 'zabbix ALL=(ALL) NOPASSWD: /usr/bin/mosquitto_sub' > /etc/sudoers.d/zabbix-mqtt
</syntaxhighlight>
 
Далее необходимо создать файл <code>zabbix-mqtt.conf</code> в директории <code>/etc/zabbix/zabbix_agentd.conf.d/</code> и записать в него строку:


<pre>
<pre>
UserParameter=mqtt.value[*],mosquitto_sub -t '$1' -C 1
UserParameter=mqtt.value[*], sudo mosquitto_sub -t '$1' -C 1
</pre>
</pre>


Это можно сделать одной командой:
Это можно сделать одной командой:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
echo "UserParameter=mqtt.value[*],mosquitto_sub -t '\$1' -C 1" > /etc/zabbix/zabbix_agentd.conf.d/zabbix-mqtt.conf
echo "UserParameter=mqtt.value[*], sudo mosquitto_sub -t '\$1' -C 1" > /etc/zabbix/zabbix_agentd.conf.d/zabbix-mqtt.conf
</syntaxhighlight>
</syntaxhighlight>


Строка 46: Строка 54:
zabbix_agentd -t mqtt.value[/devices/buzzer/controls/frequency]
zabbix_agentd -t mqtt.value[/devices/buzzer/controls/frequency]
</syntaxhighlight>
</syntaxhighlight>
==Полезные ссылки==
* [https://github.com/contactless/wb-mqtt-zabbix Репозиторий с устаревшим нативным мостом в Zabbix]. Пакеты в разделе [https://github.com/wirenboard/wb-mqtt-zabbix/releases Releases].
* Статья на Хабре «[https://habr.com/ru/post/525852/ Zabbix + Wirenboard: мониторинг производства]» — подробное описание создания системы с Wiren Board и Zabbix. В статье используется плагин, написанный пользователем — [https://github.com/v-zhuravlev/zbx_mqtt zbx_mqtt]
* [https://support.wirenboard.com/t/zabbix-agent-dlya-kontrollera/18376 Пакет с агентом v.6.4.10]