Apache RocketMQ™是一個開源的分布式消息傳遞和流數(shù)據(jù)平臺。下面記錄在CentOS 7 安裝 RocketMQ 4.4 及相關(guān)的注意事項(xiàng)。
一、安裝maven
RocketMQ依賴maven打包,所以先要在虛擬機(jī)中安裝maven,我使用的是v3.3.9。
1:進(jìn)入指定目錄下載maven 包
1 cd /usr/local
2 wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
2:解壓并重新命名文件夾
1 tar -zxvf apache-maven-3.3.9-bin.tar.gz
2
3 mv apache-maven-3.3.9 /usr/local/maven3
3:修改倉庫地址為阿里云,不修改下載依賴的時(shí)候總報(bào)超時(shí)
1 cd /usr/local/maven3/conf
2
3 vim settings.xml
在中間偏下的位置添加<mirror>標(biāo)簽(默認(rèn)是注釋的)
1 <mirror>
2 <id>alimaven</id>
3 <name>aliyun maven</name>
4 <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
5 <mirrorOf>central</mirrorOf>
6 </mirror>
4:配置環(huán)境變量
1 vim /etc/profile
添加maven_home
1 export M2_HOME=/usr/local/maven3
2 export PATH=$PATH:$Java_HOME/bin:$M2_HOME/bin
5:保存退出(shift +zz)刷新配置文件生效
1 source /etc/profile
6:檢查安裝結(jié)果
mvn -v
二、安裝RocketMQ
1:下載源碼的zip壓縮包,官網(wǎng)上提供了5種鏡像下載鏈接,一個推薦鏡像鏈接,兩個PGP簽名以及這兩個的備份,下載之后解壓到/usr/local/下,然后刪除zip文件
1 cd /usr/local
2
3 wget http://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.4.0/rocketmq-all-4.4.0-source-release.zip
4
5 unzip -d /usr/local/ rocketmq-all-4.4.0-source-release.zip
6
7 rm -rf rocketmq-all-4.4.0-source-release.zip
2:使用maven打包,這個要打好久
1 cd /usr/local/rocketmq-all-4.4.0/
2
3 mvn -Prelease-all -DskipTests clean install -U
3:RocketMQserver默認(rèn)初始內(nèi)存、最大內(nèi)存都是4g,新生代內(nèi)存是2g,broker是8g、8g、4g,我的筆記本四個虛擬機(jī)集群每個都是1g,所以需要改小點(diǎn),觸發(fā)fullGC的閾值可以不變。根據(jù)個人情況修改JAVA_OPT=”${JAVA_OPT} -server一行參數(shù)
1 vim distribution/target/apache-rocketmq/bin/runserver.sh
2 vim distribution/target/apache-rocketmq/bin/runbroker.sh
4:將nameserver地址添加到環(huán)境變量中
1 vim /etc/profile
2
3 export NAMESRV_ADDR=127.0.0.1:9876
4
5 # 刷新配置文件
6 source /etc/profile
5:后臺運(yùn)行nameserver,將日志重定向到指定文件
1 nohup sh mqnamesrv > /usr/local/rocketdata/namesrv.log 2>&1&
2
3 #查看啟動日志
4 tail -f /usr/local/rocketdata/namesrv.log
運(yùn)行broker
1 nohup sh mqbroker > /usr/local/rocketdata/broker.log 2>&1&
2
3 #查看啟動日志
4 tail -f /usr/local/rocketdata/broker.log
6:新開窗口,一個生產(chǎn)一個消費(fèi),測試消費(fèi)。警告忽略
1 #窗口1
2 sh tools.sh org.apache.rocketmq.example.quickstart.Producer
3 #窗口2
4 sh tools.sh org.apache.rocketmq.example.quickstart.Consumer
三、控制臺安裝
1:因?yàn)榭刂婆_源碼在github上,我這里在虛擬中安裝git,直接down源碼,因?yàn)閏onsole是springboot項(xiàng)目,也可以下載到本地修改配置文件打包,將打完的jar包傳到虛擬機(jī)中。
1 #使用yum安裝git
2 yum install git
2:進(jìn)入/usr/local下
git clone https://github.com/apache/rocketmq-externals
3:rocketmq-externals里面有所有Apache RocketMq外部項(xiàng)目,有的還在孵化中,我主要是使用rocketmq-console,進(jìn)入到console項(xiàng)目中,修改resources文件夾下面的配置文件
1 cd /usr/local/rocketmq-externals/rocketmq-console/src/main/resources
2
3 #查看配置文件名稱
4 ll
5
6 #打開配置文件
7 vim application.properties
修改以下配置:
1 #服務(wù)端口號
2 server.port=8090
3 #nameserver服務(wù)地址
4 rocketmq.config.namesrvAddr=127.0.0.1:9876
5 #rocketmq數(shù)據(jù)路徑,由于聯(lián)系使用,都放在usr/local下了
6 rocketmq.config.dataPath=/usr/local/rocketdata/console
4:正常的maven項(xiàng)目打包
#打包并且跳過測試
mvn clean install -Dmaven.test.skip=true
5:后臺啟動,重定向日志文件
1 nohup java -jar rocketmq-console-ng-1.0.1.jar > /usr/local/rocketdata/console/console.out 2>&1&
6:啟動成功后在本機(jī)訪問ip+端口進(jìn)入控制臺