说明

本来是要先把Hystrix 仪表盘更完的,但是出现了Turbine、Dashboard、RabbitMQ整合实现监控。

所以先在学RabbitMq的基本操作,在安装过程中出现了

E:\RabbitMQ Server\rabbitmq_server-3.6.5\sbin>rabbitmqctl status
Status of node 'rabbit@DESKTOP-T5RBR6M' ...
Error: unable to connect to node 'rabbit@DESKTOP-T5RBR6M': nodedown DIAGNOSTICS
=========== attempted to contact: ['rabbit@DESKTOP-T5RBR6M'] rabbit@DESKTOP-T5RBR6M:
* connected to epmd (port 4369) on DESKTOP-T5RBR6M
* epmd reports node 'rabbit' running on port 25672
* TCP connection succeeded but Erlang distribution failed
* suggestion: hostname mismatch?
* suggestion: is the cookie set correctly?
* suggestion: is the Erlang distribution using TLS? current node details:
- node name: 'rabbitmq-cli-27@DESKTOP-T5RBR6M'
- home dir: C:\Users\Administrator
- cookie hash: +Xg8GwzCRQiqRrJZqqF30A==

重点在TCP connection succeeded but Erlang distribution failedsuggestion: is the cookie set correctly?这两行,在网上看了两个小时了,发现很多都是不明所以弄成了就随便捊一下就写。。

有一些现在没有suggestion的输出,这不是很重要,这里我先恢复事故现场,大家一起踩坑

WorkArounds

问题复现

分别安装 Erlang (otp_win64_20.3.exe) 、RabbitMQ Server(rabbitmq-server-3.7.5.exe)

这里为了能看清晰问题是出在安装目录上还是其它,都装到D盘,其他不变

安装完成在菜单栏中会有这个显示,这里用win10演示(公司电脑)

查看服务,服务已经正常启动

cmd命令cd到D:\RabbitMQ Server\rabbitmq_server-3.7.5\sbin (你实际的安装位置)

小提示:如果是默认的安装位置,用 可以直接定位到sbin下

输入rabbitmqctl status

D:\RabbitMQ Server\rabbitmq_server-3.7.5\sbin>rabbitmqctl status
Status of node rabbit@DESKTOP-T5RBR6M ...
Error: unable to perform an operation on node 'rabbit@DESKTOP-T5RBR6M'. Please see diagnostics information and suggestions below. Most common reasons for this are: * Target node is unreachable (e.g. due to hostname resolution, TCP connection or firewall issues)
* CLI tool fails to authenticate with the server (e.g. due to CLI tool's Erlang cookie not matching that of the server)
* Target node is not running In addition to the diagnostics info below: * See the CLI, clustering and networking guides on http://rabbitmq.com/documentation.html to learn more
* Consult server logs on node rabbit@DESKTOP-T5RBR6M DIAGNOSTICS
=========== attempted to contact: ['rabbit@DESKTOP-T5RBR6M'] rabbit@DESKTOP-T5RBR6M:
* connected to epmd (port 4369) on DESKTOP-T5RBR6M
* epmd reports node 'rabbit' uses port 25672 for inter-node and CLI tool traffic
* TCP connection succeeded but Erlang distribution failed * Authentication failed (rejected by the remote node), please check the Erlang cookie Current node details:
* node name: 'rabbitmqcli49@DESKTOP-T5RBR6M'
* effective user's home directory: C:\Users\Administrator
* Erlang cookie hash: joVCp1tjZbhK/nWhgoYyjQ==

问题复现。

Authentication failed (rejected by the remote node), please check the Erlang cookie是重点,说明cookie可能有问题。

问题解决

这里直接告诉大家问题出在哪吧,是Erlang新版本的cookie位置换了!

两种解决办法:

  • 使用旧版本Erlang
  • cookie替换到正确的位置

打开路径C:\Windows\System32\config\systemprofile

我们看到了这里有一个.erlang.cookie,复制这个文件到C:\Users\你的用户名

如果没有这个文件,请打开菜单栏的Erlang快捷方式,出现白色窗口的时候,C:\Windows\System32\config\systemprofile这个目录下就会出现这个文件,可能会慢一些耐心等

要确保C:\Windows\System32\config\systemprofileC:\Users\你的用户名下的cookie是同一个文件!

替换完成后,无需重启服务,直接rabbitmqctl status,如图这样就成功了。

以上

RabbitMQ问题解决:TCP connection succeeded but Erlang distribution failed的更多相关文章

  1. [RabbitMQ]Windows环境下rabbitmqclt(Command Line Tools)出现Erlang distribution failed错误的解决方法

    摘要 当使用rabbitmqctl时出现Erlang distribution failed,把%SystemRoot%Windows\System32\config\systemprofile下的. ...

  2. TCP connection status

    A TCP connection progresses through a series of states during its lifetime. The following diagram il ...

  3. linux上TCP connection timeout的原因查找

    linux上TCP connection timeout的原因查找 好久没有写文章了, 今天解决了一个网络连接超时的问题, 记录以备查看. 最近在线上nginx经常出现输出connection tim ...

  4. TCP Connection Establishment and Termination

    Three-Way Handshake The following scenario occurs when a TCP connection is established: The server m ...

  5. RT:How HTTP use TCP connection

    In HTTP/0.9 (not used anymore), each request uses a separate TCP connection, and the end of a respon ...

  6. Caused by: com.rabbitmq.client.ShutdownSignalException: connection error

    周五下午的时候升级了一个环境,跑了批处理sh升级脚本后,启动时报下列错误: INFO | jvm 1 | 2017/02/24 17:39:09 | java.io.IOException INFO ...

  7. tcp connection

    三次握手与四次挥手的原因 https://yq.aliyun.com/articles/7435?spm=5176.8091938.0.0.N4v33a linux里的backlog详解 tcp co ...

  8. Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space

    在Eclipse 调试 springside showcase项目中,tomcat报异常 Exception in thread "RMI TCP Connection(idle)" ...

  9. the age of the TCP connection TCP Slow Start

    w防止网络过载和拥塞 HTTP The Definitive Guide The performance of TCP data transfer also depends on the age of ...

随机推荐

  1. ejb与javabean的区别总结

    EJB的英文全称是企业级的JavaBean 两者是完全不同的 JavaBean是一个组件,而EJB就是一个组建框架 JavaBean面向的是业务逻辑和表示层的显示,通过编写一个JavaBean,可以将 ...

  2. Java中DAO的实现

    J2EE 开发人员使用数据访问对象(Data Access Object DAO)设计模式,以便将低级别的数据访问逻辑与高级别的业务逻辑分离.实现 DAO 模式涉及比编写数据访问代码更多的内容.在本文 ...

  3. Maven解读:项目依赖管理如何优化

    Github地址:https://github.com/zwjlpeng/Maven_Detail Maven最大的好处莫过于其强大的依赖管理系统,在Pom配置文件中指定项目需要的Jar包的坐标,Ma ...

  4. CSS和JS引用图片(资源)的路径问题

    做项目时遇到了这个问题,特此写个笔记记一下

  5. JDK和CGLIB动态代理原理

    1.JDK动态代理利用拦截器(拦截器必须实现InvocationHanlder)加上反射机制生成一个实现代理接口的匿名类, 在调用具体方法前调用InvokeHandler来处理. 2.CGLiB动态代 ...

  6. 【问底】徐汉彬:PHP7和HHVM的性能之争 (真是学到了很多)

    来源:http://www.csdn.net/article/2014-12-25/2823234 作者:徐汉彬 摘要:近日,PHP7和HHVM的性能之争成为了一个讨论热点,但毫无疑问,它们都在提升P ...

  7. double 和 im2double 的区别

    double 就是简单地把一个变量类型转换成double型,数值大小不变. 函数im2double将输入换成double类型.如果输入是unit8,unit16或者是二值的logical类型,则函数i ...

  8. There is no getter for property named 'notice' in 'class com.game.domain.Notices'

    在插入数据时报错:There is no getter for property named 'notice' in 'class com.game.domain.Notices' 四月 11, 20 ...

  9. Mac突然连不上WiFi

    标签(空格分隔): 杂七杂八的问题 从昨晚开始,Mac突然连不上WiFi了,人又在图书馆,上不了网好焦急.于是搜了很多方法,也不知是哪个起作用了,反正现在可以了. 步骤一 打开"Finder ...

  10. [Ispc2009]Let there be rainbows!

    Description HY Star是一个处处充满和谐,人民安居乐业的星球,但是HYStar却没有被评上宇宙文明星球,很大程度上是因为星球的形象问题. HY Star由N个国家组成,并且在一些国家之 ...