RabbitMQ单机集群搭建出现Error: unable to perform an operation on node 'rabbit1@ClusterNode1'

参考链接:https://www.cnblogs.com/daryl/archive/2017/10/13/7645749.html

全部步骤和参考链接相同。

前八部都正常,在第九步会报错Error: unable to perform an operation on node 'rabbit1@ClusterNode1',具体如下图:

ping ClusterNode1结果正常:

rabbitmqctl-ClusterNode1.bat运行命令基本都会报与stop_app相同的错误。

查网上erlang.cookie修改没用,因为两个erlang.cookie本来就是相同的。查阅了大量相关资料后,他们的解决方案基本都无效。

反复检查后我突然发现HTTP端操作正常,就是不能用rabbitmqctl-ClusterNode1.bat进行操作。

然后,我在HTTP端用Export definitions导出RabbitMQ的基本信息,发现其中有一条"global_parameters":[{"name":"cluster_name","value":"rabbit1@PC-20180525AWWA"}]信息。

所以我就思考是不是应该不用ClusterNode1,而是直接使用默认的本机名。

正巧我看见http://www.zhimengzhe.com/mac/333192.html中就有这样直接用rabbit和rabbit1表示两个节点的例子,节点会自动默认为rabbitx@localhost,只要配置了127.0.0.1 localhost。

所以我就将hosts中的127.0.0.1 ClusterNode1注释。

同时,在rabbitmq-env-ClusterNode1.bat中对RABBITMQ_NODENAME进行修改,具体如下。

若出现ERROR: node with name "rabbit1" already running on "loaclhost",则

在任务管理器中把erl.exe进程全部结束,并在管理中重启RabbitMQ服务。然后按照以下步骤执行:

1、启动节点

rabbitmq-server-ClusterNode1 -detached

2、形成集群

rabbitmqctl-ClusterNode1 stop_app

rabbitmqctl-ClusterNode1 join_cluster rabbit

rabbitmqctl-ClusterNode1 start_app

3、查看集群状态

rabbitmqctl cluster_status

4、通过监控页面,查看节点信息

原文地址:https://www.cnblogs.com/lucifer1997/p/9324130.html