[rabbitmq-discuss] Clustering Behaviour
max at maxmanders.co.uk
Sun Aug 18 13:34:44 BST 2013
I don't have much experience using RabbitMQ, certainly not programmatically
as a producer or consumer. However, I've been asked to set up an HA
RabbitMQ environment. I'm using EC2 (implementation detail, assume I know
what I'm doing with that respect).
I have a cluster configured according to `rabbitmqctl cluster_status`.
However, what I don't understand, as someone who hasn't interacted much
with AMQP is around how things are distributed and how clients connect.
If I configure the cluster to use mirrored queues, I'm also working on the
assumption that nodes may be transient and might get terminated and created
via scaling events. If a node dies, I can see via `rabbitmqctl
cluster_status` that the node is still part of the cluster, but not a
'running node'. What are the implications of this? If a client requests a
message from a queue via an exchange, will the cluster service the request
from an available node, knowing not to use the dead node? Do I need to
worry about cluster nodes versus running node; will the cluster remove a
node that hasn't been running for some time, or should I programmatically
clean up dead nodes?
Also, how do clients connect to a cluster? Do I put a load balancer in
front of a cluster and have an application connect to the load balancer?
Or should an application connect to a particular cluster node, or any
cluster node? Apologies for the questions, but I'm not developing the app,
just providing the infrastructure / middleware; not a fan of doing so
without having a better understanding.
Any help, gratefully received!
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the rabbitmq-discuss