Uploaded image for project: 'ZABBIX FEATURE REQUESTS'
  1. ZABBIX FEATURE REQUESTS
  2. ZBXNEXT-2308

Use MQTT as transport protocol for agent/server/proxy communications

XMLWordPrintable

      Currently, the transport used by zabbix to grab metric data from the agents is based on it's own protocol.
      I propose Zabbix starts to work towards using MQTT as the underlying protocol for all agent based communications.

      Using MQTT would bring the following improvements to Zabbix (amongst others):

      • (Optional) encryption of communications via TLS (ZBXNEXT-767 / ZBXNEXT-17)
      • Authentication of agents, servers and proxies (username & password/certificate/PSK based) (ZBXNEXT-767)
      • MQTT has a builtin keepalive system, with a "Last Will and Testament" (LWT or Will) option allowing active feedback to Zabbix when an agent or proxy (or even server) goes away from the MQ (host/link down)
      • Better performance compared to the older polling based protocol (I think it should be on par with active)
      • Allows for scaling up Zabbix in the future (It will be easier to horizontally scale out the server when using MQ subs, and dividing workload amongst servers)

      This request is in many ways similar to ZBXNEXT-638 (AMQP support) although I think MQTT will be a better match since it has been designed with embedded devices (low memory footprint) using unreliable transport networks (QOS, LWT) in mind. The LWT function might prove extremely valuable, and the added built-in functionality of auth and encryption is something the community has been waiting for for a long time.

            Unassigned Unassigned
            qix Raymond Kuiper
            Votes:
            28 Vote for this issue
            Watchers:
            28 Start watching this issue

              Created:
              Updated: