首页 > 技术文章 > Rocketmq-简单部署

dingkailinux 2018-04-18 14:42 原文

一、准备环境

1.系统:Centos7.3(无硬性要求)

2. jdk:1.8

3.maven:3.5(无硬性要求)

4.git

5.rocketmq 4.2

二、环境部署

1.jdk1.8以及maven可以在另一篇文章查看【http://www.cnblogs.com/dingkailinux/p/8794611.html】

2.git安装

# yum -y install git
# git --version
git version 2.16.2

3.部署rocketmq

参考官方指导【https://rocketmq.apache.org/docs/quick-start/】

(1)下载源码

wget 'http://mirrors.hust.edu.cn/apache/rocketmq/4.2.0/rocketmq-all-4.2.0-source-release.zip'

(2)解压编译

# unzip rocketmq-all-4.2.0-source-release.zip
# mv rocketmq-all-4.2.0 /opt/
# cd /opt/rocketmq-all-4.2.0
# mvn -Prelease-all -DskipTests clean install -U    #使用mvn编译

(3)编译完成后,调整配置

# cd distribution/target/apache-rocketmq  #编译后的程序其实就在’apache-rocketmq‘中,这个目录可以单独拿出来启动
# cd /opt/
rocketmq-all-4.2.0/distribution/target/
# cp -a apache-rocketmq /opt/rocketmq
# cd /opt/rocketmq

#########调整启动内存#######
# vim bin/runserver.sh  #调整nameserver启动的内存(如果服务器内存比较大,可以不调整),如果内存较小,不调整此文件,可能导致无法启动
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"  #需要调整标红部分
# vim bin/runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m"
########调整日志文件位置########
# vim conf/logback_broker.xml
# vim conf/logback_filtersrv.xml
# vim conf/logback_namesrv.xml
# vim conf/logback_tools.xml
以上四个文件,将类似于[${user.home}/logs/rocketmqlogs/namesrv_default.log]修改为自定义的日志路径,如[/data/logs/rocketmqlogs/
namesrv_default.log],如果不修改,日志就会写入到用户目录下的logs目录下

 (4)启动服务

# nohup sh bin/mqnamesrv &    #启动nameserver
# tail -f nohup.out
The Name Server boot success  #输出此类信息,说明启动成功

#nohup sh bin/mqbroker -n 本地IP:9876 &  #启动broker
# tail -f nohup.out
INFO main - The broker[localhost, 172.17.154.196:10911] boot success. serializeType=JSON and name server is 172.17.154.196:9876  #日志输出如下信息,证明启动成功

3.向客户端提供NameServer地址

export NAMESRV_ADDR=172.17.154.196:9876
也可以将内容写入/etc/profile中
cat <<EOF>>/etc/profile
export NAMESRV_ADDR=172.17.154.196:9876
EOF

source /etc/profile

4.模拟消息传送

1)模拟producer产生消息
#cd /opt/rocketmq/
#sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

(2)模拟consumer消费消息
#cd /opt/rocketmq/
#sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

 

推荐阅读