1. 程式人生 > >Linux下RocketMQ服務端和客服端安裝

Linux下RocketMQ服務端和客服端安裝

Linux下RocketMQ服務端和客服端安裝

安裝條件

  1. jdk 1.8+
  2. Maven 3.0.5
  3. .64位Linux系統

下載和安裝

 

  1. 使用xshell將下載的安裝包上傳到linux系統

        安裝:yum  install  lrzsz

         命令:rz (enter確認彈出選擇檔案)

     2.安裝jdk和mavn

        在usr/local目錄下新建一個java資料夾:mkdir java      

        

      通過lrzsz上傳jdk和mavn的安裝包,並解壓

        tar  -zxvf  apache-maven-3.0.5-bin.tar.gz

        tar  -zxvf  jdk-8u151-linux-x64.tar.gz

       

       配置環境變數

        vim /etc/profile

      

     安裝成功的標誌

     

     3.rocketmq服務端安裝

       服務安裝包下載地址:

       https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.2.0/rocketmq-all-4.2.0-source-release.zip 或直接進入官網選擇要安 裝的版本

     客服端下載地址:

     https://github.com/apache/rocketmq-externals

     在usr/local目錄下新建一個mq資料夾:mkdir mq

    將兩個安裝包上傳到mq資料夾並解壓

    yum install -y unzip zip    前提是:unzip解壓檔案無法使用

    unzip rocketmq-all-4.2.0-source-release.zip

    unzip rocketmq-externals-master.zip

    

    cd rocketmq-all-4.2.0/

    mvn -Prelease-all -DskipTests clean install -U

    構建成功後

    

   在mq目錄下新建一個rocketmqlogs的日誌資料夾:mkdir rocketmqlogs

   進入到目錄 :

   cd distribution/target/apache-rocketmq/bin

   啟動nameserver

   nohup sh mqnamesrv >/usr/local/mq/rocketmqlogs/mqnamesrv.log 2>&1 &

   檢視mqnamesrv.log日誌,此時若出現以下情況

    

    調整distribution/target/apache-rocketmq/bin目錄下的runbroker.sh 和 runserver.sh的引數

      

      

     

    再次啟動nameserver

    啟動broker

    nohup sh mqbroker -n localhost:9876 >/usr/local/mq/rocketmqlogs/broker.log 2>&1 &

    注意:這樣啟動外網是無法訪問的,客服端訪問會出現:

     Exception in thread "main"

    org.apache.rocketmq.remoting.exception.RemotingConnectException:

    connect to <172.16.74.201:10911> failed

    解決方案:

    修改conf下的配置檔案broker.conf,並修改啟動命令

    vim broker.conf

    Ip地址為阿里雲的外網IP

   修改後執行啟動broker命令:

    nohup sh bin/mqbroker -c conf/broker.conf &

   啟動成功後的標誌

   

   測試傳送訊息

    在傳送/接收訊息之前,我們需要告訴客戶名稱伺服器的位置。為了簡單起見,我們使用環境變數NAMESRV_ADDR

   export NAMESRV_ADDR=localhost:9876

   sh   tools.sh org.apache.rocketmq.example.quickstart.Producer

   

   

   接收訊息

   sh  tools.sh org.apache.rocketmq.example.quickstart.Consumer

   

    

   出現以上兩種資訊則標誌傳送和接收訊息都是ok的

  關閉伺服器與啟動服務的順序是相反的

   停止broker

   sh  mqshutdown broker

   停止namerserver

   sh  mqshutdown namesrv

   關閉成功的標誌

   

  4.安裝web客服端

  進入rocketmq-externals-master目錄

  

  修改配置檔案(/rocketmq-externals-master/目錄下)

  find -name application.properties 可以檢視到兩個檔案都在rocketmq-console檔案目錄下

  vim application.properties

  

  新增配置:rocketmq.config.namesrvAddr=172.16.31.235:9876

 (IP地址為阿里雲內網地址,埠號設定為9876)

     

   儲存並退出

   編譯(進入rocketmq-externals-master/rocketmq-console/目錄下)

   mvn clean package -Dmaven.test.skip=true

   

   編譯成功後,在rocketmq-console目錄下會生成一個目錄:target目錄,該目錄下有啟動rocketmq介面的jar檔案

   

   啟動客服端

    第一種(啟動 ---當終端斷了該服務就會停止):

    java -jar rocketmq-console-ng-1.0.0.jar

    第二種(後臺啟動 --當終端斷了也不會停止服務):

    nohup java -jar rocketmq-console-ng-1.0.0.jar >>/usr/local/mq/rocketmqlogs/log.out 2>&1 &

    

    啟動成功後(訪問客服端)