计算机系统应用教程网站

网站首页 > 技术文章 正文

小白入门必知必会-RocketMQ集群部署

btikc 2025-01-23 15:32:48 技术文章 14 ℃ 0 评论

一 RocketMQ集群部署

1.1 服务器规划

搭建一个双主双从异步复制的Broker集群,用两台主机来完成集群的搭建。

1.2 配置/etc/hosts解析

两台服务器均需执行。

cat >>/etc/hosts<<EOF

192.168.0.99 rocketmq01

192.168.0.100 rocketmq02

EOF

1.3 RocketMQ安装

两台服务器均需安装rocketmq,之前已写rocketmq单机部署的文章,此处不再赘述。

1.4 修改rocketmq01配置文件

192.168.0.99服务器操作

cd /web/rocketmq-5.1.0/conf/2m-2s-async

rm -f broker-b.properties broker-a-s.properties

vim broker-a.properties

#指定整个broker集群的名称,或者说是rocketmq集群的名称

brokerClusterName=DefaultCluster

#指定master-slave集群的名称,一个rocketmq集群可以包含多个master-slave集群

brokerName=broker-a

#broker为0表示是master,非0表示为slave

brokerId=0

#指定删除消息存储过期文件的时间为凌晨4点

deleteWhen=04

#指定未发生更新的消息存储文件的保留时长为48小时,48小时后过期,将会被删除fileReservedTime=48

#指定当前broker为异步复制master

brokerRole=ASYNC_MASTER

#指定刷盘策略为异步刷盘

flushDiskType=ASYNC_FLUSH

#指定Name Server的地址

namesrvAddr=192.168.0.99:9876;192.168.0.100:9876

vim broker-b-s.properties

brokerClusterName=DefaultCluster

brokerName=broker-b

brokerId=1

deleteWhen=04

fileReservedTime=48

brokerRole=SLAVE

flushDiskType=ASYNC_FLUSH

namesrvAddr=192.168.0.99:9876;192.168.0.100:9876

#指定broker对外提供服务的端口,即broker与producer与consumer通信的端口,默认10911,由于当前主机同时充当着master1与slave2,而前面的master1使用的是默认端口,这里需要将这两个端口加以区分。

listenPort=11911

#指定消息存储相关的路径。默认路径为~/store目录,由于当前主机同时充当着master1与slave2,master1使用的是默认路径,这里就需要再指定一个不同路径。

storePathRootDir=~/store-s

storePathCommitLog=~/store-s/commitlog

storePathConsumeQueue=~/store-s/consumequeue

storePathIndex=~/store-s/checkpoint

abortFile=~/store-s/abort

1.5 修改rocketmq02配置文件

192.168.0.100服务器操作

cd /web/rocketmq-5.1.0/conf/2m-2s-async

rm -f broker-a.properties broker-b-s.properties

vim broker-a-s.properties

brokerClusterName=DefaultCluster

brokerName=broker-a

brokerId=1

deleteWhen=04

fileReservedTime=48

brokerRole=SLAVE

flushDiskType=ASYNC_FLUSH

namesrvAddr=192.168.0.99:9876;192.168.0.100:9876

#指定broker对外提供服务的端口,即broker与producer与consumer通信的端口,默认10911,由于当前主机同时充当着master1与slave2,而前面的master1使用的是默认端口,这里需要将这两个端口加以区分。

listenPort=11911

#指定消息存储相关的路径。默认路径为~/store目录,由于当前主机同时充当着master1与slave2,master1使用的是默认路径,这里就需要再指定一个不同路径。

storePathRootDir=~/store-s

storePathCommitLog=~/store-s/commitlog

storePathConsumeQueue=~/store-s/consumequeue

storePathIndex=~/store-s/checkpoint

abortFile=~/store-s/abort

vim broker-b.properties

brokerClusterName=DefaultCluster

brokerName=broker-b

brokerId=0

deleteWhen=04

fileReservedTime=48

brokerRole=ASYNC_MASTER

flushDiskType=ASYNC_FLUSH

namesrvAddr=192.168.0.99:9876;192.168.0.100:9876

1.6 启动NameServer集群

分别启动rocketmq01与rocketmq02两台主机中的Name Server,启动命令完全相同。

cd /web/rocketmq-5.1.0/bin

nohup ./mqnamesrv &

查看日志

tailf nohup.out

1.7 启动两个Master

192.168.0.99服务器操作

nohup ./mqbroker -c ../conf/2m-2s-async/broker-a.properties &

查看日志

tailf ~/logs/rocketmqlogs/broker.log

192.168.0.100服务器操作

nohup ./mqbroker -c ../conf/2m-2s-async/broker-b.properties &

查看日志

tailf ~/logs/rocketmqlogs/broker.log

1.8 启动两个Slave

nohup ./mqbroker -c ../conf/2m-2s-async/broker-b-s.properties &

查看日志

tailf ~/logs/rocketmqlogs/broker.log

192.168.0.100服务器操作

nohup ./mqbroker -c ../conf/2m-2s-async/broker-a-s.properties &

查看日志

tailf ~/logs/rocketmqlogs/broker.log

jps查看服务状态

至此,RocketMQ集群安装完成。感谢观看。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表