【運維技術】CentOS7上從零開始安裝阿里RocketMQ版本:release-4.0.1【親測哈哈】


CentOS7上從零開始安裝阿里RocketMQ版本:release-4.0.1【親測哈哈】

安裝git

# 更新包
$ yum update 
# 安裝git
$ yum install git
# 驗證git安裝成功
$ git --version
# 這樣git即可安裝成功

安裝wget依賴包

# 更新包
$ yum install wget
# 安裝完成后可以使用wget命令

安裝jdk

# 登錄SSH到linux的默認用戶路徑下(我使用的是root用戶)
# 下載JDK:使用官方網站的下載地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
$ wget http://220.112.193.200/files/9130000004D8B9C4/download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz .
# 轉移到目錄中解壓
$ cp /root/jdk-8u144-linux-x64.tar.gz /usr/local/
# 切換目錄
$ cd /usr/local
# 解壓
$ tar -xvf jdk-8u144-linux-x64.tar.gz
# 創建軟連接將jdk的軟連接到jdk8上
$ ln -s jdk-8u144-linux-x64.tar.gz jdk8
# 進入更目錄修正環境變量
$ vi ~/.bash_profile
# 在尾部添加環境變量如下
JAVA_HOME=/usr/local/jdk8
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH
# 使用insert模式,用esc+ ‘:wq’完成編輯,使用source完成編輯
$ source ~/.bash_profile
# 驗證jdk安裝成功
$ java -version

安裝maven

# 登錄SSH到linux的默認用戶路徑下(我使用的是root用戶)
# 下載maven:http://maven.apache.org/download.cgi
$ wget http://211.162.127.22/files/2245000004204200/mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bin.tar.gz .
# 移動到目錄中解壓
$ cp /root/apache-maven-3.5.0-bin.tar.gz /usr/local/
# 切換目錄
$ cd /usr/local/
# 解壓
$ tar -xvf apache-maven-3.5.0-bin.tar.gz
# 創建軟連接(將軟連接上maven工程,保證以后改變apache不用改環境變量的配置)
$ ln -s apache-maven-3.5.0/ maven
# 進入更目錄修正環境變量
$ vi ~/.bash_profile
# 在尾部添加環境變量如下
MAVEN_HOME=/usr/local/maven
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
# 使用insert模式,用esc+ ‘:wq’完成編輯,使用source完成編輯
$ source ~/.bash_profile
# 驗證maven安裝成功
$ mvn -version

安裝RocketMQ

這邊我們使用源碼編譯安裝,參考從github上面拉取源代碼進行編譯,然后使用maven進行編譯

拉取代碼和通過maven進行編譯

# 選擇git代碼下載目錄,拉取源代碼(可以拉取當前最新版本的分支:release-4.1.0-incubating)
$ git clone -b release-4.1.0-incubating https://github.com/apache/incubator-rocketmq.git
# 切換到文件目錄
$ cd incubator-rocketmq
# 使用maven編譯,下載jar包等待編譯成功
$ mvn -Prelease-all -DskipTests clean install -U
# 切換到編譯完成的目錄的bin目錄准備啟動服務器
$ cd distribution/target/apache-rocketmq/bin

啟動名稱服務器(name Server)(可以設置集群)

可以通過命令vi runserver.sh 修改jvm 配置

# 啟動命令,並且常駐內存
$ nohup sh mqnamesrv &
# 查看啟動日志能看到:The Name Server boot success字樣則成功
$ tail -f ~/logs/rocketmqlogs/namesrv.log

啟動Broker(可以設置集群,master,slave)

可以通過命令vi runbroker.sh 修改jvm 配置

# 啟動命令,並且常駐內存:注意ip地址要配置成為服務的ip地址,保證地址以及端口能夠訪問(官方的有點問題)
$ nohup sh mqbroker -n "192.168.1.113:9876" -c ../conf/2m-noslave/broker-a.properties > broker.out &
# 我啟動的時候報錯了, 原因是對應的runbroker的配置將虛擬機的內存大小設置為4g了,我內存不夠,所以我改成最大2g如下
JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g"
# 查看啟動日志
$ tail -f ~/logs/rocketmqlogs/broker.log 

關閉RcocketMQ相關服務

# 停止broker服務
$ sh mqshutdown broker
# 定制nameserver服務
$  sh mqshutdown namesrv

向MQ發送和接收消息

# 在bin目錄下面執行,將服務器地址引入到環境變量中
$ export NAMESRV_ADDR=192.168.1.113:9876
# 通過java代碼實現的案例生產者生產消息
$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
# 通過java代碼實現案例消費者消費消息
$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

監控MQ

# 調用命令監控在target的bin目錄下
$ sh mqadmin clusterList -n 192.168.1.113:9876

相關注意事項

本文中的ip地址都是對應的服務器ip地址,
Java代碼中的消費者是不是進程停止的,一直在監聽消費


免責聲明!

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



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