windows单机下的RabbitMQ集群搭建

说明

由于某些奇葩的原因,无法在内网部署linux或虚拟机,需要在单机windows上搭建RabbitMQ集群

仅适用个人的windows单机开发环境,仅限学习使用,生产环境建议多台Linux服务器进行集群搭建并搭配HAProxy、Keepalive

目录

说明

环境

准备

节点说明

启动

集群

其他问题

参考文章


环境

RabbitMQ 3.8.9

https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.8.9

Erlang 23.2

https://www.erlang.org/downloads

注意3.8.9使用Erlang需要23,说明如下:

准备

为了排除干扰,请使用干净的RabbitMQ,或者删除当前用户目录的AppData\Roaming\RabbitMQ中的文件db、rabbitmq.config(若有用,自行备份)

节点说明

 

 

节点名 端口

rabbit_cluster_1

主节点5671、15671

rabbit_cluster_2

从节点5672、15672
rabbit_cluster_3从节点5673、15673

启动

1.启动节点1(主节点)

1.1在rabbitmq安装目录下的sbin执行:

set RABBITMQ_NODE_PORT=5671
set RABBITMQ_SERVER_START_ARGS=-rabbitmq_management listener [{port,15671}]
set RABBITMQ_NODENAME=rabbit_cluster_1
./rabbitmq-server

PS:

    a.上诉命令可保存为bat文件,方便每次双击即可启动

     b.可使用RABBITMQ_CONFIG_FILE来指定配置文件位置,并在配置文件中进行端口配置,而不是使用RABBITMQ_NODE_PORT、RABBITMQ_SERVER_START_ARGS

set RABBITMQ_CONFIG_FILE=%APPDATA%\RabbitMQ\rabbitmq-cluster1.config
set RABBITMQ_NODENAME=rabbit_cluster_1
./rabbitmq-server 

         

1.2启用web管理页面插件

    sbin目录下执行以下命令:

rabbitmq-plugins enable rabbitmq_management

2.启动节点2、3

将端口5671、15671分别改为5672、15672(节点2),5673、15673 (节点3),再启动

3.检查端口

检查端口是否指定成功,例如节点2的端口应为5672、15672、25672

若端口不一致,请检查:

a.启动命令中,环境变量RABBITMQ_SERVER_START_ARGS中的端口是否正确,注意官网、大部分的教程中为Linux环境,RABBITMQ_SERVER_START_ARGS的值带了双引号"",而window环境下不应带双引号,否则将设置不成功

b.是否在%APPDATA%/RabbitMQ中,已存在了rabbitmq.config

集群

停止节点2的app

rabbitmqctl -n rabbit_cluster_2 stop_app

将节点2加入节点1的集群

rabbitmqctl -n rabbit_cluster_2 join_cluster rabbit_cluster_1@CAIJUN

检查节点2是否已加入集群

其他问题

在集群成功后,关闭所有节点,再次启动,需要先启动从节点(节点2、3),再启动主节点(节点1),否则节点1会一直等待,错误日志:

若使用了较多的插件,RABBITMQ_SERVER_START_ARGS中的端口应增加,例如:

RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15671}] -rabbitmq_stomp tcp_listeners [61615] -rabbitmq_mqtt tcp_listeners [1885]"

参考文章

官网 https://www.rabbitmq.com/clustering.html

RabbitMQ单机集群搭建 https://blog.csdn.net/Java_HuiLong/article/details/73718714

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值