rocketmq集群搭建2(代码片段)

nathanielsv nathanielsv     2022-11-30     406

关键词:

1.修改配置配件

本次搭的集群是双主双从的同步模式

 

 双主双从的配置文件再上图所示的里面

服务器:192.168.100.128内需配置(下图中的:broker-a.properties和broker-b-s.properties) 

 

 broker-a.properties中的配置文件如下

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
#0 表示 Master,>0 表示 Slave
brokerId=0
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=10911
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=SYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

broker-b-s.properties中的配置文件如下

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-b
#0 表示 Master,>0 表示 Slave
brokerId=1
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=11011
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SLAVE
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

服务器:192.168.100.129内需配置(下图中的:broker-b.properties和broker-a-s.properties) 

broker-b.properties中的配置文件如下

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-b
#0 表示 Master,>0 表示 Slave
brokerId=0
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=10911
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=SYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

broker-a-s.properties中的配置文件如下

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
#0 表示 Master,>0 表示 Slave
brokerId=1
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=11011
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SLAVE
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128

服务启动

1.启动nameserver集群

nohup sh mqnamesrv &

2.启动broker集群

在192.168.100.128上启动master1和slave2

 a.启动master1

nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a.properties &

b.启动slave2

nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-b-s.properties &

在192.168.100.129上启动master2和slave1

a.启动master2

sh mqbroker -c /usr/local/rocketmq/rocketmq-all-4.8.0-bin-release/conf/2m-2s-sync/broker-b.properties &

b.启动slave1

nohup sh mqbroker -c /usr/local/rocketmq/rocketmq-all-4.8.0-bin-release/conf/2m-2s-sync/broker-a-s.properties &

 

 

 

自此一个双主双从的rocketmq集群就已经配置完成

 

rocketmq2主2从集群搭建(代码片段)

安装环境   jdk1.7   alibaba-rocketmq-3.2.6.tar.gz  VM虚拟机redhat6.5-x64:192.168.1.201  192.168.1.202 192.168.1.203  192.168.1.204  Xshell4部署方案IP主机名用途Broker角色192.168.1.201b 查看详情

rocketmq-双主双从集群+dashborad搭建(云服务器)(代码片段)

文章目录一、理论垫基础1.NameServer集群2.Producer集群3.Consumer集群4.Broker集群4.1节点间数据同步以及消息的持久化4.2Broker的集群模式4.2.1、单Master模式4.2.2、多Master模式4.2.3、多Master多Slave模式-异步复制4.2.4、多Master多Slave模式-同步双... 查看详情

rocketmq集群搭建及安装rocketmq-console(代码片段)

 RocketMQ集群搭建-4.2.0版本https://juejin.im/post/5a911ea16fb9a0633f0e36a1直接在官网下载的二进制包,编译容易出现问题启动broker,报错:rocketmqCannotallocatememory可根据机器内存大小,配置jvm参数http://www.cnblogs.com/quchunhui/p/8350904.html&n 查看详情

rocketmq集群搭建(代码片段)

1、下载rocketmq包2、解压zip包3、编译部署4、配置环境变量5、启动NameServer(每台机器都要启动)6、启动broker(每台机器都要)7、测试验证  1、下载rocketmq包  下载地址:http://rocketmq.apache.org/dowloading/releases/  我用的版... 查看详情

原创《从0开始学rocketmq》—集群搭建(代码片段)

...服务器,搭建出一个双master双slave、无单点故障的高可用RocketMQ集群。此处假设两台服务器的物理IP分别为:192.168.50.1、192.168.50.2。内容目录1.启动NameServer集群2.启动Broker集群3.RocketMQ可视化管理控制台:rocketmq-console4.集群测试 ... 查看详情

rocketmq集群搭建--双master方案(代码片段)

安装环境   jdk1.7   alibaba-rocketmq-3.2.6.tar.gz  VM虚拟机redhat6.5-x64:192.168.1.201  192.168.1.202  Xshell4部署方案序号IP角色模式1192.168.1.201nameServer1,brokerServer1Master12192.168.1.202nameS 查看详情

rocketmq集群的搭建(代码片段)

一、环境hosts192.168.200.136nodeA192.168.200.139nodeB192.168.200.140nodeC192.168.200.141nodeD案例版本rocketmq:4.5.1jdk:1.8在nodeA上安装好rocketmqRocketMQ安装配置免密钥登入cd/root/ls-acd.ssh/ls#生成密钥(四台机子都要)ssh-keygen#生成三个文件 查看详情

16rocketmq集群一主一从同步搭建(代码片段)

基于前面的单机模式,我们VM里面克隆一下系统;192.168.0.110机器作为主节点192.168.0.103机器作为从节点配置项要点:brokerClusterName集群名称一样;brokerName同一组主从节点名称一样;brokerId为0表示Master主节点,... 查看详情

rocketmq搭建全过程(代码片段)

RocketMQ下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.3.0/rocketmq-all-4.3.0-bin-release.zip环境规划:名称IP配置NameServer0110.2.42.812C4GNameServer0210.2.42.822C4GBroker-aMaster10.2.42.831C2GBroker-aSlave10.2.42.841C2GBroker-bMaster10.2.42.851C2GBroker-bSlave10.2.42... 查看详情

docker部署rocketmq集群(代码片段)

最近搭建RocketMQ踩了一些坑,更新下第一步,创建目录mkdir-p/opt/rocketmq/logs/nameserver-amkdir-p/opt/rocketmq/logs/nameserver-bmkdir-p/opt/rocketmq/store/nameserver-amkdir-p/opt/rocketmq/store/nameserver-bmkd 查看详情

docker环境下使用docker-compose一键式搭建rocketmq(4.5.0版本)集群及其管理工具(代码片段)

...本节我们主要讲解下如何使用docker-compose一键式搭建一套RocketMQ的消息中间键集群服务,在项目开发中kafka与rockerMQ应该是我们最常用的消息中间键,为了最大化的利用系统资源,便于研究测试,docker容器搭建这些... 查看详情

17rocketmq集群双主双从同步搭建(代码片段)

基于前面一主一从同步搭建我们企业级开发,一般采用的是双主双从同步,以及异步刷盘;同步消息保证消息不丢失,异步刷盘提高吞吐量;我们VM里再克隆两台机器;192.168.0.110机器作为m1主节点192.168.0.103... 查看详情

17rocketmq集群双主双从同步搭建(代码片段)

基于前面一主一从同步搭建我们企业级开发,一般采用的是双主双从同步,以及异步刷盘;同步消息保证消息不丢失,异步刷盘提高吞吐量;我们VM里再克隆两台机器;192.168.0.110机器作为m1主节点192.168.0.103... 查看详情

rocketmq02_复制刷盘broker常用模式磁盘阵列集群搭建(代码片段)

...的安装包上传到Linux、将其解压到/opt/apps目录下面[root@rocketmqtools]#unzi 查看详情

rocketmq02_复制刷盘broker常用模式磁盘阵列集群搭建(代码片段)

...的安装包上传到Linux、将其解压到/opt/apps目录下面[root@rocketmqtools]#unzi 查看详情

docker环境下使用docker-compose一键式搭建rocketmq(4.5.0版本)集群及其管理工具(外网版)(代码片段)

...博客内容,使用docker-compose一键式搭建docker环境下的RocketMQ集群及其管理工具,实现rocketmq在docker环境容器外部访问。特别说明,内网版的RocketMQ集群只能实现docker环境内部访问,并不适用于测试使用,本节内容... 查看详情

rocketmq那些事儿之本地调试环境搭建(代码片段)

上一篇文章中我们已经介绍过rocketmq的集群环境搭建,然而在源码的学习中我们还需要进行本地的调试和问题的定位查找,毕竟还是在本地方便些,今天就说一说如何进行源码的本地调试下载编译对于rocketmq源码部分的学习,我... 查看详情

rocketmq集群的搭建(代码片段)

...deA192.168.200.139nodeB192.168.200.140nodeC192.168.200.141nodeD案例版本rocketmq:4.5.1jdk:1.8在nodeA上安装好rocketmqRocketMQ安装配置免密钥登入cd/root/ls-acd.ssh/ls#生成密钥(四台机子都要)ssh-keygen#生成三个文件id_rsaid_rsa.pubknown_hosts#拷贝公钥(四台机子都... 查看详情