在2 linux OS中的Ejabberd中集群

时间:2019-02-27 11:51:57

标签: ejabberd

我目前正在尝试使用2个ubuntu实例对ejabberd进行集群,但是我遇到了一些问题。我在oracle Virtual Box中有2个实例。两个实例的当前ejabberd.yml文件都具有以下主机:-

hosts:
  - "xyz-VirtualBox"

对于node1,我修改ejabberdctl.cfg并更改ejabberd名称,例如如下所示

ERLANG_NODE=ejabberd@1.1.1.1
INET_DIST_INTERFACE=1.1.1.1

其中1.1.1.1是我的ubuntu机器1实例的ip。我确保在第二台ubuntu机器中具有相同的.erlang.cookie,并对machine2进行相同的NODE和INTERFACE更改。我通过使用

启动我的第一个实例

ejabberdctl开始 而且可以正常使用,因为我可以访问webadmin控制台。我使用

在第二个实例上启动我的ejabberd
ejabberdctl start

,当我尝试使用以下命令将群集添加到实例时,它运行良好

ejabberdctl --no-timeout join_cluster ejabberd@1.1.1.1
Error: {no_ping,'ejabberd@1.1.1.1'}

note-cmd>主机名--fqdn(计算机1输出-xyz-VirtualBox)

1 个答案:

答案 0 :(得分:1)

我想你在机器1中有这个东西

ERLANG_NODE=ejabberd@1.1.1.1

以及机器2中的类似内容:

ERLANG_NODE=ejabberd@1.1.1.2

机器2可以连接到机器1。我的意思是,在机器2中,这可以工作吗?

ping 1.1.1.1

如果可以正确ping通,则可以对该教程的第4步进行测试,以查看其是否有效:https://ejabberd.im/interconnect-erl-nodes/index.html