【发布时间】:2015-03-31 06:10:07
【问题描述】:
在 Windows 7 Enterprise 机器上,我全新安装了 Erlang 17.4 和 RabbitMQ 3.4.3 x64。安装成功且顺利。
我还没有尝试创建我的第一个队列或交换,但我已经看到了问题。这个问题类似于another SO post,但其他帖子似乎涉及集群,而我没有。此外,其他发帖人可以通过重新启动 RabbitMQ 服务来规避他的问题;这种方法对我不起作用。
我的“nodedown”问题在 RabbitMQ 命令提示符下很明显:
C:\Program Files (x86)\RabbitMQ 服务器\rabbitmq_server-3.4.3\sbin>rabbitmqctl 状态 节点rabbit@TPAJ05421843的状态 ...
错误:无法连接到节点rabbit@TPAJ05421843:nodedown诊断
尝试联系:[rabbit@TPAJ05421843]
兔子@TPAJ05421843:
* 连接到 TPAJ05421843 上的 epmd(端口 4369)
* epmd 报告:节点“兔子”根本没有运行
TPAJ05421843 上的其他节点:['RabbitMQ']
* 建议:启动节点当前节点详情:
- 节点名称:'rabbitmqctl-19884@TPAJ05421843'
- 主目录:H:\
- cookie 哈希:PD4QQCYrf0TME9vIko3Xuw==
基于上述,我选择检查显式命名为“RabbitMQ”的节点的状态。我明白了:
C:\Program Files (x86)\RabbitMQ 服务器\rabbitmq_server-3.4.3\sbin>rabbitmqctl -n RabbitMQ 状态
节点“RabbitMQ@TPAJ05421843”的状态 ...
错误:无法连接到节点“RabbitMQ@TPAJ05421843”:nodedown诊断
尝试联系:['RabbitMQ@TPAJ05421843']
RabbitMQ@TPAJ05421843:
* 连接到 TPAJ05421843 上的 epmd(端口 4369)
* epmd 报告节点“RabbitMQ”在端口 59301 上运行
* TCP 连接成功但 Erlang 分发失败
* 建议:主机名不匹配?
* 建议:cookie设置正确吗?当前节点详情:
- 节点名称:'rabbitmqctl-23076@TPAJ05421843'
- 主目录:H:\
- cookie 哈希:PD4QQCYrf0TME9vIko3Xuw==
好吧,这好不了多少,因为至少它承认“RabbitMQ”在端口 59301 上运行。但是“Erlang 分发失败”到底意味着什么?
当我尝试研究这个主题时,我发现有文章说“确保您有匹配的 cookie”。基于此,我找到了this article,它声称“cookie 不匹配”与我无关,因为我还没有创建(也不打算创建)RabbitMQ 集群。
我该怎么办?
【问题讨论】:
-
在我的情况下,这是因为我以管理员身份安装它,然后尝试以普通用户身份使用 sbin 脚本。
-
在我的例子中,cookie 不匹配
C:\Windows\.erlang.cookie和C:\Users\my_user_name\.erlang.cookie。一个接一个地复制解决了这个问题。