首页 文章

RabbitMQ无法启动,TCP连接成功但Erlang分发失败

提问于
浏览
3

我刚刚开始在Windows系统上学习和安装RabbitMQ .

我在自定义文件夹中安装Erlang VM和RabbitMQ,而不是默认文件夹(两者都有) .

然后我重新启动了我的电脑 .

By the way,My Computer name is "NULL"


我cd到 RabbitMQ/sbin 文件夹并使用命令:

rabbitmqctl status

但返回的信息是:

节点rabbit @ NULL的状态...错误:无法对节点'rabbit @ NULL'执行操作 . 请参阅下面的诊断信息和建议 . 最常见的原因是:目标节点无法访问(例如,由于主机名解析,TCP连接或防火墙问题)CLI工具无法与服务器进行身份验证(例如,由于CLI工具的Erlang cookie与服务器的不匹配)目标节点是不运行除了下面的诊断信息:请参阅http://rabbitmq.com/documentation.html上的CLI,群集和网络指南了解更多请咨询节点上的服务器日志rabbit @ NULL DIAGNOSTICS尝试联系:[rabbit @ NULL ] rabbit @ NULL:连接到epmd(端口4369)NULL epmd报告节点'rabbit'使用端口25672进行节点间和CLI工具流量TCP连接成功但Erlang分发失败身份验证失败(被远程节点拒绝),请检查Erlang cookie当前节点详细信息:节点名称:rabbitmqcli70 @ NULL有效用户的主目录:C:\ Users \ Jerry Song Erlang cookie hash:51gvGHZpn0gIK86cfiS7vp ==


我尝试RESTART RabbitMQ,我得到的是:

ERROR:名称为“rabbit”的节点已在“NULL”上运行


顺便说一句,我的电脑名称是“NULL”我已启用防火墙中的所有端口 .

4 回答

  • 0

    如果您在Windows10(而不是Windows默认位置)中使用开发工具/软件的专用驱动器文件夹位置,则可以按https://www.rabbitmq.com/cli.html所述同步erlang cookie的一种方法是复制cookie,如下所述 .

    请注意,在我的情况下,HOMEDRIVE和HOMEPATH环境变量都设置为_2658881 .


    "C:\Windows\system32\config\systemprofile.erlang.cookie" 复制到 "C:\Users%USERNAME%.erlang.cookie" 后,

    错误"tcp connection succeeded but Erlang distribution failed"已解决 .


    现在我可以成功使用“rabbitmqctl.bat status”命令 . 因此,没有必要安装在默认位置来解决此错误,因为同步cookie将解决该错误 .

  • 2

    https://groups.google.com/forum/#!topic/rabbitmq-users/a6sqrAUX_Fg描述了在全新安装的Rabbit MQ上存在cookie不匹配的问题 . Windows上的简单解决方案是同步cookie

    此处还描述了:http://www.rabbitmq.com/clustering.html#erlang-cookie extract:对于以20.2开头的Erlang版本,cookie文件位置为:

    %HOMEDRIVE %% HOMEPATH%.erlang.cookie(对于用户%USERNAME%通常为C:\ Users \%USERNAME%.erlang.cookie)如果HOMEDRIVE和HOMEPATH环境变量都设置为%USERPROFILE%.erlang.cookie(通常为C) :\ Users \%USERNAME%.erlang.cookie)如果HOMEDRIVE和HOMEPATH都未设置为RabbitMQ Windows服务 - %USERPROFILE%.erlang.cookie(通常为C:\ WINDOWS \ system32 \ config \ systemprofile)使用的cookie文件通过Windows服务帐户和运行CLI工具的用户必须通过从“C:\ WINDOWS \ system32 \ config \ systemprofile”文件夹中复制一个来同步 .

  • 3

    using default setup foler 我的电脑里有 reinstall the RabbitMQ

    然后检查命令:

    rabbitmqctl status

    它现在工作,而不是Erlang VM的问题 . (意味着Er可以安装在其他的foler)

    它会导致一些问题(比如这个)我无法使用RabbitMQ default setup require foler (C:\ Program Files \ RabbitMQ Server)

    如果有人发现它,我希望你能告诉我为什么以及如何解决 .

  • 4

    在Centos .

    • 将ip nodename对添加到每个节点上的/ etc / hosts .

    • 在每个从节点上重启rabbitmq-server服务 .

    适合我 .

相关问题