16 Rocketmq集群一主一从同步搭建
Posted java1234_小锋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了16 Rocketmq集群一主一从同步搭建相关的知识,希望对你有一定的参考价值。
基于前面的单机模式,我们VM里面克隆一下系统;
192.168.0.110 机器 作为主节点
192.168.0.103 机器作为从节点
配置项要点:
-
brokerClusterName集群名称一样;
-
brokerName同一组主从节点名称一样;
-
brokerId为0表示Master主节点,非0表示Slave从节点;
所以,从节点机器,我们修改conf
下的2m-2s-sync
配置文件broker-a-s.properties
从原来的broker-a.properties
复制一份内容到broker-a-s.properties
,然后修改三个地方:
#0 表示 Master,>0 表示 Slave
brokerId=1
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SLAVE
namesrvAddr=192.168.0.110:9876;192.168.0.103:9876;
我们先把两台机器的nameserver启动起来:
192.168.0.110 主机器:
nohup sh mqnamesrv &
192.168.0.103 从机器
nohup sh mqnamesrv &
再把两台机器的broker启动起来:
192.168.0.110 主机器:
nohup sh mqbroker -c /home/mq/rocketmq/conf/2m-2s-sync/broker-a.properties &
192.168.0.103 从机器
nohup sh mqbroker -c /home/mq/rocketmq/conf/2m-2s-sync/broker-a-s.properties &
可视化控制台项目namesrvAddr配置改下:
启动控制台项目:
项目代码,生产端和消费端name-server都改下;
启动测试:
我们发现,消费消息都是从主节点broker消费;
我们模拟下,让主节点broker挂掉;
sh mqshutdown broker
启动项目生产端发送消息报错:
Exception in thread "main" org.springframework.messaging.MessagingException: No route info of this topic: java1234-rocketmq
消费端没有问题,可以继续订阅;
所有这种一主一从模式还是有问题;我们继续后面双主双从;
说明:这个是锋哥的RocketMQ备课笔记,等备课完,会发布配套的视频教程,如有需要,可以先加锋哥WX:java1239 欢迎白嫖
微信搜一搜公众号【java1234】关注这个放荡不羁的程序员,关注后回复【资料】有我准备的一线大厂笔试面试资料以及简历模板。
以上是关于16 Rocketmq集群一主一从同步搭建的主要内容,如果未能解决你的问题,请参考以下文章