RabbitMQ报错Error: unable to connect to node rabbit@xxx: nodedown的解决方法

来源:互联网 发布:好看的悬疑电影知乎 编辑:程序博客网 时间:2024/06/01 15:28

源出处:http://chingo.org/post/rabbitmq-error-unable-to-connect-to-node-rabbit-nodedown-solution.html

环境:Win7x64+erlang_otp_20x64+RabbitMQ3.6.11

刚开始研究RabbitMQ,就遇到问题:

安装好之后,按照官方安装向导执行rabbitmqctl status命令检查状态时,报如下错误:

Bash
Status of node 'rabbit@DESKTOP-RVK1IHE' ...Error: unable to connect to node 'rabbit@DESKTOP-RVK1IHE': nodedownDIAGNOSTICS===========attempted to contact: ['rabbit@DESKTOP-RVK1IHE']rabbit@DESKTOP-RVK1IHE:  * connected to epmd (port 4369) on DESKTOP-RVK1IHE  * epmd reports node 'rabbit' running on port 25672  * TCP connection succeeded but Erlang distribution failed  * Authentication failed (rejected by the remote node), please check the Erlang cookiecurrent node details:- node name: 'rabbitmq-cli-22@DESKTOP-RVK1IHE'- home dir: C:\Users\TNT- cookie hash: oVa+k73FyoNB9z87SvbEAQ==

根据提示,应该是Erlang的cookie出现问题。谷歌后找到了两种解决方式(还有集群的解决方案,这里无关就不阐述了):

1、重新安装RabbitMQ的服务

For some reason the service set up by the installer did not configure several registry entries. Running this set them correctly and allowed the service to run.

这是由于某些原因在安装服务时没有正确配置注册项,重新安装服务即可解决:

  • 以管理员身份运行RabbitMQ Command Propmt(开始菜单中)

  • 执行rabbitmq-service remove

  • 执行rabbitmq-service install

然后再测试是否成功。

2、更正Erlang的cookie

Erlang会生成两个cookie文件:C:\Windows\.erlang.cookie 及 C:\用户\你的用户名\.erlang.cookie。检查两个文件内容是否一致,不一致用其中一个替换另一个即可。

这里用第二种方式解决了问题,正如程序提示是cookie不正确所导致。

阅读全文
0 0