摘要
簡單的部署管理RocketMQ隊列 (nameserver broker在同一機器上)
RocketMQ 是alibaba開源的消息隊列。
本文使用的是開源版本v3.18
系統: centos6.x最小化安裝
需要用到的軟件包:
jdk-7u67-linux-x64.tar.gz
alibaba-rocketmq-3.1.8.tar.gz
開始安裝
#tar xvf jdk-7u67-linux-x64.tar.gz -C /opt/
#tar xvf alibaba-rocketmq-3.1.8.tar.gz -C /opt/
#ln -s /opt/jdk1.7.0_67 /opt/jdk
配置環境變量
在/etc/profile最後添加
export JAVA_HOME=/opt/jdk
export ROCKETMQ_HOME=/opt/alibaba-rocketmq
export PATH=$JAVA_HOME/bin:$ROCKETMQ_HOME/bin:$PATH
使變量生效
source /etc/profile
驗證java
# java -version
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)
給下列命令可執行權限
#cd /opt/alibaba-rocketmq/bin/;chmod +x mqadmin mqbroker mqfiltersrv mqshutdown mqnamesrv
啓動nameserver
#nohup mqnamesrv >/var/log/ns.log &
驗證nameserver是否啓動
# tail -f /var/log/ns.log
The Name Server boot success.
啓動broker
在啓動borker之前需要指定nameserver地址
#export NAMESRV_ADDR=Your_name_IP:9876
#nohup mqbroker >/var/log/mq.log &
可以這樣指定NAMESRV啓動broker:
nohup sh mqbroker -n "Your_name_IP:9876" -c ../conf/2m-2s-async/broker-a.properties >/var/log/rocketmq/mq.log &
驗證mqbroker是否啓動
# tail -f /var/log/mq.log
The broker[Your_hostname, Your_IP:10911] boot success. and name server is Your_IP:9876
最後配置防火牆
nameserver端口爲9876
broker端口爲10911
lokkit -p 9876:tcp -p 10911:tcp
關閉nameserver broker
#mqshutdown namesrv
#mqshutdown broker
至此 RockerMQ 安裝完畢。
參考:
https://github.com/alibaba/RocketMQ
其中有個錯誤處理:
broker綁定在錯誤的IP上的情況,The broker[iZ94uiyfuzwZ, 120.25.147.193:10911] boot success.
而實際IP是120.25.147.194
這種情況一般是設置了VIP,可以通過以下命令查看
ifconfig
vim /etc/sysconfig/network-scripts/ifcfg-eth1
相關有參考價值的鏈接:
http://blog.csdn.net/a19881029/article/details/34446629
http://sofar.blog.51cto.com/353572/1540874