我是mongooseIM的新手,我想创建一个新节点(mongooseim@myhostname.com
)但是当我尝试运行此命令时:
bin/mongooseimctl add_to_cluster mongooseim@myhostname.com
我收到以下错误:
错误:/usr/lib/mongooseim/Mnesia.mongooseim@localhost已存在。请在继续之前删除整个目录。
如何创建新节点而不删除默认节点mongooseim@localhost
?
我有以下配置:
在我的etc/vm.args
配置文件中:
-sname mongooseim@myhostname.com
在etc/ejabberd.cfg
档案中:
{hosts, ["myhostname.com”] }.
我的mongooseIM目录:
/usr/lib/mongooseim
bin
erl_crash.dump
erts-6.0
etc
lib
log
Mnesia.mongooseim@localhost
releases
var
sudo bin/mongooseimctl status
The node mongooseim@localhost is started with status: started
MongooseIM 1.5.0版正在该节点上运行。
答案 0 :(得分:0)
ejabberd中的聚类基于Mnesia。在Mnesia中为给定节点名创建架构后,您无法在以后更改它。
在您的情况下,您使用localhost
主机名定义了节点名称。这意味着您只能创建该计算机本地的集群(多个Erlang节点)。这可能不是你想要的。
因此,如果要更改ejabberd节点名称,则需要从Mnesia数据库导出数据,删除Mnesia数据库文件夹,将群集节点名称更改为新名称并重新导入数据。这是ejabberd的教程,可以让您顺利进行:http://docs.ejabberd.im/admin/guide/managing/#change-computer-hostname