Ubuntu单机多节点RabbitMQ集群怎么搭建?端口号冲突如何解决?
单机多节点搭建集群
Ubuntu
安装RabbitMQ
安装RabbitMQ的步骤在之前的博客中已经写过了。
查看RabbitMQ的状态
rabbitmqctl status # 查看 RabbitMQ 状态
会在结果的第一行看到节点的名称,比如:

端⼝号介绍:
- 25672这是Erlang分布式节点通信的默认端⼝, Erlang是RabbitMQ的底层通信协议.
- 15672这是 Web管理界⾯的默认端⼝, 通过这个端⼝可以访问RabbitMQ的Web管理控制台, ⽤于查看和管理消息队列.
- 5672这是 AMQP (Advanced Message Queuing Protocol) 协议的默认端⼝, ⽤于客⼾端与
- RabbitMQ服务器之间的通信.
再启动两个节点
现在已经安装的RabbitMQ端⼝号是5672, 15672
再启动两个RabbitMQ服务, 节点名称和端⼝号分别设置为:
| Node name | AMQP协议端口号 | Web管理界面端口号 |
| rabbit2 | 5673 | 15673 |
| rabbit3 | 5674 | 15674 |
启动命令如下:
RABBITMQ_NODE_PORT= 5673 RABBITMQ_SERVER_START_ARGS="rabbitmq_management listener [{port, 15673 }]" RABBITMQ_NODENAME= rabbit2 rabbitmq-server -detached
RABBITMQ_NODE_PORT= 5674 RABBITMQ_SERVER_START_ARGS="rabbitmq_management listener [{port, 15674 }]" RABBITMQ_NODENAME= rabbit3 rabbitmq-server -detached然后可以通过IP+15673和IP+15674访问管理界面看是否启动成功。
搭建集群
停止服务并重置
rabbitmqctl -n rabbit2 stop_app rabbitmqctl -n rabbit2 reset rabbitmqctl -n rabbit3 stop_app rabbitmqctl -n rabbit3 reset
把node2,node3节点加入集群
rabbitmqctl -n rabbit2 join_cluster rabbit@hcss-ecs-2618 rabbitmqctl -n rabbit3 join_cluster rabbit@hcss-ecs-2618
重启rabbit2,rabbit3
rabbitmqctl -n rabbit2 start_app rabbitmqctl -n rabbit3 start_app
查看集群状态
rabbitmqctl cluster_status -n rabbit
可以通过主节点的管理界面,看到集群其它节点的状态

Centos
安装RabbitMQ
安装RabbitMQ的详细步骤已经在之前的博客中写过了。
查看集群状态
rabbitmqctl status # 查看 RabbitMQ 状态
可以在结果中第一行看到节点名称

再启动两个节点
现在已经安装的RabbitMQ端⼝号是5672, 15672
再启动两个RabbitMQ服务, 节点名称和端⼝号分别设置为:
| Node name | AMQP协议端口号 | Web管理界面端口号 |
| rabbit2 | 5673 | 15673 |
| rabbit3 | 5674 | 15674 |
启动命令如下:
RABBITMQ_NODE_PORT= 5673
RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port, 15673 }]" RABBITMQ_NODENAME= rabbit2
rabbitmq-server -detached
RABBITMQ_NODE_PORT= 5674
RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port, 15674 }]" RABBITMQ_NODENAME= rabbit3
rabbitmq-server -detached注意上面的命令在复制的时候如下图所示:

因为我在复制上面的命令时发现多次都没有启动成功,找了好久才发现在复制的时候,一个-横线在复制后没有了。
可以通过IP+端口号进行访问看是否启动成功,也可以使用netstat -anp | grep 56来查看是否启动成功。
搭建集群
停止服务并重置
rabbitmqctl -n rabbit2 stop_app rabbitmqctl -n rabbit2 reset rabbitmqctl -n rabbit3 stop_app rabbitmqctl -n rabbit3 reset

把rabbit2和rabbit3加入集群
rabbitmqctl -n rabbit2 join_cluster rabbit@iZbp190qbav81ruf46b5w7Z rabbitmqctl -n rabbit3 join_cluster rabbit@iZbp190qbav81ruf46b5w7Z

重启rabbit2和rabbit3
rabbitmqctl -n rabbit2 start_app rabbitmqctl -n rabbit3 start_app

查看集群状态
rabbitmqctl cluster_status -n rabbit


通过管理界面可以查看到集群信息

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
SpringBoot整合Mybatis之各种查询、模糊查询、批量删除、动态表名操作
这篇文章主要介绍了SpringBoot整合Mybatis之各种查询、模糊查询、批量删除、动态表名,本文结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-12-12
Springboot的Mapper中添加新的SQL语句方法详解
在如今的软件开发界,Spring Boot可是非常受欢迎的框架哦,尤其是在微服务和RESTful API的构建上,下面给大家介绍我们如何为Spring Boot项目中的Mapper添加新的SQL语句吧,感兴趣的朋友一起看看吧2025-04-04
Java Swing JPasswordField密码框的实现示例
这篇文章主要介绍了Java Swing JPasswordField密码框的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-12-12
IDEA2023 Maven3.9.1+Tomcat10.1.8配置并搭建Servlet5.0的框架实现
本文主要介绍了IDEA2023 Maven3.9.1+Tomcat10.1.8配置并搭建Servlet5.0的框架实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-07-07


最新评论