Load Balancing MQTT Connections
The Message Queuing Telemetry Transport Protocol (MQTT) is a lightweight open messaging protocol that provides low-bandwidth clients with a simple way to distribute telemetry information. The protocol employs a publish/subscribe communication pattern, which can be load balanced on the LoadMaster to multiple MQTT Broker servers/publishers.
Application: MQTT Applications
How to configure a Virtual Service on the LoadMaster for load balancing MQTT Connections.
|Steps to Reproduce:
The standard TCP ports required are port 1883 for non-encrypted communication and port 8883 for encrypted communication, which leverages Secure Sockets Layer (SSL)/Transport Layer Security (TLS). It would be recommended to consult the MQTT application vendor for clarity on port configurations and SSL/TLS compatibility before continuing.
Here are the steps involved for creating a non-encrypted Virtual Service over TCP port 1883, with the real servers also listening on TCP port 1883 on the LoadMaster:
For creating an SSL/TLS pass-through encrypted Virtual Service, repeat the steps above but instead use TCP port 8883 on the Virtual Service and on the real servers.
More Information on the MQTT Protocol:
Creating a Virtual Service on LoadMaster: