powered by Jive Software

Is this the only way to configure a cluster manually?

the doc in question is located here: http://www.igniterealtime.org/community/docs/DOC-1260

is there a simpler way to be able to configure each machine and give the hostnames of the other machines in the cluster?

i’m having an issue where i’ve installed openfire on two servers, each configured identically. (both are running off the same remote mysql database), but when i enable clustering, the page hangs indefinitely until i stop it. when the clustering tab is refreshed it shows that host as the lone node, but when i repeat the process on the other machine (also hangs) it shows itself as the lone node of a different cluster.

here’s what i see in my error log:

2007.11.28 13:41:15 org.jivesoftware.openfire.cluster.ClusterManager$1.run(ClusterManager.java:90)

java.lang.IllegalArgumentException: No scheme for cache: “Entity Capabilities Users”

at com.tangosol.net.DefaultConfigurableCacheFactory.findSchemeMapping(DefaultConfi gurableCacheFactory.java:476)

at com.tangosol.net.DefaultConfigurableCacheFactory.ensureCache(DefaultConfigurabl eCacheFactory.java:270)

at com.tangosol.net.CacheFactory.getCache(CacheFactory.java:689)

at com.tangosol.net.CacheFactory.getCache(CacheFactory.java:667)

at com.jivesoftware.util.cache.ClusteredCache.(ClusteredCache.java:48)

at com.jivesoftware.util.cache.CoherenceClusteredCacheFactory.createCache(Coherenc eClusteredCacheFactory.java:148)

at org.jivesoftware.util.cache.CacheFactory.joinedCluster(CacheFactory.java:393)

at org.jivesoftware.openfire.cluster.ClusterManager$1.run(ClusterManager.java:49)


do you have a good reason to configure the cluster manually?

“Is there a simpler way to be able to configure each machine and give the hostnames of the other machines in the cluster?” may be answered by Oracle or Tangosol. I did need some time to get this configuration up and running (with 3.4.0-beta).


the planned setup will have include multiple machines from different colocation facilities. (i.e. 2 servers on the west coast, 2 servers on the east coast, al in the same cluster) there are extensive firewall setups in place and not relying on multicast makes things simpler. (i think) if there was a way to tell openfire which servers should make up the cluster via a simple config file of hostnames (without having to launch openfire with special java flags) that would make things very easy for me. i haven’t used tangosol before so maybe this is possible.

but the main reason is that enabling clustering out of the box isn’t working as expected, so i’m looking to manual setup as a fallback.

important note: this is with builds 2007-11-09 and 2007-11-28, not 3.4.1. (an important API change was added on the 9th, which is why i’m using the nightly builds) when attempted with 3.4.1, it successfully loaded after submitting. i’m going to attempt to setup the second cluster machine, and if that works, it must be an issue with something added to the codebase since release.

(also, is there an ETA to 3.4.2? )

after setting up the second machine with 3.4.1, it was “successful” but showed only itself on the node list.

does that mean that multicast discovery is not working on my network?

Hey kthorn,

As you noticed, that error occurs since you are using a nightly build version or a built from SVN later than 3.4.1. If you need to use the nightly build and you want to five 3.4.2 beta a try I can send you the enterprise.jar file so you can give it a try.


– Gato

getting clustering working with 3.4.1 is my main goal, making it work with a version that includes the API changes will come next.