rocketmq安裝啟動步驟教程
阿新 • • 發佈:2018-11-10
-
第一步:上傳alibaba-rocketmq-3.2.6.tar.gz到liunx,並解壓到/usr/local下(也可以放到其他檔案加下)
第二步:解壓 tar -zxvf alibaba-rocketmq-3.2.6.tar.gz -C /usr/local
第三步:建立軟連線 ln -s alibaba-rocketmq rocketmq
第四步:切換到軟連線rocketmq下面建立幾個資料夾
-
mkdir /usr/local/rocketmq/store mkdir /usr/local/rocketmq/store/commitlog mkdir /usr/local/rocketmq/store/consumequeue mkdir /usr/local/rocketmq/store/index
-
第五步:修改配置檔案vim /usr/local/rocketmq/conf/2m-noslave/
解釋:
2m-2s-async 代表兩主兩從,非同步複製模式
2m-2s-sync 代表兩主兩從,同步雙寫模式
2m-noslave 代表兩主,只有主節點沒有從節點
-
第六步:修改配置檔案如下:
#把下面得配置覆蓋替換到broker-a.properties檔案中 #所屬的叢集名字 brokerClusterName=rocketmq-cluster #broker名字,注意:此處不同的配置檔案填寫的不一樣 brokerName=broker-a # 0 表示 master主節點 ,不是0則代表從節點slave brokerld=0 #nameServer地址,分號分隔, #注意:nameSeve的地址就是部署mq伺服器的地址,可以在/etc/hosts中修改伺服器ip指定一個名字 #我的伺服器ip對應的名字是阿里雲預設的名字aliyun #也可以自己修改成名字叫rocketmq-nameserver1,修改方法為 #vim /etc/hosts ,然後儲存退出,再重啟一下網絡卡命令: service network restart namesrvAddr=rocket-nameserver1:9876 #在傳送訊息時,自動建立伺服器不存在的topic,預設建立的佇列數 defaultTopicQueueNums=4 #是否允許broker自動建立topic,建議線下開啟,線上關閉 autoCreateSubscriptionGroup=true #broker 對外服務的監聽埠 listenPort=10911 #刪除檔案時間點,預設凌晨4點 deleteWhen=04 檔案保留時間,預設48小時 fileReservedTime=48 #commitlog每個檔案的大小預設1G mapedFileSizeCommitLog=1073741824 #ConsumeQueue每個檔案預設存30w條,根據業務情況調整 mapedFileSizeConsumeQueue=300000 #檢測物理檔案磁碟空間 diskMaxUsedSpaceRatio=88 #儲存路徑 storePathRootDir=/usr/local/rocketmq/store #commitlog 儲存路徑 storePathCommitLog=/usr/local/rocketmq/store/commitlog #消費佇列儲存路徑 storrPathConsumeQueue=/usr/local/rocketmq/store/consumequeue #訊息索引儲存路徑 storePathIndex=/usr/local/store/index #checkpoint檔案儲存路徑 storeCheckpoint=/usr/local/rocketmq/store/checkpoint #abort檔案儲存路徑 abortFile=/usr/local/rocketmq/store/abort #限制訊息得大小 maxMessageBiz=65536 #broker的角色 #ASYNC_MASTER 非同步複製模式master #SYNC_MASTER 同步雙寫模式master #SLAVE brokerRole=ASYNC_MASTER #刷盤方式 #ASYNC_MASTER 非同步刷盤 #SYNC_MASTER 同步刷盤 flushDiskType=ASYNC_MASTER
-
截圖參照:
第七步:修改日誌配置檔案
mkdir -p /usr/local/rocketmq/logs
cd /usr/local/rocketmq/conf && sed -i 's#${user.home}#/usr/local/rocketmq#g' *.xml
第八步:修改啟動指令碼引數, 主意:-Xms1g -Xms1g 分配的記憶體至少需要1G才能啟動mq,分配的記憶體不能小於1g參考如下
vim /usr/local/rocketmq/bin/runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -XX:PermSize=128m -XX:MaxPermSize=320m"
vim /usr/local/rocketmq/bin/runserver.sh
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -XX:PermSize=128m -XX:MaxPermSize=320m"
第九步:啟動NameServer,一般先啟動nameserver然後再啟動brokerserver因為nameserver在mq叢集環境中就像zookeeper一樣像叢集環境的配置中心
cd /usr/local/rocketmq/bin
nohup sh mqnamesrv &
#檢視啟動日誌
tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log
#注意:nohup啟動mqnamesrv可能會出錯
#nohup: ignoring input and appending output to ‘nohup.out’
#代表沒有寫入許可權
第十步:啟動BrokerServer
cd /usr/local/rocketmq/bin
nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2 >&1 &
netstat -ntlp
#檢視啟動程序和啟動日誌
jps
tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.log