Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
rabbitmq [2015/12/08 11:48] steve |
rabbitmq [2015/12/08 11:55] steve [Creating a Cluster] |
||
---|---|---|---|
Line 62: | Line 62: | ||
In this example, there will be two nodes only. A primary node which will start as normal using the default configuration, and then a secondary node which will be added to the first, therefore creating a cluster. | In this example, there will be two nodes only. A primary node which will start as normal using the default configuration, and then a secondary node which will be added to the first, therefore creating a cluster. | ||
+ | |||
+ | The server hostnames used here are ''rabbitmq1'' and ''rabbitmq2''. | ||
First of all, start rabbitmq as normal on both of the nodes. | First of all, start rabbitmq as normal on both of the nodes. | ||
Line 83: | Line 85: | ||
chmod 0600 /var/lib/rabbitmq/.erlang.cookie | chmod 0600 /var/lib/rabbitmq/.erlang.cookie | ||
chown rabbitmq: /var/lib/rabbitmq/.erlang.cookie | chown rabbitmq: /var/lib/rabbitmq/.erlang.cookie | ||
+ | </code> | ||
+ | |||
+ | At this point, the primary node is up and running, the cookie exists, and it is ready to have a second node joined to it to create a cluster. | ||
+ | |||
+ | On the second node, the RabbitMQ service is already running as normal, from when we started it earlier. Now, we need to tell rabbitmq to stop the application -- not the service -- so that we can join it to the primary node. | ||
+ | |||
+ | Stop the app on the second node: | ||
+ | |||
+ | <code> | ||
+ | rabbitmqctl stop_app | ||
+ | </code> | ||
+ | |||
+ | Next, edit the ''/var/lib/rabbitmq/.erlang.cookie'' value on the secondary node as well. | ||
+ | |||
+ | Join the secondary node to the first, creating the cluster. This will flush the data on the primary node as well: | ||
+ | |||
+ | <code> | ||
+ | rabbitmqctl join_cluster rabbit@rabbitmq1 | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | Clustering node 'rabbit@rabbitmq2' with 'rabbit@rabbitmq1' ... | ||
+ | ...done. | ||
+ | </code> | ||
+ | |||
+ | Finally, start the app again using ''rabbitmqctl'' on the second node: | ||
+ | |||
+ | <code> | ||
+ | rabbitmqctl start_app | ||
</code> | </code> |