Rocketmq-集群部署(Master-Slave)

  1. 使用中间件版本:rocketmq-4.5.2
  2. 环境介绍及角色划分
    这里采用俩台机器做集群的搭建,172.0.0.1 以及 172.0.0.2
    服务器172.0.0.1 做为a-masterb-slave
    服务器172.0.0.2 做为b-mastera-slave
    角色划分图
  3. 配置讲解图(主要说明区分点)
    配置讲解图
  4. 配置rocketmq环境变量,这里也说明一下需要在部署rocketmq的前一步安装好jdk的环境变量
    vim ~/.bash_profile (俩台机器都需要配置)
export JAVA_HOME=/data/soft/jdk1.8.0_311
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
export JRE_HOME=${JAVA_HOME}/jre

export ROCKETMQ_HOME=/data/soft/rocketmq-4.5.2
export PATH=$JAVA_HOME/bin:$ROCKETMQ_HOME/bin:$PATH
  1. 创建数据存储目录(用于在接下来的配置文件中进行rocketmq的数据存储,需要在俩台机器上都执行,目录可根据实际情况自定义),由于同一台机器上既有master又有slave节点所以需要创建不同目录。
mkdir -p /data/soft/dataMQ/stores
mkdir -p /data/soft/dataMQ/stores/commitlogs
mkdir -p /data/soft/dataMQ/stores/consumequeues
mkdir -p /data/soft/dataMQ/stores/indexs
mkdir -p /data/soft/dataMQ/stores/checkpoints
mkdir -p /data/soft/dataMQ/stores/aborts

mkdir -p /data/soft/dataMQ/store
mkdir -p /data/soft/dataMQ/store/commitlogs
mkdir -p /data/soft/dataMQ/store/consumequeues
mkdir -p /data/soft/dataMQ/store/indexs
mkdir -p /data/soft/dataMQ/store/checkpoints
mkdir -p /data/soft/dataMQ/store/aborts
  1. 接下来修改配置文件,首先我们先修改172.0.0.1中的配置文件,共需要修改俩个配置文件分别是
    rocketmq-4.5.2/conf/2m-2s-async/broker-a.properties
#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
#0表示Master >0表示Slave
brokerId=0
#nameserver地址 分号分割 根据/etc/hosts的映射查找IP
namesrvAddr=172.0.0.1:9876;172.0.0.2:9876
#在发送消息时,自动创建服务器不存在的Topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许broker自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许Broker自动创建队列组,建议线下允许,线上关闭
autoCreateSubscriptionGroup=true
#Broker对外服务的监听端口
listenPort=10911
#删除文件时间 默认凌晨4点
deleteWhen=04
#文件保留时间 默认48小时
fileReservedTime=48
#commitLog每个文件的默认大小1G
mapedFileSizeCommitLog=1073741824
#consumeQueue默认存30w条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#储存路径
storePathRootDir=/data/soft/dataMQ/store
#CommitLog存储路径
storePathCommitLog=/data/soft/dataMQ/store/commitlog
#消费队列储存路径
storePathConsumeQueue=/data/soft/dataMQ/store/consumequeue
#消息索引存储路径
storePathIndex=/bonc/data/dataMQ/store/index
#checkpoint文件存储路径
storeCheckPoint=/data/data/dataMQ/store/checkpoint
#abort文件存储路径
abortFile=/bonc/data/dataMQ/store/abort
#限制的消息大小
maxMessageSize=65536
#Broker的角色 -SYNC_MASTER同步复制Master -ASYNC_MASTER异步复制MASTER
brokerRole=SYNC_MASTER
#刷盘方式 异步和同步
flushDiskType=ASYNC_FLUSH

rocketmq-4.5.2/conf/2m-2s-async/broker-b-s.properties

brokerClusterName=rocketmq-cluster
brokerName=broker-b
brokerId=1
namesrvAddr=172.0.0.1:9876;172.0.0.2:9876
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=11011
deleteWhen=04
fileReservedTime=48
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
diskMaxUsedSpaceRatio=88
storePathRootDir=/data/soft/dataMQ/stores
storePathCommitLog=/data/soft/dataMQ/stores/commitlogs
storePathConsumeQueue=/data/soft/dataMQ/stores/consumequeues
storePathIndex=/data/soft/dataMQ/stores/indexs
storeCheckPoint=/data/soft/dataMQ/stores/checkpoints
abortFile=/data/soft/dataMQ/stores/aborts
maxMessageSize=65536
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH 
  1. 接下来修改配置文件,首先我们先修改172.0.0.2中的配置文件,共需要修改俩个配置文件分别是
    rocketmq-4.5.2/conf/2m-2s-async/broker-b.properties
#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-b
#0表示Master >0表示Slave
brokerId=0
#nameserver地址 分号分割 根据/etc/hosts的映射查找IP
namesrvAddr=172.0.0.1:9876;172.0.0.2:9876
#在发送消息时,自动创建服务器不存在的Topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许broker自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许Broker自动创建队列组,建议线下允许,线上关闭
autoCreateSubscriptionGroup=true
#Broker对外服务的监听端口
listenPort=10911
#删除文件时间 默认凌晨4点
deleteWhen=04
#文件保留时间 默认48小时
fileReservedTime=48
#commitLog每个文件的默认大小1G
mapedFileSizeCommitLog=1073741824
#consumeQueue默认存30w条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#储存路径
storePathRootDir=/data/soft/dataMQ/store
#CommitLog存储路径
storePathCommitLog=/data/soft/dataMQ/store/commitlog
#消费队列储存路径
storePathConsumeQueue=/data/soft/dataMQ/store/consumequeue
#消息索引存储路径
storePathIndex=/data/soft/dataMQ/store/index
#checkpoint文件存储路径
storeCheckPoint=/data/soft/dataMQ/store/checkpoint
#abort文件存储路径
abortFile=/data/soft/dataMQ/store/abort
#限制的消息大小
maxMessageSize=65536
#Broker的角色 -SYNC_MASTER同步复制Master -ASYNC_MASTER异步复制MASTER
brokerRole=SYNC_MASTER
#刷盘方式 异步和同步
flushDiskType=ASYNC_FLUSH

rocketmq-4.5.2/conf/2m-2s-async/broker-a-s.properties

brokerClusterName=rocketmq-cluster
brokerName=broker-a
brokerId=1
namesrvAddr=172.0.0.1:9876;172.0.0.2:9876
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=11011
deleteWhen=04
fileReservedTime=48
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
diskMaxUsedSpaceRatio=88
storePathRootDir=/data/soft/dataMQ/stores
storePathCommitLog=/data/soft/dataMQ/stores/commitlogs
storePathConsumeQueue=/data/soft/dataMQ/stores/consumequeues
storePathIndex=/data/soft/dataMQ/stores/indexs
storeCheckPoint=/data/soft/dataMQ/stores/checkpoints
abortFile=/data/soft/dataMQ/stores/aborts
maxMessageSize=65536
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH
  1. 修改启动文件(俩台机器都需要修改)
    rocketmq-4.5.2/bin/runserver.sh
    在这里插入图片描述
    rocketmq-4.5.2/bin/runbroker.sh
    在这里插入图片描述
  2. 按照从上到下的顺序启动rocketmq集群
    启动NamesrvStartup需要在俩台机器上执行
nohup /data/soft/rocketmq-4.5.2/bin/mqnamesrv > /data/soft/rocketmq-4.5.2/logs/mqnamesrv.log 2>&1 &

启动BrokerMaster(A)节点(这里要注意引用的配置文件)

nohup /data/soft/rocketmq-4.5.2/bin/mqbroker -c /data/soft/rocketmq-4.5.2/conf/2m-2s-async/broker-a.properties > /data/soft/rocketmq-4.5.2/logs/broker-a.log 2>&1 &

启动BrokerMaster(B)节点(这里要注意引用的配置文件)

nohup /data/soft/rocketmq-4.5.2/bin/mqbroker -c /data/soft/rocketmq-4.5.2/conf/2m-2s-async/broker-b.properties > /data/soft/rocketmq-4.5.2/logs/broker-b.log 2>&1 &

启动BrokerSlave(A)节点(这里要注意引用的配置文件)

nohup /data/soft/rocketmq-4.5.2/bin/mqbroker -c /data/soft/rocketmq-4.5.2/conf/2m-2s-async/broker-a-s.properties > /data/soft/rocketmq-4.5.2/logs/broker-as.log 2>&1 &

启动BrokerSlave(B)节点(这里要注意引用的配置文件)

nohup /data/soft/rocketmq-4.5.2/bin/mqbroker -c /data/soft/rocketmq-4.5.2/conf/2m-2s-async/broker-b-s.properties > /data/soft/rocketmq-4.5.2/logs/broker-bs.log 2>&1 &
  1. 查看节点启动状态(俩台机器一致)
    在这里插入图片描述
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值