Hello,<div><br></div><div>I'm trying to set up HA infrastructure for our new project that uses RabbitMQ and MassTransit.</div><div><br></div><div>I've read and re-read the articles on <a href="http://www.rabbitmq.com/ha.html">HA and Mirrored Queues</a> several times. And I understand the theory behind it.&nbsp;</div><div><br></div><div>However, I do have a few questions. I hope somebody can kindly answer them for me.</div><div><br></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span style="line-height: 17px;">1. I just set up a cluster with 2 nodes. When I have a client talk to either of these nodes, the other node reflects those changes almost instantly. For example, if a publisher writes a message to an exchange that ends up in a specific queue bound to that exchange, it immediately shows up in the same queue on the other node. Likewise, if I manually create a queue on one node, it immediately shows up on the other node as well.&nbsp;</span></div></blockquote><div><br></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span style="line-height: 17px;">No special policies have been set up, by the way. This is all just out of the box.&nbsp;</span></div></blockquote><div><br></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span style="line-height: 17px;">And this is expected, I'd assume, since these both nodes are in a cluster. But then why does the article on Mirrored Queues say that </span><b style="line-height: 17px;">you have to explicitly set up mirrored queues by policy</b><span style="line-height: 17px;">?</span></div></blockquote><div><br></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span style="line-height: 17px;">"</span><span style="color: rgb(85, 85, 85); font-family: Verdana, sans-serif; line-height: 18px;">Queues have mirroring enabled via&nbsp;</span><a href="http://www.rabbitmq.com/parameters.html#policies" style="color: rgb(68, 68, 68); font-weight: bold; font-family: Verdana, sans-serif; line-height: 18px;">policy</a><span style="color: rgb(85, 85, 85); font-family: Verdana, sans-serif; line-height: 18px;">. Policies can change at any time; it is valid to create a non-mirrored queue, and then make it mirrored at some later point (and vice versa).</span><span style="line-height: 17px;">"</span></div></blockquote></blockquote><div><br></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div>Am I missing something obvious here?&nbsp;</div></blockquote><div><br></div><div>2. Let's say I have a internal DNS entry that points to a load balancer, which in turn sends traffic to either of these nodes mentioned above (based on round-robin or whatever algorithm), and ask the clients (publishers and consumers) to talk to the DNS entry when it wants to write or read from the queues. So if one node goes down, the load balancer would automatically redirect all the traffic just to the node that is up and running. And the clients will not be affected. Would that work? Is that the recommended approach?&nbsp;</div><div><br></div><div>3. Finally, I have a question about DR. Our DR server is on a separate WAN in a different state. I was thinking about using Shoveling technique to push messages from a logical broker sitting on a cluster in our local HA servers to a different logical broker to the DR server. In this case, a copy of the messages will keep getting pumped into the DR with no clients processing it. What will happen to those messages? Should I have a workflow to go purge them every day manually or via a script (after I make sure those messages aren't needed anymore since the clients have already process them from the main HA cluster).&nbsp;</div><div><br></div><div>If the main HA cluster goes down and I have to bring the DR server into action, what happens to the messages that did get processed already by the clients? Should the clients have logic built in to ignore duplicates to handle this specific scenario?</div><div><br></div><div>Thanks in advance for your help,</div><div>Girish</div>