How to setup redundant ejabberd servers?
I currently have an ejabberd server running at domain A
, It has a bunch of users with accounts like xyz@A
, I want to setup alternative servers so that if A
is down, clients can transparently use alternative servers B
а также C
(thus, while still using their xyz@A
account).
The DNS part I think is pretty simple, I need to edit A
zone file to add SRV
records of the alternative servers like in this example ( http://wiki.xmpp.org/web/SRV_Records):
_xmpp-client._tcp.example.net. 86400 IN SRV 5 50 5222 server1.example.net.
_xmpp-client._tcp.example.net. 86400 IN SRV 10 30 5222 server2.example.net.
_xmpp-client._tcp.example.net. 86400 IN SRV 10 10 5222 server3.example.net.
_xmpp-client._tcp.example.net. 86400 IN SRV 10 10 5222 server4.example.net.
_xmpp-client._tcp.example.net. 86400 IN SRV 15 0 5222 backup.example.net.
_xmpp-server._tcp.example.net. 86400 IN SRV 5 50 5269 server1.example.net.
_xmpp-server._tcp.example.net. 86400 IN SRV 10 30 5269 server2.example.net.
_xmpp-server._tcp.example.net. 86400 IN SRV 10 10 5269 server3.example.net.
_xmpp-server._tcp.example.net. 86400 IN SRV 10 10 5269 server4.example.net.
_xmpp-server._tcp.example.net. 86400 IN SRV 15 0 5269 backup.example.net.
Каковы шаги и конкретные настройки для настройки серверов ejabberd на хосте? B
а также C
в отношении аутентификации и чатов?
Хотя работают резервные серверы с начальным пользователем БД A
будет достаточно (я не ожидаю, что A будет недоступен в течение длительного времени), в идеале я думаю, что я должен синхронизировать пользовательскую базу данных между всеми 3 серверами, чтобы, если кто-то создает учетную запись на B
в то время как A
вниз может позже войти в систему A
когда это снова. Предоставляет ли ejabberd механизм для этого?