标签:之间 csdn 使用 path root lazy 连接 相同 targe
作为测试环境,我们使用两台虚拟机来部署双主双从环境,具体结构如下:
整个集群由两个 name server 实例和四个 broker 实例组成
name server:
broker A 主从:
broker B 主从:
首先参照《RocketMQ (一) 安装》笔记,在两台虚拟机上安装 Rocketmq。或在一台虚拟机上装好后进行克隆。
在一台服务器上启动两个 broker 实例,需要为不同实例设置单独的数据存储目录。
为了方便起见,我们在两台服务器上都创建这四个实例所需要的的目录。
mkdir /usr/local/rocketmq/store/
mkdir /usr/local/rocketmq/store/broker-a
mkdir /usr/local/rocketmq/store/broker-a/commitlog
mkdir /usr/local/rocketmq/store/broker-b
mkdir /usr/local/rocketmq/store/broker-b/commitlog
mkdir /usr/local/rocketmq/store/broker-as
mkdir /usr/local/rocketmq/store/broker-as/commitlog
mkdir /usr/local/rocketmq/store/broker-bs
mkdir /usr/local/rocketmq/store/broker-bs/commitlog
在 rocketmq/conf
目录下提供了四种集群方案的配置样例
这里我们选择双主双从同步复制方案。
在服务器1修改样例配置文件:rocketmq/conf/2m-2s-sync/broker-a.properties
在样例配置文件中,添加三项配置:
listenPort
:我们在一台服务器上要运行两个broker实例,所以两个实例的端口要有所区分。这里broker-a主服务器的端口使用默认的10911。storePathRootDir
:数据存储目录storePathCommitLog
:提交日志存储目录brokerClusterName=DefaultCluster
brokerName=broker-a
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=SYNC_MASTER
flushDiskType=ASYNC_FLUSH
listenPort=10911
storePathRootDir=/usr/local/rocketmq/store/broker-a
storePathCommitLog=/usr/local/rocketmq/store/broker-a/commitlog
在服务器2修改样例配置文件:rocketmq/conf/2m-2s-sync/broker-a-s.properties
在样例配置文件中,添加三项配置:
listenPort
:我们在一台服务器上要运行两个broker实例,所以两个实例的端口要有所区分。这里broker-a slave从服务器的端口使用11911。storePathRootDir
:数据存储目录storePathCommitLog
:提交日志存储目录brokerClusterName=DefaultCluster
brokerName=broker-a
brokerId=1
deleteWhen=04
fileReservedTime=48
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH
listenPort=11911
storePathRootDir=/usr/local/rocketmq/store/broker-as
storePathCommitLog=/usr/local/rocketmq/store/broker-as/commitlog
在服务器2修改样例配置文件:rocketmq/conf/2m-2s-sync/broker-b.properties
在样例配置文件中,添加三项配置:
listenPort
:我们在一台服务器上要运行两个broker实例,所以两个实例的端口要有所区分。这里broker-b主服务器的端口使用默认的10911。storePathRootDir
:数据存储目录storePathCommitLog
:提交日志存储目录brokerClusterName=DefaultCluster
brokerName=broker-b
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=SYNC_MASTER
flushDiskType=ASYNC_FLUSH
listenPort=10911
storePathRootDir=/usr/local/rocketmq/store/broker-b
storePathCommitLog=/usr/local/rocketmq/store/broker-b/commitlog
在服务器1修改样例配置文件:rocketmq/conf/2m-2s-sync/broker-b-s.properties
在样例配置文件中,添加三项配置:
listenPort
:我们在一台服务器上要运行两个broker实例,所以两个实例的端口要有所区分。这里broker-b slave从服务器的端口使用11911。storePathRootDir
:数据存储目录storePathCommitLog
:提交日志存储目录brokerClusterName=DefaultCluster
brokerName=broker-b
brokerId=1
deleteWhen=04
fileReservedTime=48
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH
listenPort=11911
storePathRootDir=/usr/local/rocketmq/store/broker-bs
storePathCommitLog=/usr/local/rocketmq/store/broker-bs/commitlog
brokerClusterName
相同。集群名称相同的服务器共同组成服务集群 。brokerName
与主服务器相同。brokerId
为0是主服务器。从服务器的值是非零值,例如如果有四个从服务器,他们的 brokerId
应该是 1,2,3,4。brokerRole
的值为 SYNC_MASTER
是同步复制的主服务器。如果是 ASYNC_MASTER
则为异步复制的主服务器。在两台服务器上启动两个 name server,它们不用做任何集群的配置,都是作为独立服务运行,它们之间也不会进行数据复制。
所有broker服务启动后,要同时连接这两个 name server,向两个 name server 进行注册。
在两台服务器上都启动 name server:
nohup sh mqnamesrv &
在服务器1上启动 broker a 主服务器:
参数说明:
nohup sh mqbroker -n ‘192.168.64.151:9876;192.168.64.152:9876‘ -c $ROCKETMQ_HOME/conf/2m-2s-sync/broker-a.properties &
在服务器2上启动 broker a 从服务器:
nohup sh mqbroker -n ‘192.168.64.151:9876;192.168.64.152:9876‘ -c $ROCKETMQ_HOME/conf/2m-2s-sync/broker-a-s.properties &
在服务器2上启动 broker b 主服务器:
nohup sh mqbroker -n ‘192.168.64.151:9876;192.168.64.152:9876‘ -c $ROCKETMQ_HOME/conf/2m-2s-sync/broker-b.properties &
在服务器1上启动 broker b 从服务器:
nohup sh mqbroker -n ‘192.168.64.151:9876;192.168.64.152:9876‘ -c $ROCKETMQ_HOME/conf/2m-2s-sync/broker-b-s.properties &
在两台服务器上分别查看java进程,确认两台服务器上是否各启动了三个java进程,分别运行name server和两个broker。
## 查看 java 进程
jps
---------------------
12081 NamesrvStartup
15745 BrokerStartup
15595 BrokerStartup
16655 Jps
## 进入 rocketmq-console 项目打包文件目录
cd /usr/local/rocketmq/RocketMQ-Externals/rocketmq-console/target/
## 启动管理界面
nohup java -jar rocketmq-console-ng-1.0.1.jar --server.port=8080 --rocketmq.config.namesrvAddr=‘192.168.64.151:9876;192.168.64.152:9876‘ &
查看集群状态:
标签:之间 csdn 使用 path root lazy 连接 相同 targe
原文地址:https://www.cnblogs.com/zpKang/p/13717072.html