8

我正在尝试使用两个 Rhel 实例进行集群。我能够相互ping通,即使我尝试使用命令empd -names,我也可以在4369上启动并运行它。当我使用命令时,sudo rabbitmqctl join_cluster rabbit@ip-10-23-20-36我收到以下错误,确保我首先是stop_app ..

sudo rabbitmqctl join_cluster rabbit@ip-10-23-20-36

集群节点 'rabbit@ip-10-23-20-36' 和 'rabbit@ip-10-23-209-142' ... 错误:无法连接到节点 ['rabbit@ip-10-23-209 -142']: 节点下

诊断

试图联系:['rabbit@ip-10-23-209-142']

rabbit@ip-10-23-209-142:*无法连接到 ip-10-23-209-142 上的 epmd(端口 4369):nxdomain(不存在的域)

当前节点详细信息:- 节点名称:'rabbitmq-cli-80@ip-10-23-20-36' - 主目录:/var/lib/rabbitmq - cookie 哈希:u7nRIpJ40Fd356iLbkDO6Q==

我已经尝试过的事情:

  1. 检查 cookie 名称,这在两个实例中都使用
    sudo cat /var/lib/rabbitmq/.erlang.cookie.
  2. 也更改了 epmd 端口export ERL_EMPD_PORT=4370
  3. netstat -an |grep 4369 | grep -i listen
  4. 在插件管理的 GUI 中更改主机名。
  5. 更改所有者和权限也使用

    sudo chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
    sudo chmod 400 /var/lib/rabbitmq/.erlang.cookie
    
  6. 添加端口

    sudo iptables -I INPUT -p tcp --dport 4369 --syn -j ACCEPT
    
  7. 须藤rabbitmqctl状态

    {listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
    

*IP 地址是示例地址。

4

4 回答 4

18

如错误消息所述,您的主机名无法解析:

rabbit@ip-10-23-209-142: * unable to connect to epmd (port 4369) on ip-10-23-209-142: nxdomain (non-existing domain)

您需要在您的 DNS 或/etc/hosts两台主机上声明这些主机名。然后,您可以使用例如测试名称解析是否有效。平(1):

ping ip-10-23-209-142 # from ip-10-23-20-36
于 2016-06-07T14:18:48.307 回答
2

下面的命令解决了这个问题:

sudo service rabbitmq-server start

原因:

  • 在同一台机器上同时在 Windows 及其 Linux 子系统(Ubututu 18,从 Microsoft Store 下载)上安装 rabbitmq。
  • 在 Windows 操作系统上卸载 rabbitmq
  • 运行上面的命令

希望对某人有所帮助。

于 2019-12-10T19:52:27.047 回答
2

我今天遇到了同样的错误,这个建议毫无意义。

所以,首先,你应该在 /var/log/rabbitmq/rabbitmq@[your hostname].log 检查它的日志,否则你会浪费你的时间。然后你可以看到那里发生了什么。

就我而言,它在文件 /var/db/rabbitmq/mnesia/rabbit@www/cluster_nodes.config 中报告了一个错误

 Error description:


{error,{cannot_read_file,"/var/db/rabbitmq/mnesia/rabbit@www/cluster_nodes.config",
                        {1,erl_parse,["syntax error before: ","'@'"]}}}

所以,我只是删除这个文件夹 /var/db/rabbitmq/mnesia/rabbit@www 并重新启动服务,它就像一个魅力

于 2017-10-25T09:04:42.060 回答
0

也许有点晚了,但它可以帮助一些人。我遇到了同样的错误,我在 /etc/hosts 文件中写了我的 ip 和自定义名称。然后重新启动rabbitmq服务器,它对我有用。

于 2020-12-15T15:46:37.890 回答