RabbitMQ报错Error: unable to connect to node rabbit@xxx: nodedown的解决方式

本文主要是介绍RabbitMQ报错Error: unable to connect to node rabbit@xxx: nodedown的解决方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境:Win10x64+erlang_otp_19.1x64+RabbitMQ3.6.6

刚开始研究RabbitMQ,就遇到问题:

安装好之后,按照官方安装向导执行rabbitmqctl status命令检查状态时,报如下错误:

Bash
Status of node 'rabbit@DESKTOP-RVK1IHE' ...
Error: unable to connect to node 'rabbit@DESKTOP-RVK1IHE': nodedown
DIAGNOSTICS
===========
attempted to contact: ['rabbit@DESKTOP-RVK1IHE']
rabbit@DESKTOP-RVK1IHE:* connected to epmd (port 4369) on DESKTOP-RVK1IHE* epmd reports node 'rabbit' running on port 25672* TCP connection succeeded but Erlang distribution failed* Authentication failed (rejected by the remote node), please check the Erlang cookie
current node details:
- node name: 'rabbitmq-cli-22@DESKTOP-RVK1IHE'
- home dir: C:\Users\TNT
- cookie hash: oVa+k73FyoNB9z87SvbEAQ==

根据提示,应该是Erlang的cookie出现问题。谷歌后找到了两种解决方式(还有集群的解决方案,这里无关就不阐述了):

1、重新安装RabbitMQ的服务

For some reason the service set up by the installer did not configure several registry entries. Running this set them correctly and allowed the service to run.

这是由于某些原因在安装服务时没有正确配置注册项,重新安装服务即可解决:

  • 以管理员身份运行RabbitMQ Command Propmt(开始菜单中)

  • 执行rabbitmq-service remove

  • 执行rabbitmq-service install

然后再测试是否成功。

2、更正Erlang的cookie

Erlang会生成两个cookie文件:C:\Windows\.erlang.cookie 及 C:\用户\你的用户名\.erlang.cookie。检查两个文件内容是否一致,不一致用其中一个替换另一个即可。


我这里用第二种方式解决了问题,正如程序提示是cookie不正确所导致。

目前还不清楚为何会这样,网上查阅的资料很多都是集群才会出现这种情况,可能是bug,有待探究。


参考:http://stackoverflow.com/questions/28258392/rabbitmq-has-nodedown-error

这篇关于RabbitMQ报错Error: unable to connect to node rabbit@xxx: nodedown的解决方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1095394

相关文章

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

Mybatis的分页实现方式

《Mybatis的分页实现方式》MyBatis的分页实现方式主要有以下几种,每种方式适用于不同的场景,且在性能、灵活性和代码侵入性上有所差异,对Mybatis的分页实现方式感兴趣的朋友一起看看吧... 目录​1. 原生 SQL 分页(物理分页)​​2. RowBounds 分页(逻辑分页)​​3. Page

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

解决JSONField、JsonProperty不生效的问题

《解决JSONField、JsonProperty不生效的问题》:本文主要介绍解决JSONField、JsonProperty不生效的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录jsONField、JsonProperty不生效javascript问题排查总结JSONField

github打不开的问题分析及解决

《github打不开的问题分析及解决》:本文主要介绍github打不开的问题分析及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、找到github.com域名解析的ip地址二、找到github.global.ssl.fastly.net网址解析的ip地址三