1. 程式人生 > >Linux和Windows部署RocketMQ叢集

Linux和Windows部署RocketMQ叢集

Linux和Windows部署RocketMQ叢集

官網文件

1.Linux啟動RocketMQ

  1. 進入rocketmq環境變數的路徑
cd /usr/local/rocketmq-all-4.3.2/distribution/target/apache-rocketmq/bin
  1. 啟動Name Server
nohup sh mqnamesrv
tail -f ~/logs/rocketmqlogs/namesrv.log

提示:The Name Server boot success…

  1. 啟動Broker
nohup sh mqbroker
tail -f ~/logs/rocketmqlogs/broker.log

提示:The broker[%s, 172.30.30.233:10911] boot success…

注:若無法啟動,改runbroker.sh和runserver.sh中的啟動記憶體要小於虛擬機器記憶體,兩者啟動記憶體大小一致

  1. 檢視兩個程序是否啟動
jps

3601 Jps
3494 NamesrvStartup
3530 BrokerStartup

  1. 關掉伺服器:先關broker,再關nameserver
sh mqshutdown broker

提示:The mqbroker(36695) is running…
Send shutdown request to mqbroker(36695) OK

sh mqshutdown namesrv

提示:The mqnamesrv(36664) is running…
Send shutdown request to mqnamesrv(36664) OK

2.Windows啟動RocketMQ

  1. 啟動nameserver:Cmd命令框執行進入至‘MQ資料夾\bin’下,成功後會彈出提示框,此框勿關閉。
start mqnamesrv.cmd
  1. 啟動broker: Cmd命令框執行進入至‘MQ資料夾\bin’下,成功後會彈出提示框,此框勿關閉。
start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true
  1. 啟動管控平臺,先進入E:\rocketmq-externals-master\rocketmq-console\src\main\resources,修改application.properties中的namesrvAddr,例如:
rocketmq.config.namesrvAddr=192.168.0.220:9876;192.168.0.221:9876
  1. Cmd命令框執行進入E:\rocketmq-externals-master\rocketmq-console
mvn clean package -Dmaven.test.skip=true
  1. Cmd命令框執行進入E:\rocketmq-externals-master\rocketmq-console\target
java -jar rocketmq-console-ng-1.0.0.jar
  1. 瀏覽器中輸入‘127.0.0.1:配置埠’,成功後即可檢視。
    埠在E:\rocketmq-externals-master\rocketmq-console\src\main\resources中的‘application.properties’檔案可看,如server.port=8082

3. Linux部署雙master雙slave非同步複製叢集

  1. 修改四臺機子的hosts檔案:vi /ect/hosts
192.168.9.157 rocketmq-nameserver1 
192.168.9.157 rocketmq-master1 
192.168.9.150 rocketmq-nameserver2 
192.168.9.150 rocketmq-master2 
192.168.9.154 rocketmq-nameserver3 
192.168.9.154 rocketmq-master1-slave 
192.168.9.155 rocketmq-nameserver4 
192.168.9.155 rocketmq-master2-slave
  1. 重啟網絡卡
service network restart
  1. 互相ping一下,例:
ping 10.43.98.38 
ping rocketmq-nameserver2 
ping rocketmq-master2
  1. 四臺機進入/usr/local/rocketmq-all-4.3.2/distribution/target/apache-rocketmq/conf/2m-2s-async目錄,增加一行程式碼
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876;rocketmq-nameserver3:9876;rocketmq-nameserver4:9876

主機1修改broker-a.properties檔案
主機2修改broker-b.properties檔案
從機1修改broker-a-s.properties檔案
從機2修改broker-b-s.properties檔案

  1. 在bin目錄分別啟動四臺機子的nameserver
nohup sh mqnamesrv &
  1. 在bin目錄分別啟動四臺機子broker:

主機1:

nohup sh mqbroker -c /usr/local/rocketmq-all-4.3.2/distribution/target/apache-rocketmq/conf/2m-2s-async/broker-a.properties >/dev/null 2>&1 &

主機2:

nohup sh mqbroker -c /usr/local/rocketmq-all-4.3.2/distribution/target/apache-rocketmq/conf/2m-2s-async/broker-b.properties >/dev/null 2>&1 &

從機1:

nohup sh mqbroker -c /usr/local/rocketmq-all-4.3.2/distribution/target/apache-rocketmq/conf/2m-2s-async/broker-a-s.properties >/dev/null 2>&1 &

從機2:

nohup sh mqbroker -c /usr/local/rocketmq-all-4.3.2/distribution/target/apache-rocketmq/conf/2m-2s-async/broker-b-s.properties >/dev/null 2>&1 &
  1. 在rocketmq的bin目錄下檢視叢集情況:
sh mqadmin clusterList -n "192.168.9.157:9876;192.168.9.150:9876;192.168.9.154:9876;192.168.9.155:987

注:可在Windows端開啟管控臺,步驟以上有,需改application.properties中的namesrvAddr