Reliability¶
RabbitMQ deployments support clustering, high availability queues, and federation. Since Fedora does not want a single point of failure or regular downtime for updates, it would be best to use clustering with high availability queues.
Clustering¶
For complete details, consult the clustering documentation. A few things to note:
- All nodes in the cluster need to be running the same minor (same y version in a x.y.z release) so a major upgrade to Erlang requires downtime.
- Clustering should only be used on a LAN. See the documentation on network partitions for details. Federation is designed for sharing across WANs.
High Availability Queues¶
RabbitMQ supports mirroring queues across nodes in a cluster in order to provide high availability queues.
Again, consult RabbitMQ documentation for the details, but a few highlights are:
- Mirroring can be applied to a subset or all queues
- Queues can be mirrored to all nodes in a cluster or just a few.