This document describes how to step up a RabbitMQ server cluster for use with Symantec Mobility Manager. For information specific to RabbitMQ, visit www.rabbitmq.com.
A high-availability RabbitMQ cluster requires the following:
The Symantec Mobility Manager servers are configured to point to the single address of a master RabbitMQ server.
Tip: For failover management, it's best if this address is an easily changed DNS entry. By doing so, if the main address becomes unavailable, you can swap the DNS entry and the Mobility Manager servers will automatically connect to the new address. This saves you from having to modify Mobility Manager directly.
After RabbitMQ servers are set to actively cluster with one another, the "master and slave" model is blurred. This is because, at the node level, clustered Rabbit MQ servers all perform the same role. However, before clustering, there is a difference and for convenience, we’ll use the terms "master" and "slave" to identify the two different roles.
Before the cluster is established, a master node is prepared to seed the cluster. The other servers in the cluster (“slaves”) finalize the connections to the master and then, to one another.
Master installation and configuration
Use the following commands to install and configure the Rabbit MQ server(s):
Before you start, you’ll need the following:
Note: The erlang.cookie information must be an exact match on all servers in the cluster.
Optional pre-flight check
To make certain your slave(s) can communicate with the master, run the command on each slave:
The expected response is:
Execute the following commands to install each additional cluster server ("slave"):
Optional: To check the master and slave's erlang.cookie checksum, on each server, run the command:
Note: The checksum must match between all mirrored systems.
Note: The cluster_nodes value exists only on the "slave" servers, and not on the "master" server.
sudo chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
sudo chmod 600 /var/lib/rabbitmq/.erlang.cookie
Verify node clustering
To check that the nodes are clustered, execute the command:
A list of running nodes is displayed, showing the master and the slaves.
Use the following commands to provide each Mobility Manager cluster its own user and virtual host:
On the master-