Chapter 16. Cluster Failover
16.1. Changes to Clustering in MRG 3
MRG 3 replaces the
cluster
module with the new ha
module. This module provides active-passive clustering functionality for high availability.
The
cluster
module in MRG 2 was active-active: clients could connect to any broker in the cluster. The new ha
module is active-passive. Exactly one broker acts as primary the other brokers act as backup. Only the primary accepts client connections. If a client attempts to connect to a backup broker, the connection is aborted and the client fails-over until it connects to the primary.
The new
ha
module also supports a virtual IP address. Clients can be configured with a single IP address that is automatically routed to the primary broker. This is the recommended configuration.
The fail-over exchange is provided for backwards compatibility. New implementations should use a virtual IP address instead.
Improvement to multi-threaded performance
In MRG 2, a clustered broker would only utilize a single CPU thread. Some users worked around this by running multiple clustered brokers on a single machine, to utilize the multiple cores.
In MRG 3, a clustered broker now utilizes multiple threads and can take advantage of multi-core CPUs.