1.第一步
需要兩臺虛擬機,然後其次都要安裝rocket mq
wget https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.4.0/rocketmq-all-4.4.0-bin-release.zip
需要在hosts 去配置
120.27.69.221 rocketmq-nameserver1
47.105.129.23 rocketmq-nameserver2
47.105.129.23 lyc01
120.27.69.221 lyc02(需要修改主機名)
2.第二步
解壓後我們建立一個虛的引用(不在源文件上修改)
ln -s rocketmq-4.4.0 rocketmq 建立虛應用
同時在rocketmq 目錄下 建2個目錄 store(根據個人興趣),logs
然後在store建三個目錄 index ,commitlog,consumequeue
3.第三步
我們修改mq下的conf/2m-noslave目錄裏的boker-a.properties,還有boker-b.properties
terName=rocketmq-cluster
#broker名字,注意此處不同的配置文件填寫的不一樣,如果是broker-a.properties 這裏就寫broker-a,broker-b.properties 這裏就寫broker-b,以此類推
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
#刪除文件時間點,默認凌晨 0點
deleteWhen=00
#文件保留時間,默認 48 小時
fileReservedTime=120
#commitLog每個文件的大小默認1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每個文件默認存30W條,根據業務情況調整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#檢測物理文件磁盤空間
diskMaxUsedSpaceRatio=88
#存儲路徑
storePathRootDir=/usr/local/soft/rocketmq/store
#commitLog 存儲路徑
storePathCommitLog=/usr/local/soft/rocketmq/store/commitlog
#消費隊列存儲路徑存儲路徑
storePathConsumeQueue=/usr/local/soft/rocketmq/store/consumequeue
#消息索引存儲路徑
storePathIndex=/usr/local/soft/rocketmq/store/index
#checkpoint 文件存儲路徑
#storeCheckpoint=/usr/local/rocketmq/data/checkpoint
#abort 文件存儲路徑
#abortFile=/usr/local/rocketmq/data/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
#flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 異步複製Master
#- SYNC_MASTER 同步雙寫Master
#- SLAVE
brokerRole=ASYNC_MASTER
#刷盤方式
#- ASYNC_FLUSH 異步刷盤
#- SYNC_FLUSH 同步刷盤
flushDiskType=ASYNC_FLUSH
#checkTransactionMessageEnable=false
#發消息線程池數量
#sendMessageThreadPoolNums=128
4.第四步(兩臺機器)
修改runbroker.sh runserver.sh 修改對應的的-Xms -Xmx -Xmn文件(根據自己內存來設置)
執行這個命名
cd /usr/local/soft/rocketmq/conf && sed -i 's#${user.home}#/usr/local/soft/rocketmq#g' *.xml
5.第五步(兩臺機器)
啓動 runserver.sh
nohup sh mqnamesrv &
啓動runbroker.sh
nohup sh mqbroker -c /usr/local/soft/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2>&1 &