java消息中間件 RocketMQ Linux安裝與運行


  阿里巴巴宣布捐贈RocketMQ到Apache軟件基金會孵化項目,最近閑下來便去部署了一個試驗版本玩玩。

  至於RockeMQ是什么,原理架構什么的這里就不贅述了,這里只記錄安裝過程。

 一、系統環境

service操作系統:centOS7 64位虛擬機
JDK:1.7以上
client操作系統:Windows 7 64位旗艦版

1.1 安裝Linux

  筆者在此安裝的是最小化版本的Linux,安裝完成后顯示:

  安裝完成發現虛擬機無法聯網,解決方法:

修改網絡配置:vi /etc/sysconfig/network-scripts/ifcfg-en*****

 

修改

TYPE=Ethernet
BOOTPROTO=static  修改
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=e866ca7f-40bd-4b1d-80fa-0afc13da35bb
DEVICE=ens33
ONBOOT=yes  修改
IPADDR=192.168.75.130  添加修改
NETMASK=255.255.255.0  添加修改
GATEWAY=192.168.75.2   添加修改
DNS1=192.168.75.2      添加修改

最后

重啟網絡配置:service network restart

 

為何說最小化版本呢,在驗證上述修改生效時會出現這種情況:

好吧,參照這里搞定。

 1.2 安裝JDK

  a.下載jdk的rpm安裝包,這里以jdk-8u131-linux-x64.rpm為例。下載地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

  b.將jdk-8u131-linux-x64.rpm移動到合適的安裝目錄上。

  c.給安裝包賦予運行權限chmod 755 jdk-8u131-linux-x64.rpm

  d.安裝該rpm安裝包rpm -i jdk-8u131-linux-x64.rpm

  e.設置環境變量vi /etc/profile輸入 i 追加以下內容

export JAVA_HOME=/usr/java/jdk1.8.0_131
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
export PATH=$PATH:$JAVA_HOME/bin

  若沒有立即生效,運行source /etc/profile

若運行java -version后顯示

則安裝完成。

 二、安裝RocketMQ

  1.下載rocketmq安裝包,這里以alibaba-rocketmq-3.2.6.tar為例。下載地址:https://github.com/alibaba/RocketMQ/releases

  2.安裝

# tar zxf alibaba-rocketmq-3.2.4-beta1.tar.gz -C /usr/local/
# cd /usr/local/
# ln -s /usr/local/alibaba-rocketmq /usr/local/rocketmq
# cd rocketmq/

  3.配置  運行 vim conf/2m-noslave/broker-a.properties

brokerClusterName=adam   
brokerName=broker-a    
brokerId=0    
namesrvAddr=192.168.75.130:9876
deleteWhen=04    
fileReservedTime=120    

brokerRole=ASYNC_MASTER    
flushDiskType=ASYNC_FLUSH    
sstorePathRootDir=/data/rocketmq/store    
storePathCommitLog=/data/rocketmq/store/commitlog

   4.創建數據目錄

# mkdir -p /data/rocketmq/store/commitlog
# mkdir /data/logs
# cd conf/
# sed -i 's#${user.home}#/data#g' *.xml      //將conf目錄下所有xml文件中的${user.home}

   5.啟動rocketmq

# cd ../bin/
# nohup sh mqnamesrv >/var/log/ns.log &  //啟動namesrv
# nohup sh mqbroker -c ../conf/2m-noslave/broker-a.properties > /var/log/mq.log 2>&1 &  //啟動borker

   6.查看啟動日志

# tail -f /var/log/ns.log 
# tail -f /var/log/mq.log

   7.查看啟動端口

# netstat -tunpl
# jps

   8.關閉RocketMQ

# sh mqshutdown broker
# sh mqshutdown namesrv

   由此,安裝完成。

  但由於linux防火牆會屏蔽某些端口,需要手動開放mq需要的端口。在此,筆者直接關閉了防火牆。

# systemctl stop firewalld.service //停止firewall
# systemctl disable firewalld.service //禁止firewall開機啟動
# firewall-cmd --state //查看默認防火牆狀態(關閉后顯示notrunning,開啟后顯示running)

 

三、驗證

  1.下載測試環境 下載地址:https://code.aliyun.com/MiddlewareRace/PreliminaryDemo.git

  2.用windows下的Eclipse導入Maven項目進行測試

  3.修改Product和Consumer的服務器ip地址

  4.先運行Consumer再運行Product

至此,調試通過運行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM