RocketMQ的2主2从集群环境搭建
前言
该测试用例是在Linux环境下操作的,需先在Linux环境上安装Java环境和maven环境
1、Java环境的安装
- 在/usr/local/java路径下新建Java文件夹
- 通过xshell工具的rz命令将事先下载好的jdk-8u211-linux-x64.tar.gz压缩包上传到Linux虚拟机中
- 解压jdk-8u211-linux-x64.tar.gz压缩包
- 将解压后的文件复制到/usr/local/java目录下
- 配置Java环境
2、配置maven环境
- 在/usr/local/maven建立maven文件夹
- 通过xshell工具的rz命令将事先下载好的apache-maven-3.6.2-bin.tar.gz压缩包上传到Linux虚拟机中并解压
- 将解压后的文件复制到/usr/local/maven目录下
- 配置maven环境变量
- 使得修改后的配置文件立即生效
- 查看Java和maven的环境
3、双主双从异步复制集群部署实现高可用
- 创建/usr/local/rocketmq文件夹
- 通过xshell工具的rz命令将事先下载好的rocketmq-all-4.5.1-bin-release.zip压缩包上传到Linux虚拟机中
- 解压rocketmq-all-4.5.1-bin-release.zip
- 将解压后的文件夹复制到/usr/local下并重命名为rocketmq,重命名命令行为: mv 源文件名 重命名之后的文件名
- 在主机1的rocketmq的/conf/2m-2s-async/broker-a.properities添加相关配置信息,主机2的rocketmq的/conf/2m-2s-async/broker-b.properities配置信息同理,只是brokerName=broker-b
- 在主机1的rocketmq的/conf/2m-2s-async/broker-b-s.properities添加相关配置信息,在主机2的rocketmq的/conf/2m-2s-async/broker-a-s.properities添加相关配置信息;注意brokerName以及brokerId
brokerClusterName=RocketMQCluster
brokerName=broker-a
namesrvAddr=192.168.30.129:9876;192.168.30.130:9876
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH
listenPort=10911
storePathRootDir=/usr/local/rocketmq/store/master
storePathCommitLog=/usr/local/rocketmq/store/master/commitlog
autoCreateTopicEnable=false
autoCreateSubscriptionGroup=false
其中storePathRootDir和storePathCommitLog需要在相应的地方新建文件夹
- 启动NameServer:分别在两台主机进入到rocketmq中/bin目录下,使用
nohup sh mqnamesrv &启动nameserver;然后使用jpa命令查看nameserver的运行情况
- 在bin目录分别启动broker,
主机1:注意主要路径是 /conf/2m-2s-async/broker-a.properties
nohup sh mqbroker -c /usr/local/rocketmq/rocketmq-all-4.5.1-bin-release/conf/2m-2s-async/broker-a.properties >/dev/null 2>&1 &
然后使用jps查看信息
其他broker的启动同理可得
最后可以使用sh mqadmin clusterList -n 192.168.30.129:9876;192.168.30.130命令行查看rocketmq的集群情况
关闭nameserver和broker的命令分别是:
sh mqshutdown namesrv sh mqshutdown broker