干货--RocketMQ双主双从

图片

原文链接:https://blog.51cto.com/4259679


集群由两个 name server 实例和四个 broker 实例组成

图片

两台服务同时部署MQ,具体搭建请查看干货--部署RocketMQ


1、192.168.20.40服务器

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-a

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-a/commitlog

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-b

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-b/commitlog

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-as

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-as/commitlog

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-bs

[root@k8s-master ~]# mkdir /usr/local/rocketmq/store/broker-bs/commitlog

[root@k8s-master ~]# cd /usr/local/rocketmq/conf/2m-2s-sync/

[root@k8s-master 2m-2s-sync]# ls

broker-a.properties  broker-a-s.properties  broker-b.properties  broker-b-s.properties

修改配置文件

[root@k8s-master 2m-2s-sync]# more broker-a.properties 

brokerClusterName=rocketmq-cluster

brokerName=broker-a

brokerId=0

deleteWhen=04

fileReservedTime=48

brokerRole=SYNC_MASTER

flushDiskType=ASYNC_FLUSH


listenPort=10911

storePathRootDir=/usr/local/rocketmq/store/broker-a

storePathCommitLog=/usr/local/rocketmq/store/broker-a/commitlog

图片

[root@k8s-master 2m-2s-sync]# more broker-b-s.properties 

brokerClusterName=rocketmq-cluster

brokerName=broker-b

brokerId=1

deleteWhen=04

fileReservedTime=48

brokerRole=SLAVE

flushDiskType=ASYNC_FLUSH


listenPort=11911

storePathRootDir=/usr/local/rocketmq/store/broker-bs

storePathCommitLog=/usr/local/rocketmq/store/broker-bs/commitlog

[root@k8s-master 2m-2s-sync]# 

图片


2、192.168.20.430服务器

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-a

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-a/commitlog

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-b

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-b/commitlog

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-as

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-as/commitlog

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-bs

[root@k8s-node2 ~]# mkdir /usr/local/rocketmq/store/broker-bs/commitlog

[root@k8s-node2 ~]# cd /usr/local/rocketmq/conf/2m-2s-sync/

修改配置文件

[root@k8s-node2 2m-2s-sync]# grep -v "^#" broker-a-s.properties 

brokerClusterName=rocketmq-cluster

brokerName=broker-a

brokerId=1

deleteWhen=04

fileReservedTime=48

brokerRole=SLAVE

flushDiskType=ASYNC_FLUSH


listenPort=11911

storePathRootDir=/usr/local/rocketmq/store/broker-as

storePathCommitLog=/usr/local/rocketmq/store/broker-as/commitlog

图片

[root@k8s-node2 2m-2s-sync]# grep -v "^#" broker-b.properties 

brokerClusterName=rocketmq-cluster

brokerName=broker-b

brokerId=0

deleteWhen=04

fileReservedTime=48

brokerRole=SYNC_MASTER

flushDiskType=ASYNC_FLUSH

listenPort=10911

storePathRootDir=/usr/local/rocketmq/store/broker-b

storePathCommitLog=/usr/local/rocketmq/store/broker-b/commitlog

图片

3、启动服务

启动两个 name server

[root@k8s-master bin]# nohup sh mqnamesrv &

[1] 8048

[root@k8s-node2 bin]# nohup sh mqnamesrv &

[1] 8510

在192.168.20.40上启动 broker a 主服务器:

[root@k8s-master bin]# nohup sh mqbroker -n '192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a.properties &

[2] 8099

[root@k8s-master bin]# nohup: ignoring input and appending output to ‘nohup.out’

在192.168.20.43上启动 broker a 从服务器:


[root@k8s-node2 bin]# nohup sh mqbroker -n '192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a-s.properties &

[2] 8588

[root@k8s-node2 bin]# nohup: 忽略输入并把输出追加到"nohup.out"

在192.168.20.43上启动 broker b 主服务器:

[root@k8s-node2 bin]# nohup sh mqbroker -n'192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-b.properties &

[3] 8672

[root@k8s-node2 bin]# nohup: 忽略输入并把输出追加到"nohup.out"

在192.168.20.40上启动 broker b 从服务器:

[root@k8s-master bin]# nohup sh mqbroker -n '192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-b-s.properties &

[3] 8211

[root@k8s-master bin]# nohup: ignoring input and appending output to ‘nohup.out’

4、检查服务

确认两台服务上分别运行name server和两个broker。

192.168.20.40

图片

192.168.20.43


图片

图片

结束MQ双主双从部署

----------------------end---------------------

推荐阅读:


猜你喜欢

转载自blog.51cto.com/15127516/2657632
今日推荐