分布式消息队列RocketMQ
二、 RocketMQ的安装与启动
2.7)集群搭建实践
2.7.1) 集群架构
这里要搭建一个双主双从异步复制的Broker集群。为了方便,这里使用了两台主机来完成集群的搭建,这两台主机的功能与broker角色分配如下表。
序号 | 主机IP | 功能 | BROKER角色 |
---|---|---|---|
1 | 127.0.0.1 | NameServer + Broker | Master1 + Slave2 |
2 | 127.0.0.2 | NameServer + Broker | Master2 + Slave1 |
2.7.2) 修改配置文件
登录第一台主机,配置文件位置:要修改的配置文件在rocketMQ解压目录的conf/2m-2s-async目录中
修改broker-a.properties,将该配置文件内容修改为如下:
# 指定整个broker集群的名称,或者说是RocketMQ集群的名称
brokerClusterName=DefaultCluster
# 指定master-slave集群的名称。一个RocketMQ集群可以包含多个master-slave集群
brokerName=broker-a
# master的brokerId为0
brokerId=0
# 指定删除消息存储过期文件的时间为凌晨4点
deleteWhen=04
# 指定未发生更新的消息存储文件的保留时长为48小时,48小时后过期,将会被删除
fileReservedTime=48
# 指定当前broker为异步复制master
brokerRole=ASYNC_MASTER
# 指定刷盘策略为异步刷盘
flushDiskType=ASYNC_FLUSH
# 指定Name Server的地址
namesrvAddr=127.0.0.1:9876;127.0.0.2:9876
修改broker-b-s.properties,将该配置文件内容修改为如下:
brokerClusterName=DefaultCluster
# 指定这是另外一个master-slave集群
brokerName=broker-b
# slave的brokerId为非0
brokerId=1
deleteWhen=04
fileReservedTime=48
# 指定当前broker为slave
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH
namesrvAddr=127.0.0.1:9876;127.0