[erlang-questions] Forming a cluster

Jack Orenstein <>
Wed Oct 24 15:48:09 CEST 2007

What is the recommended procedure for setting up a cluster of nodes,  
each running an Erlang VM (all with the same .erlang.cookie)? The  
nodes are all in the same subnet, behind a firewall. The node  
population is reasonably static, but nodes there may be occasional  
additions. When a node joins, the nodes already in the cluster need  
to know about it. Each node has to know about every other node, (e.g.  
by calling nodes()).

net_kernel:monitor_nodes will indicate when a node joins, but only if  
the new node sends a message to some node in the cluster. How does  
the new node know who is present? There seems to be a bootstrapping  
problem. Also, requiring a new node to know about a cluster member is  
problematic since the selected node might be down.

net_adm and the .erlang.hosts file is a possible solution, but that  
seems static. It doesn't seem to accomodate nodes joining after the  
initial cluster forms.

Is there a dynamic solution that doesn't require the new node to know  
anything about the existing cluster members?

Jack Orenstein

More information about the erlang-questions mailing list