咱們準備安裝的Apache-RocketMQ須要經過Maven去編譯後才能啓動,因此首先要保證linux服務器中有安裝java環境以及Maven。java
maven下載地址 maven.apache.org/download.cg… 找到合適的maven版本linux
wget http://mirrors.shu.edu.cn/apache/maven/maven-3/3.6.0/source/apache-maven-3.6.0-src.tar.gz
複製代碼
經過上面的命令,下載maven壓縮包到你想要安裝的目錄下。 解壓安裝包git
tar -zxvf apache-maven-3.6.0-src.tar.gz
複製代碼
解壓後能夠創建一個軟鏈接,方便配置環境變量github
ln -s apache-maven-3.6.0-src.tar.gz maven
複製代碼
打開配置文件apache
vim /etc/profile
複製代碼
在文件末尾追加環境變量vim
MAVEN_HOME=/usr/local/maven
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
複製代碼
/usr/local就是你存放maven的目錄瀏覽器
讓配置文件馬上生效安全
source /etc/profile
複製代碼
控制檯輸入mvn -v 出現版本號說明maven安裝成功服務器
github.com/apache/rock… 這個網址能夠看到多個版本的RocketMQmaven
wget https://github.com/apache/rocketmq/archive/rocketmq-all-4.3.0.tar.gz
複製代碼
在/user/local/下新建rocketmq文件夾,將壓縮包下載到這個文件夾,而後解壓
tar -zxvf rocketmq-all-4.3.0.tar.gz
複製代碼
解壓後文件夾以下
要使用用maven編譯項目,
mvn -Prelease-all -DskipTests clean install -U
複製代碼
開始編譯
最後出現BUILD SUCCESS就說明已經編譯成功
cd distribution/target/apache-rocketmq/
pwd
複製代碼
記錄這個路徑,須要配置到環境變量 打開配置文件
vim /etc/profile
複製代碼
在最後追加兩行,wq保存退出
export rocketmq=/usr/local/rockemq-source/rocketmq/distribution/target/apache-rocketmq
export PATH=$PATH:$rocketmq/bin
複製代碼
讓配置文件立馬生效
source /etc/profile
複製代碼
新建日誌文件夾
mkdir /usr/local/log/rocketmqlogs
複製代碼
啓動:
nohup mqnamesrv >/usr/local/log/rocketmqlogs/namesrv.log 2>&1 &
複製代碼
查看日誌:
tail -f /user/local/log/rocketmqlogs/namesrv.log
複製代碼
正常啓動的話,會出現
啓動broker服務:
nohup mqbroker -n localhost:9876 >/usr/local/log/rocketmqlogs/broker.log 2>&1 &
複製代碼
查看日誌:
tail -f /user/local/log/rocketmqlogs/broker.log
複製代碼
正常啓動的話,會出現
可是因爲RocketMQ默認的java內存配置有點大,服務器內存沒那麼大就會報錯
Java HotSpot(TM) 64-Bit Server VM warning: Using the DefNew young collector with the CMS collector is deprecated and will likely be removed in a future release
Java HotSpot(TM) 64-Bit Server VM warning: UseCMSCompactAtFullCollection is deprecated and will likely be removed in a future release.
Java HotSpot(TM) 64-Bit Server VM warning: MaxNewSize (131072k) is equal to or greater than the entire heap (131072k). A new max generation size of 131008k will be used.
複製代碼
只要修改一下bin目錄下的runserver.sh和runbroker.sh文件的配置就行了
按照服務器狀況修改就行了JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx256m -Xmn128m"
複製代碼
修改後從新啓動就應該能夠了 運行下面命令,查看RocketMQ進程
ps -ef|grep rocketmq
複製代碼
mqshutdown namesrv
mqshutdown broker
複製代碼
RocketMQ安裝成功後,想要比較簡單的訪問一下,就可使用RocketMQ Console RocketMQ有一個對其擴展的開源項目rocketmq-externals,裏面有個項目就是RocketMQ Console 整個項目下載下來有點慢,因此就只下Console那個分支項目就行了
將項目導入,而後配置配置文件
將服務器地址配置好
啓動項目
若是出現下面的連接失敗問題,多是你的服務器端口沒有開放,把安全組規則配置一下就行了,最好把9876,10909,10911都開放了
java.lang.RuntimeException: org.apache.rocketmq.remoting.exception.RemotingConnectException:
connect to <x.x.x.x:9876> failed
複製代碼
若是端口開放了,可是仍是報connect to x.x.x.x:10911 failed,那就須要配置一下brokerIP1,broker啓動時,默認ip是本地ip,可是這個ip可能遠程沒法訪問。
在RocketMQ目錄新建properties
echo "brokerIP1=外網IP" > broker.properties
複製代碼
關閉而後重啓broker
mqshutdown broker
nohup mqbroker -n localhost:9876 -c 配置文件路徑/broker.properties >/usr/local/log/rocketmqlog/broker.log 2>&1 &
複製代碼
重啓console項目,瀏覽器訪問