[root@ct ~]# rabbitmqctl add_user openstack RABBIT_PASS Error: unable to connect to node rabbit@localhost: nodedown DIAGNOSTICS =========== attempted to contact: [rabbit@localhost] rabbit@localhost: * connected to epmd (port 4369) on localhost * epmd reports node 'rabbit' running on port 25672 * TCP connection succeeded but Erlang distribution failed * Hostname mismatch: node "rabbit@ct" believes its host is different. Please ensure that hostnames resolve the same way locally and on "rabbit@ct" current node details: - node name: 'rabbitmq-cli-12@ct' - home dir: /var/lib/rabbitmq - cookie hash: oV+N20QLBoBQrAgHFUTACg==
作为一个专业技术人员,难免也会出现小错误,为了避免学弟学妹出现同样的问题,在解决问题之前,我来给各位先分析一下原因
试图联系:[rabbit@localhost] rabbit@localhost: *连接到本地主机上的epmd(端口4369) epmd报告节点'rabbit'在端口25672上运行 TCP连接成功,但Erlang分发失败 *主机名不匹配:节点“rabbit@ct”认为其主机不同。请确保主机名在本地和“rabbit@ct”上以相同的方式解析。 当前节点的详细信息: -节点名称:'rabbitmq-cli-12@ct' —home dir:“/var/lib/rabbitmq” - cookie hash: oV+N20QLBoBQrAgHFUTACg==
也就是说,我们使用了su,虽然能看到我们用户名改成了ct,但是实际环境还是使用的localhost,所以会导致问题的出现。
当我们使用了su - ,我们就换了一个新的bash环境,这样就能保证主机名就是新的ct,所以不会出现错误。
所以,这样问题还是很好解决的,但是也是比较容易忽视的问题,所以我们有时候需要经常去注意一些小的细节,毕竟经常出现的问题大多数是我们容易忽视的问题。
su 和 su - 是看起来很像,而且使用之后貌似效果也一样,但是还是有不小的差别的,这就需要我们去进行一些自我的总结和了解