身份验证失败(被远程节点拒绝),请检查Erlang cookie

身份验证失败(被远程节点拒绝),请检查Erlang cookie,erlang,rabbitmq,Erlang,Rabbitmq,我以官方文档中提到的方式安装了erlang和rabbitmq。但是当我这么做的时候 C:\Program Files\RabbitMQ Server\RabbitMQ\u Server-3.7.0\sbin>rabbitmqctl添加\u用户XXXXXX YYYYYY 它给了我以下的错误 错误:无法在节点“”上执行操作rabbit@C001741998'. 请参阅下面的诊断信息和建议 最常见的原因是: 无法访问目标节点(例如,由于主机名解析、TCP连接或防火墙问题) CLI工具无法与服务器进

我以官方文档中提到的方式安装了erlang和rabbitmq。但是当我这么做的时候

C:\Program Files\RabbitMQ Server\RabbitMQ\u Server-3.7.0\sbin>rabbitmqctl添加\u用户XXXXXX YYYYYY

它给了我以下的错误


错误:无法在节点“”上执行操作rabbit@C001741998'. 请参阅下面的诊断信息和建议

最常见的原因是:

  • 无法访问目标节点(例如,由于主机名解析、TCP连接或防火墙问题)
  • CLI工具无法与服务器进行身份验证(例如,由于CLI工具的Erlang cookie与服务器的Erlang cookie不匹配)
  • 目标节点未运行
除以下诊断信息外:

  • 有关详细信息,请参阅上的CLI、群集和网络指南
  • 查阅节点上的服务器日志rabbit@C001741998
诊断学 试图联系:[rabbit@C001741998]

rabbit@C001741998:

  • 连接到C001741998上的epmd(端口4369)

  • epmd报告节点“兔子”使用端口25672进行节点间和CLI工具通信

  • TCP连接成功,但Erlang分发失败

  • 身份验证失败(被远程节点拒绝),请检查Erlang cookie

当前节点详细信息:

  • 节点名称:rabbitmqcli49@C001741998

  • 有效用户的主目录:C:\Users\XYZ

  • Erlang cookie哈希:qjlwbuagrn8gn00mjqyow==


我将erlang cookie从我的用户主文件夹复制到C:\Windows文件夹。所以,他们都有相同的饼干。它仍然不断地向我抛出错误。不知道该怎么修。有什么帮助吗

更新
我发现运行rabbitmq的最佳方法是从docker容器。这样,您就不需要担心任何cookie或依赖项,而且您可以在几分钟内启动并运行rabbitmq。希望它能帮助别人

检查您安装的erlang版本。rabbitmq v3.7.0与erlang的v20.1.x相匹配。
文件上说你应该用另一种方式复制

如果使用Windows服务,则应将cookie从C:\Windows\system32\config\systemprofile\.erlang.cookie复制到运行rabbitmqctl.bat等命令的用户的预期位置


请参见

在我自己解决了这个问题后,通过在我的帐户下运行服务解决了这个问题。如果您仍然面临此问题并已重新安装,请尝试此方法。

如果您像我一样需要这些东西,请详细说明:

  • 在FileExplorer中导航到您的用户目录。(将
    %userprofile%
    粘贴到地址栏中。)
  • 如果文件
    .erlang.cookie
    已经存在,请将其删除。如果没有,请转到下一步
  • 在第二个文件资源管理器中,导航到
    C:\Windows\System32\config\systemprofile
  • 找到文件
    .erlang.cookie
    ,并将其复制到您的用户目录

  • 现在您的
    rabbitmqctl
    应该能够进行身份验证。

    Robino的回答帮助我解决了这个问题

    我有两个不同的
    .erlang.cookie
    文件- 管理员
    users/admin中的一个
    及
    
    users/myprofile

    我将
    C:\Windows\System32\config\systemprofile
    中的文件复制到
    users/myprofile
    users/admin
    两个位置


    此外,我还将相同的cookie文件复制到我的Rabbit安装
    %Rabbit\u Home%\sbin
    中,我正在运行我的
    rabbitmqctl.bat

    我确实通过Chocolaty安装了RabbitMQ 3.8.5 Erlang 22.3,并且在Windows 10机器上遇到了同样的问题。 对我来说,替换.erlang.cookie文件的效果与前面提到的一样

    Cookie文件位置 在Windows上,cookie文件位置取决于是否设置了HOMEDRIVE和HOMEPATH环境变量

    如果使用非管理帐户安装RabbitMQ,则节点和CLI工具使用的共享机密文件将不会放置到正确的位置,从而在使用rabbitmqctl.bat和其他CLI工具时导致身份验证失败

    这些选项之一可用于缓解:

    • 使用管理用户重新安装RabbitMQ
    • 将文件.erlang.cookie从%SystemRoot%或%SystemRoot%\system32\config\systemprofile手动复制到%HOMEDRIVE%%HOMEPATH%

    检查以确保RabbitMQ使用的cookie文件实际上是相同的(我看到您复制了它,但您确定服务器使用的是您复制的文件,而不是其他文件吗?)这更像是超级用户的问题吗?我预期的位置是
    %HOMEDRIVE%%HOMEPATH%\.erlang.cookie
    谢谢,Daniel和yohosuff我没有这样的文件。我也不确定应该使用什么位置?@Daniel从systemprofile->expected location复制。之后,当尝试加入集群时,再次在systemprofile下创建它的文件。请提出建议。已复制C:\Windows\system32\config\systemprofile\.erlang.cookie。2.已粘贴到%HOMEDRIVE%%HOMEPATH%3。已替换%HOMEDRIVE%%HOMEPATH%/.erlang.cookie的现有副本,但该副本仍有效。谢谢你这对开发者来说是愚蠢的。所以每次我们都要复制cookie文件?开发人员不能纠正这个问题。这是我的问题。即使在替换erlang cookie之后,我也会遇到同样的错误。但是在使用我的用户权限运行服务后,它工作了…谢谢!