rocketmq 同步雙寫

配置域名

192.168.241.101 paascloud-rocketmq-001
192.168.241.102 paascloud-rocketmq-002

下載

wget http://ftp.jaist.ac.jp/pub/apache/rocketmq/4.2.0/rocketmq-all-4.2.0-bin-release.zip
scp rocketmq-all-4.2.0-bin-release.zip root@192.168.241.101:/root

解壓

unzip rocketmq-all-4.2.0-bin-release.zip -d /usr/local/rocketmq

配置環境變量

vim /etc/profile
export ROCKETMQ_HOME=/usr/local/rocketmq
export PATH=$PATH::$ROCKETMQ_HOME/bin
# source /etc/profile

修改配置

broker-a.properties

brokerClusterName=paascloud-rocketmq-cluster
brokerName=broker-a
brokerId=0
namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10911
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathRootDir=/usr/local/rocketmq/data/master/store
storePathCommitLog=/usr/local/rocketmq/data/master/store/commitlog
maxMessageSize=65536
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
checkTransactionMessageEnable=false
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
brokerRole=SYNC_MASTER
flushDiskType=SYNC_FLUSH

broker-a-s.properties

brokerClusterName=paascloud-rocketmq-cluster
brokerName=broker-a
brokerId=1
namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10921
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathRootDir=/usr/local/rocketmq/data/slave/store
storePathCommitLog=/usr/local/rocketmq/data/slave/store/commitlog
maxMessageSize=65536
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
checkTransactionMessageEnable=false
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
brokerRole=SLAVE
flushDiskType=SYNC_FLUSH

broker-b.properties

brokerClusterName=paascloud-rocketmq-cluster
brokerName=broker-b
brokerId=0
namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10911
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathRootDir=/usr/local/rocketmq/data/master/store
storePathCommitLog=/usr/local/rocketmq/data/master/store/commitlog
maxMessageSize=65536
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
checkTransactionMessageEnable=false
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
brokerRole=SYNC_MASTER
flushDiskType=SYNC_FLUSH

broker-b-s.properties

brokerClusterName=paascloud-rocketmq-cluster
brokerName=broker-b
brokerId=1
namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10921
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathRootDir=/usr/local/rocketmq/data/slave/store
storePathCommitLog=/usr/local/rocketmq/data/slave/store/commitlog
maxMessageSize=65536
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
checkTransactionMessageEnable=false
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
brokerRole=SLAVE
flushDiskType=SYNC_FLUSH

創建存儲&日誌文件

# mkdir -p /usr/local/rocketmq/data/master/store/commitlog
# mkdir -p /usr/local/rocketmq/data/slave/store/commitlog
# mkdir -p /usr/local/rocketmq/data/master/store/consumequeue
# mkdir -p /usr/local/rocketmq/data/slave/store/consumequeue
# mkdir -p /usr/local/rocketmq/data/master/store/index
# mkdir -p /usr/local/rocketmq/data/slave/store/index
# mkdir -p /usr/local/rocketmq/logs

修改日誌配置文件

cd /usr/local/rocketmq/conf && sed -i 's#${user.home}#/usr/local/rocketmq#g' *.xml

修改啓動腳本參數

vim /usr/local/rocketmq/bin/runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m"
vim /usr/local/rocketmq/bin/runserver.sh
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

啓動服務

  1. 啓動NameServer A 192.168.241.101
 nohup sh /usr/local/rocketmq/bin/mqnamesrv &
  1. 啓動NameServer A 192.168.241.101
 nohup sh /usr/local/rocketmq/bin/mqnamesrv &
  1. 啓動BrokerServer A-master 192.168.241.101
nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a.properties&
  1. 啓動BrokerServer A-slave 192.168.241.101
nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a-s.properties&
  1. 啓動BrokerServer B-master 192.168.241.102
nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-b.properties&
  1. 啓動BrokerServer B-slave 192.168.241.102
nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-b-s.properties&

是否啓動成功

這裏寫圖片描述

# netstat -ntlp
# jps
# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.log
# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log

查看集羣監控狀態

# sh /usr/local/rocketmq/bin/mqadmin clusterlist -n 192.168.241.101:9876

這裏寫圖片描述

停止服務

# sh /usr/local/rocketmq/bin/mqshutdown namesrv
# sh /usr/local/rocketmq/bin/mqshutdown broker

清理數據

# rm -rf /usr/local/rocketmq/data/master
# rm -rf /usr/local/rocketmq/data/slave
# mkdir -p /usr/local/rocketmq/data/master/store/commitlog
# mkdir -p /usr/local/rocketmq/data/slave/store/commitlog
# mkdir -p /usr/local/rocketmq/data/master/store/consumequeue
# mkdir -p /usr/local/rocketmq/data/slave/store/consumequeue
# mkdir -p /usr/local/rocketmq/data/master/store/index
# mkdir -p /usr/local/rocketmq/data/slave/store/index

rocketmq-console-ng

rocketmq-console-ng.bat

@echo off  
java -jar rocketmq-console-ng-1.0.0.jar --server.port=12581 --rocketmq.config.namesrvAddr=192.168.241.101:9876;192.168.241.102:9876;  
@pause

效果圖
這裏寫圖片描述

參考文章

https://www.jianshu.com/p/9d4e0ff358c6

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章