1. 程式人生 > >rocketmq安裝啟動步驟教程

rocketmq安裝啟動步驟教程

  1. 第一步:上傳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下面建立幾個資料夾

  2. mkdir /usr/local/rocketmq/store
    mkdir /usr/local/rocketmq/store/commitlog
    mkdir /usr/local/rocketmq/store/consumequeue
    mkdir /usr/local/rocketmq/store/index
    
  3. 第五步:修改配置檔案vim /usr/local/rocketmq/conf/2m-noslave/

    解釋

    2m-2s-async   代表兩主兩從,非同步複製模式

    2m-2s-sync    代表兩主兩從,同步雙寫模式

    2m-noslave    代表兩主,只有主節點沒有從節點

  4. 第六步:修改配置檔案如下:

    #把下面得配置覆蓋替換到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
    

     

  5. 截圖參照:

                        

                       

                      

 

第七步:修改日誌配置檔案

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