[rabbitmq-discuss] Repairing a crashed cluster - Obtaining persisted msgs from master

Simon MacMullen simon at rabbitmq.com
Wed May 1 17:28:56 BST 2013


On 01/05/13 17:11, ranjitiyer wrote:
> Hi Simon,
>
>> Note that since that message, RabbitMQ 3.0 was released, with
>> "rabbitmqctl forget_cluster_node" - which might help you get the slave
>> started if the master is gone.
>
> But isn't this option available only after the rabbitmq server has started
> (erl.exe) and I've noticed even erl.exe won't start on a slave machine if
> its remote master is not available?

It's worth noting that at the cluster level there are no "masters" and 
"slaves" (those terms only apply to the mirrors of individual queues).

But when restarting a stopped cluster, all other nodes wait for the last 
node that shut down to come back (since that node could know about 
things which happened that no other node has seen).

So if that last-node-to-shut-down is no longer available then you can 
recover with a combination of starting the second-to-last node with 
RABBITMQ_NODE_ONLY set, then invoking "rabbitmqctl forget_cluster_node 
--offline".

This could probably be better documented. It's a bit of an edge case 
though...

Cheers, Simon

-- 
Simon MacMullen
RabbitMQ, VMware


More information about the rabbitmq-discuss mailing list