I can't seem to get MQTT working with Zabbix and I'm sure it must be something simple.
My setup is reasonably large (400+ hosts, ~50k items, Zabbix 5.4). It's all working fine.
I used to have MQTT working via external checks, but I thought that since it is now integrated into Zabbix, I would use that instead.
I have a Mosquito broker running on a host - that's working, I can see devices publishing data to it, I can see test devices subscribing and receiving data from it.
The host that the broker is running on is monitored by Zabbix and I've added to that host the following MQTT Master item:
And I've added a dependent item
(the topic is published as mr/esp8266/192.168.1.151/temperature)
But I can see no indication that the topic is being subscribed to - there has been no contact with the broker from the host. I've tried different forms of the broker URI: IP address, FQDN, adding tcp://, adding the port. I can subscribe from other external hosts so there's no firewall in the way. zabbix_agent2 is running on the broker and all other system data is being collected.
The logs for zabbix_agent2 have no mention of MQTT in them other than "using plugin 'MQTT' providing following interfaces: watcher, configurator" whenever it is restarted.
So what am I missing?
Is the broker host the correct Zabbix host to be adding the MQTT monitoring to?
Do I need to do any configuring in zabbix_agent2.conf?
Thanks for any insight from anyone.
My setup is reasonably large (400+ hosts, ~50k items, Zabbix 5.4). It's all working fine.
I used to have MQTT working via external checks, but I thought that since it is now integrated into Zabbix, I would use that instead.
I have a Mosquito broker running on a host - that's working, I can see devices publishing data to it, I can see test devices subscribing and receiving data from it.
The host that the broker is running on is monitored by Zabbix and I've added to that host the following MQTT Master item:
Name: MQTT Master
Type: Zabbix Agent (active)
Key: mqtt.get["localhost","mr/esp8266/192.168.1.151/#"]
Type: Text
Type: Zabbix Agent (active)
Key: mqtt.get["localhost","mr/esp8266/192.168.1.151/#"]
Type: Text
And I've added a dependent item
Name: Temp151
Type: Dependent Item
key: temperature
Master Item: MQTT Master
Type: Dependent Item
key: temperature
Master Item: MQTT Master
(the topic is published as mr/esp8266/192.168.1.151/temperature)
But I can see no indication that the topic is being subscribed to - there has been no contact with the broker from the host. I've tried different forms of the broker URI: IP address, FQDN, adding tcp://, adding the port. I can subscribe from other external hosts so there's no firewall in the way. zabbix_agent2 is running on the broker and all other system data is being collected.
The logs for zabbix_agent2 have no mention of MQTT in them other than "using plugin 'MQTT' providing following interfaces: watcher, configurator" whenever it is restarted.
So what am I missing?
Is the broker host the correct Zabbix host to be adding the MQTT monitoring to?
Do I need to do any configuring in zabbix_agent2.conf?
Thanks for any insight from anyone.
Comment