Hi,
I have ejabberd cluster problem. I have two nodes (two different machine (operation system: Ubuntu) which are ejabberd@talakus (master) and ejabberd@orcun (slave). I did cluster setup in both machine.
When 2 machine is alive there is no problem with clustering. When one machine is down, other machine still continues to work. There is no problem here. The problem is
at the start up (both ejabberd server stop status), if one machine is disconnected (LAN), the other machine can not start ejabberd. It says :
The node ejabberd@orcun is starting with status: started
ejabberd is not running in that node
Check for error messages: /opt/ejabberd-2.1.8/logs/ejabberd.log
or other files in that directory.
It waits other to start.
ejabberctl live output
{error_logger,{{2011,11,17},{17,14,4}},"Protocol: ~p: register error: ~p~n",["inet_tcp",{{badmatch,{error,duplicate_name}},[{inet_tcp_dist,listen,1},{net_kernel,start_protos,4},{net_kernel,start_protos,3},{net_kernel,init_node,2},{net_kernel,init,1},{gen_server,init_it,6},{proc_lib,init_p,5}]}]}
epmd output
epmd: Thu Nov 17 17:01:11 2011: ** got ALIVE2_REQ
epmd: Thu Nov 17 17:01:11 2011: node name already occupied ejabberd
epmd: Thu Nov 17 17:01:11 2011: ** sent ALIVE2_RESP for "ejabberd"
epmd: Thu Nov 17 17:01:11 2011: trying to unregister node with unknown file descriptor 5
talakus machine host file
127.0.0.1 localhost
127.0.1.1 talakus
10.70.200.55 orcun
orcun machine host file
127.0.0.1 localhost
127.0.1.1 orcun
10.70.200.45 talakus
Cluster is working only if both machines are alive. I already try http://www.ejabberd.im/error/duplicate_name
any help would be appreciated, thanks
I have the same problem on my
I have the same problem on my cluster setup.
Both instances wait for each other to start. I cannot start one instance successfully without the other.
I am assuming that this is an expected behavior - During start-up the clustered nodes are kind of synchronizing each other by waiting for all instances to wake up. However, one thing which is very strange for me is that this is not documented anywhere :((.
OR, there must be a configuration option to enable single instance successful starting.
Anyway, I am also facing the same problem and any help would be appreciated. Btw, my Ejabberd version is 2.1.9.
Hello! The same problem with
Hello!
The same problem with 2.1.10.
No logs at all, just doesn't allow connects.
Is it possible at least remove other nodes to start server?
I am having the same issue.
I am having the same issue. If I lose my primary server for some reason, other servers can't start. They run fine if they're already running, but if they go down for whatever reason, I can't bring them back up again. I have looked everywhere and there doesn't seem to be a good description anywhere on how to bring the second server up again. I have every single table replicated across to the secondary server.
I don't mind having to do manual work to bring it up but I don't like the idea that if my primary server is unavailable I can't do anything to restore the replicas.
I have found that with a two
I have found that with a two machine cluster, one always assumes the master role. This role appears to change depending on which node last committed a change. For instances I install server1 first and then server2 second. At this point if server1 is down, server2 will not start. However when I start both and then use the admin console (web interface) and change one of the database table storage options (RAM only to RAM and disk only) on server2 and submit the changes, this makes server2 become the master. Such that when I shut down both servers, server1 will not start until server2 is running.
I observed this behavior on both nodes (changing settings on one at a time) and the role of master switches.
I was not aware that clusters have to have a master. If one fails then I still have run time redundancy, however if the server left running was not the master and I need to restart, my solution is down (as the server won't start).
Is there some relevant documentation on this aspect of clustering? Is this expected behavior? Is there some configuration I am missing that would allow the two servers to start/stop independently of each other?
ejabberd version 2.1.8