Sharing clients across multiple instances of the server

Hello, I am new to ejabberd and XMPP in general and I have a question about something which I cannot understand clearly from the documentation. Specifically I am not sure whether it is clustering what I am looking for.
I need to have two instances of a ejabberd server located in two different and distant places, where clients need to be able to connect to their nearest instance only and be able to communicate with clients connected to the other server instance. Is this accomplished using clustering or does clustering have a different purpose? In any case, how would I set-up the infrastructure described above?

Thanks

simoneb wrote: I need to have

simoneb wrote:

I need to have two instances of a ejabberd server located in two different and distant places,

... Is this accomplished using clustering

Clustering is only recommended when the machines are close together: in the same room or LAN, with reliable connection between them.

simoneb wrote:

I need to have two instances of a ejabberd server located in two different and distant places,
where clients need to be able to connect to their nearest instance only and be able to communicate with clients connected to the other server instance.
In any case, how would I set-up the infrastructure described above?

Let's imagine your company has two main headquarters, one for USA workers, and other for UK workers.

You can install one ejabberd in each place, and configure one to serve the domain usa.example.com, the other uk.example.com
Those ejabberd servers are completely independent. The default ejabberd configuration allows Server2Server communications; that way when anna.randal@usa.example.com adds as contact, or sends a message to tom.abcd@uk.example.com, both ejabberd connect using S2S.

Thanks for the clarification.

Thanks for the clarification. Is there any guidance on how to setup this kind of communication and details about how it works, for example when one node goes down?

s2s is standard

simoneb wrote:

Is there any guidance on how to setup this kind of communication

ejabberd s2s is already enabled in the default configuration. Allow port 5269 in the firewall, and ensure the XMPP vhost served by each ejabberd is known by the other server (the typical DNS stuff).

simoneb wrote:

and details about how it works,

ejabberd s2s follows the XMPP standard protocol, so it works similarly to any other XMPP server s2s (jabberd1, openfire, prosody...).

simoneb wrote:

for example when one node goes down?

When a XMPP server goes down (like jabber.org, or gtalk.com), what happens with it? That its users can't login, and the users of other servers see those contacts as offline.

badlop wrote: Let's imagine

badlop wrote:

Let's imagine your company has two main headquarters, one for USA workers, and other for UK workers.

You can install one ejabberd in each place, and configure one to serve the domain usa.example.com, the other uk.example.com
Those ejabberd servers are completely independent.

Am I right this configuration is not suitable the following requirement:

simoneb wrote:

clients need to be able to connect to their nearest instance only

I have the same configuration problem. In my case the client-server connections is not allowed beetween "main headquarters" and client after coming to "guest headquarter" cannot connect to his "home server".

Is S2S interaction solve this problem and "guest server" acts like proxy or in other way?

Syndicate content