How to know cluster is working ?(help me)

Sorry, I'm newbie with the ejabberd.
I have two machines that I would like to cluster together.(OS:linux as4.0)
machine1: work.test.com (LAN)
machine2: jabber1.test.com (LAN)
the cookie(/root/.erlang.cookie): aaa (machine1==machine1)

@machine1 run: ./erl -sname ejabberd -mnesia extra_db_nodes "['ejabberd@jabber1']" -s mnesia
return: (ejabberd@work)1>

@machine2 run: ./erl -sname ejabberd -mnesia extra_db_nodes "['ejabberd@work']" -s mnesia
return: (ejabberd@jabber1)1>

@machine1 run: net_adm:ping('ejabberd@jabber1'). return:pong
@machine2 run: net_adm:ping('ejabberd@work'). return:pong

But i don't know that cluster is working or not. And how test the cluster?
Please help me! tell me how to configure!

thanks advance! thanks very much!

How to test ejabberd cluster

OK, it seems the erlang nodes are connected (ping, pong...). Now you want to verify if they are an ejabberd cluster. Use a Jabber client that allows you to specify the machine to connect to: Gajim, Psi, Tkabber, Exodus, Pandion, GAIM...

Here are some ideas. Let's say your Jabber server is 'jabber.example.org'.

  1. Create a new account, for example dummy@jabber.example.org using your Jabber client. Make sure to tell your Jabber client to use hostname: work.test.com.
  2. Now login on that account, always specifying the hostname 'work.test.com'. It should work.
  3. Now change the configuration of your account on your client: tell him the hostname is 'jabber1.test.com'. You should be able to login.

If both ejabberd nodes are a cluster, the same Jabber account exists on both nodes, and you should be able to login to the account. The roster, privacy config, offline messages, vcard... all should be equal when you connect to a node or the other.

Once you have a cluster, investigate how you want the Mnesia tables to be configured: replicate all info on both nodes...

Which node will clients connect if they do not specify any? I guess it depends on your DNS configuration. ejabberd does not make any load balancing.

Syndicate content