RabbitMQ clustering is based on the underlying Erlang message-passing interface. Messages between Erlang processes are just Erlang terms which can be processed by the receiving instance. Communication between the nodes is established by means of the so called magic cookie (or Erlang cookie), which provides a mechanism to authenticate nodes in a cluster with each other. Once a new node is started, its cookie (the
.erlang.cookie file) is read from the home directory of the user (denoted by the
$HOME environment variable in Uni-based operating systems or by the
%HOMEPATH% variable in Windows-based operating systems). If the cookie does not exist then it is created based on information from the current node. Once retrieved, ...