Dry goods--RocketMQ dual master dual slave

image

Original link: https://blog.51cto.com/4259679


The cluster consists of two name server instances and four broker instances

image

Two services deploy MQ at the same time, please refer to Dry Goods-Deploy RocketMQ for specific construction


1. 192.168.20.40 server

[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

Modify the configuration file

[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

image

[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]# 

image


2. 192.168.20.430 server

[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/

Modify the configuration file

[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

image

[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

image

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

image

192.168.20.43


image

image

结束MQ双主双从部署

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

Recommended reading:


Guess you like

Origin blog.51cto.com/15127516/2657632