Hi all.
Recently I tried to create an OpenFire cluster for redundancy. I faced some problems with this:
1. Postgresql database misses indexes for relpication.
As my servers would be geographically distant I tried using Bucardo for multi-master replication so each server cah have it's own database in case of a split. Bucardo is one of the most common tools to use with Postgresql.
While setting up replication I found that two tables do miss primary keys. That's a prerequisite for good multi-master replication. I solved this by adding two indexes:
altertable ofmucconversationlog addprimarykey (roomid, sender, logtime);altertable ofpubsubnodegroups addprimarykey (serviceid, nodeid, rostergroup);
2. Cluster fails to start.
When I fully created first server (even without setting up replication) I installed Hazelcast plugin and enabled cluster. OpenFire process becomes semi-locked after this, it can't be stopped with `service openfired stop`. I had to kill it by hand.
3. FastPath doesn't work.
When I install FastPath on one single server it works correctly (meaning I installed webchat plugin from
). But when I enable clustering FastPath stops working - I can't see it in Spark and it's pages gets garbled.
4. WebChat is bound to a host name supplied.
When installing WebChat plugin it asks for the server location. I want to specify current server, not just any other server in the cluster, so I need to enter `localhost.localdomain`. After this WebChat looks for the workgroups in form demo@workgroup.localhost.localdomain. Would there be any possibility to supply both parameters (server host and working domain) separately?