Uploaded by 柴粒岗

Rocketmq Dledger集群搭建

advertisement
Rockermq Dledger集群搭建
RocketMQ-on-DLedger Group 是指⼀组「相同名称的 Broker」,⾄少需要 3 个节点,通过
「Raft」 ⾃动选举出⼀个 Leader,其余节点作为 Follower,并在 Leader 和 Follower 之间复
制数据以保证⾼可⽤。
RocketMQ-on-DLedger Group 能⾃动容灾切换,并保证数据⼀致。
RocketMQ-on-DLedger Group 是可以⽔平扩展的,也即可以部署任意多个 RocketMQ-onDLedger Group 同时对外提供服务。
1. 配置 RocketMQ-on-DLedger Group
上⾯说到,每组 RocketMQ-on-DLedger 需要⾄少3台机器,现在我们在原来的基础上还需要
添加2台机器,每组添加⼀台。
进⼊dledger配置⽂件⽬录下看⼀眼:
cd rocketmq/conf/dledger && ll
-rw-r--r--@ 1 root
root
1.1K 12
4
2020 broker-n0.conf
-rw-r--r--@ 1 root
root
1.1K 12
4
2020 broker-n1.conf
-rw-r--r--@ 1 root
root
1.1K 12
4
2020 broker-n2.conf
「 broker-a 的 n0 节点配置」
brokerClusterName = RaftCluster
brokerName=broker-a
listenPort=30911
namesrvAddr=192.168.2.170:9876;192.168.2.171:9876;192.168.2.172:9876
storePathRootDir=/tmp/rmqstore/broker-a
storePathCommitLog=/tmp/rmqstore/broker-b/commitlog
enableDLegerCommitLog=true
dLegerGroup=broker-a
dLegerPeers=n0-192.168.2.170:40911;n1-192.168.2.172:40911;n2192.168.2.174:40911
## must be unique
dLegerSelfId=n0
sendMessageThreadPoolNums=4
broker-a的n1、n2节点配置类似,注意修改 dLegerSelfId 配置项。
「 broker-b 的 n0 节点配置」
brokerClusterName = RaftCluster
brokerName=broker-b
listenPort=30911
namesrvAddr=192.168.2.170:9876;192.168.2.171:9876;192.168.2.172:9876
storePathRootDir=/tmp/rmqstore/broker-b
storePathCommitLog=/tmp/rmqstore/broker-b/commitlog
enableDLegerCommitLog=true
dLegerGroup=broker-b
dLegerPeers=n0-192.168.2.171:40911;n1-192.168.2.173:40911;n2192.168.2.175:40911
## must be unique
dLegerSelfId=n0
sendMessageThreadPoolNums=4
全部配置好以后:
4. 启动集群
4.1 启动nameserver(192.168.2.170,192.168.2.171,192.168.2.172)
nohup sh rocketmq/bin/runserver.sh
org.apache.rocketmq.namesrv.NamesrvStartup > rocketmq/bin/namesrv.log
2>&1 &
4.2 启动broker
启动命令:
nohup sh rocketmq/bin/runbroker.sh
org.apache.rocketmq.broker.BrokerStartup -c
rocketmq/conf/dledger/broker-n0.conf > rocketmq/bin/broker.log 2>&1 &
注意配置⽂件与主机的对应。
Download