我想在 EC2 上创建一个 RabbitMQ 集群。我创建了一个 Ubantu 的 AMI 并在其上安装了 rabbitmq-server-2.3.1。 我还安装了 GUI 的管理插件。出于集群目的,我还在另一个节点中复制了 .erlang.cookie 文件。 我的问题是当我尝试连接另一个节点时出现以下错误:
错误:{failed_to_cluster_with,['rabbit@ip-10-58-54-170'], “Mnesia 无法连接到某些节点。”
有人知道为什么会这样吗?
最佳答案
“Mnesia 无法连接到某些节点”有几个常见的原因:
- 节点实际上不能相互通信(你能
ping
其他主机吗?), - Erlang 限制阻止您以某些方式命名节点(例如,不支持 FQDM,节点名称必须是单个单词)因此您通常必须将节点地址添加到主机文件中,
- 两个节点有不同的cookies(这里不是这种情况),
- Rabbit 没有在远程节点上运行。
快速诊断问题:
检查连通性:
ping 其他节点
检查 Erlang 是否可以连接到 other_node:
erl -sname my_node -remsh rabbit@other_node
检查 Rabbit 是否正在远程节点上运行:
rabbitmqctl -n other_node 状态
相当多的人已经设法让 RabbitMQ 集群在 EC2 上运行,所以这当然是可能的。
如果您需要更多帮助,最好的地方是 RabbitMQ Discuss邮件列表。开发商make a point回答问题。
关于amazon-ec2 - 在 EC2 上的 RabbitMQ 中创建集群时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6954344/