ejabberdctl启动成功,但是状态和停止无法连接到节点

时间:2019-04-05 08:16:23

标签: amazon-ec2 erlang ejabberd ejabberd-module

我正在按照本指南在集群http://chadillac.github.io/2012/11/17/easy-ejabberd-clustering-guide-mnesia-mysql/上设置刺刺式

我正在使用两个具有ip的实例

Master-> 111.222.333.444 从站-> 222.333.444.555

但是由于我没有配置DNS,所以我使用的是IP地址,例如111.222.333.444等,而不是“ master.domain.com”。

我尚未成功找到集群,但在此之前,我的主节点出现了问题。

我通过

启动服务器
/tmp/ej1809/sbin/ejabberdctl start

然后我没有任何输出,但是我在日志中看到服务器已启动。

然后我使用

检查状态
/tmp/ej1809/sbin/ejabberdctl status 

但是我得到的错误是

Failed RPC connection to the node 'ejabberd@111.222.333.444’: nodedown

即使我尝试使用/ tmp / ej1809 / sbin / ejabberdctl停止节点,也要停止 我得到

Failed RPC connection to the node 'ejabberd@111.222.333.444’: nodedown

但我不明白其背后的原因。

有人可以帮我解决吗?

1 个答案:

答案 0 :(得分:1)

停止并终止epmd,erl,beam等进程。

然后以“ ejabberdctl live”启动ejabberd,它将使erlang shell保持打开状态,以便您实时查看日志消息,包括erlang节点名称:

- name: Add host to icinga
  icinga2_host:
    url: "https://myicinga:5665"
    url_username: "{{ icinga_user }}"
    url_password: "{{ icinga_pw }}"
    state: present
    name: "{{ inventory_hostname }}"
    ip: "{{ ansible_default_ipv4.address }}"
    validate_certs: no

您可以检查“ epmd”是否知道该节点:

...
13:21:22.662 [info] ejabberd 19.02.52 is started in the node ejabberd@localhost in 7.07s
13:21:22.667 [info] Start accepting TCP connections at 0.0.0.0:5444 for ejabberd_http
13:21:22.667 [info] Application ejabberd started on node ejabberd@localhost

然后让我们看看ejabberdctl是否可以与该节点连接:

$ epmd -names
epmd: up and running on port 4369 with data:
name ejabberd at port 33519

最后:

$ ejabberdctl help | grep "node name:"
  --node nodename    ejabberd node name: ejabberd@localhost

我假设您尚未在ejabberdctl.cfg中进行任何编辑,特别是ERLANG_NODE。但是,如果这样做,建议您重新安装ejabberd,以确保您具有默认配置,然后重试这些步骤。一旦ejabberd正常运行,您就可以开始修改配置文件(ejabberd.yml和ejabberdctl.cfg)以适合您的实际需求(集群等)。

有时候,如果您在设置群集时遇到问题,则可能会发现一些想法,可以在 https://ejabberd.im/interconnect-erl-nodes/index.html