Rabbitmq-搭建集群出现“Hostname mismatch: node “rabbit@ubuntu“ believes its host is different.”最简解决方法

root@ubuntu:/var/lib/rabbitmq# rabbitmqctl join_cluster --ram rabbit@node2
Clustering node rabbit@node1 with rabbit@node2
Error: unable to connect to node rabbit@node1: nodedown

DIAGNOSTICS
===========

attempted to contact: [rabbit@node1]

rabbit@node1:
  * connected to epmd (port 4369) on node1
  * epmd reports node 'rabbit' running on port 25672
  * TCP connection succeeded but Erlang distribution failed

  * Hostname mismatch: node "rabbit@ubuntu" believes its host is different. Please ensure that hostnames resolve the same way locally and on "rabbit@ubuntu"


current node details:
- node name: 'rabbitmq-cli-60@node1'
- home dir: /var/lib/rabbitmq
- cookie hash: BjCqdGwVCybIalCt35tRZg==

不知道跟我使用克隆的虚拟机有没有关系,两个虚拟机的hostname一样的。尝试各种方案后最简单的解决方法如下:首先设置主机名,这将修改/etc/hostname的内容

root@ubuntu:/var/lib/rabbitmq# hostnamectl set-hostname node1

此时如果执行

root@ubuntu:/var/lib/rabbitmq# service rabbitmq-server start
root@ubuntu:/var/lib/rabbitmq# rabbitmqctl stop_app
Stopping rabbit application on node rabbit@node1

 此时已经从原来的rabbit@ubuntu变为rabbit@node1。

在/etc/hosts添加ip和对应主机名

192.168.1.2     node0
192.168.1.3     node1
192.168.1.4     node2

之后执行

root@ubuntu:/var/lib/rabbitmq# rabbitmqctl join_cluster rabbit@node2
Clustering node rabbit@node1 with rabbit@node2

添加成功!注意,如果join_cluster 后面添加 --ram 则表示当前节点作为RAM节点加入到该集群中。如果不设置hosts的话会出现错误

unable to connect to epmd (port 4369) on node2: nxdomain (non-existing domain)

 这可能是因为加入集群的命令用的是主机名“ rabbit@node2

最后记得重新start_app

rabbitmqctl start_app

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mrbone11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值