rabbitmq - TCP连接成功,Erlang分发失败
问题描述
我们在 3 台不同的机器上安装了 Erlang Vm (erlang-23.2.1-1.el7.x86_64.rpm) 和 Rabbitmq server(rabbitmq-server-3.8.19-1.el7.noarch.rpm) 并成功启动了 RabbitMQ服务器在 3 台机器上具有三个不同的集群,但是当我们尝试对这些 rabbitmq 节点进行集群时,我们遇到了 Erlang 分发失败错误,谷歌搜索它并发现它可能是由于 Erlang cookie 不匹配,如果它可以帮助我们如何解决这个不匹配问题是根本原因
错误信息 :
错误:无法在节点“rabbit@keng03-dev01-ins01-dmq67-app-1627533565-1”上执行操作。请参阅下面的诊断信息和建议。
最常见的原因是:
- 目标节点不可达(例如由于主机名解析、TCP 连接或防火墙问题)
- CLI 工具无法通过服务器进行身份验证(例如,由于 CLI 工具的 Erlang cookie 与服务器的不匹配)
- 目标节点未运行
除了以下诊断信息:
- 请参阅https://rabbitmq.com/documentation.html上的 CLI、集群和网络指南以了解更多信息
- 查询节点rabbit@keng03-dev01-ins01-dmq67-app-1627533565-1上的服务器日志
- 如果目标节点配置为使用长节点名称,请不要忘记在 CLI 工具中使用 --longnames
诊断
试图联系:['rabbit@keng03-dev01-ins01-dmq67-app-1627533565-1']
rabbit@keng03-dev01-ins01-dmq67-app-1627533565-1:
- 连接到 keng03-dev01-ins01-dmq67-app-1627533565-1 上的 epmd(端口 4369)
- epmd 报告节点“兔子”使用端口 25672 进行节点间和 CLI 工具流量
- TCP 连接成功但 Erlang 分发失败
- 建议:检查所有服务器节点和 CLI 工具的 Erlang cookie 是否相同
- 建议:检查所有服务器节点和 CLI 工具在相互寻址时是否使用一致的主机名
- 建议:检查是否可以将节点间连接配置为使用 TLS。如果是这样,所有节点和 CLI 工具都必须这样做
- 建议:请参阅https://rabbitmq.com/documentation.html上的 CLI、集群和网络指南以了解更多信息
当前节点详细信息:
- 节点名称:'rabbitmqcli-616-rabbit@keng03-dev01-ins01-dmq67-app-1627533565-2'
- 有效用户的主目录:/var/lib/rabbitmq
- Erlang cookie 哈希:AFJEXwyuc44Sp8oYi00SOw== '''
解决方案
推荐阅读
- docker - tar(子):prometheus-2.8.1.linux-amd64.tar.gz:无法打开:没有这样的文件或目录
- node.js - Angular 7 到 Angular 8 迁移
- algorithm - Counting number of "BAD" values
- django - 如何部署符号链接的反应 javascript 文件以出现在 Docker 容器中
- html - justify-content:向元素添加宽度后,空格之间不起作用
- arrays - 删除 mongoDB 嵌套数组中的特定对象
- bash - bash 命令产生奇怪的行为
- amazon-web-services - etcd 集群健康检查 | aws ELB
- javascript - 如何使数据表插件正常工作>
- jasmine - 有没有办法使用量角器(Jasmine)立即重新运行失败的套件