我按照官方文档中提到的方式安装了erlang和rabbitmq。但是,当我这样做时
C:\ Program Files \ RabbitMQ Server \ rabbitmq_server-3.7.0 \ sbin> rabbitmqctl add_user XXXXXX YYYYYYY
它给了我以下错误......
错误:无法对节点'rabbit @ C001741998'执行操作。请参阅下面的诊断信息和建议。
最常见的原因是:
除了下面的诊断信息:
试图联系:[rabbit @ C001741998]
兔@ C001741998:
连接到C001741998上的epmd(端口4369)
epmd报告节点'rabbit'使用端口25672进行节点间和CLI工具流量
TCP连接成功但Erlang分发失败
身份验证失败(被远程节点拒绝),请检查Erlang cookie
当前节点详细信息:
节点名称:rabbitmqcli49 @ C001741998
有效用户的主目录:C:\ Users \ XYZ
Erlang cookie hash:QJlwBuAgrn8gN00mjqQYOw ==
我将erlang cookie从我的用户主文件夹复制到C:\ Windows文件夹。所以,他们都有相同的cookie。它还在不断地把错误扔给我。不确定应该如何解决。任何帮助?
答案 0 :(得分:29)
文档说你应该以另一种方式复制......
如果使用Windows服务,则应将cookie从C:\ Windows \ system32 \ config \ systemprofile \ .erlang.cookie复制到运行命令如rabbitmqctl.bat的用户的预期位置。
答案 1 :(得分:17)
如果像我一样,你需要这些东西真正拼写出来:
%userprofile%
。).erlang.cookie
,请将其删除。如果没有,请转到下一步。C:\Windows\System32\config\systemprofile
。.erlang.cookie
并将其复制到您的用户目录。现在您的rabbitmqctl
应该能够进行身份验证。
答案 2 :(得分:5)
Robino的答案帮助我确定了这个问题。
我有两个不同的.erlang.cookie
文件-
一位管理员users/admin
和
users/myprofile
我将C:\Windows\System32\config\systemprofile
中的一个复制到了位置users/myprofile
和users/admin
上。
我也将相同的cookie文件复制到运行%Rabbit_Home%\sbin
的Rabbit安装rabbitmqctl.bat
中。
答案 3 :(得分:3)
自己解决了这个问题之后,通过在我的帐户下运行服务解决了问题。如果您仍然遇到问题并重新安装,请尝试此操作。
答案 4 :(得分:2)
我确实通过Chocolaty安装了RabbitMQ 3.8.5 Erlang 22.3,并在Windows 10计算机上遇到了同样的问题。 对我而言,替换.erlang.cookie文件的工作如上所述here
Cookie文件位置 在Windows上,cookie文件的位置取决于是否设置了HOMEDRIVE和HOMEPATH环境变量。
如果使用非管理帐户安装RabbitMQ,则不会将节点和CLI工具使用的共享机密文件放置在正确的位置,从而在使用Rabbitmqctl.bat和其他CLI工具时导致身份验证失败。
这些选项之一可用于缓解:
答案 5 :(得分:1)
检查您安装的erlang版本。 rabbitmq v3.7.0与erlang的v20.1.x匹配。 supported version of Erlang