【鲲鹏云移植干货分享14】RocketMQ 4.0.0安装指导

217 阅读2分钟

【摘要】 RocketMq是一个由阿里巴巴开源的消息中间件,脱胎去阿里每部使用的MetaQ,在设计上借鉴了Kafka。 2012年开源,2017年成为apache顶级项目。

1      软件介绍

RocketMq是一个由阿里巴巴开源的消息中间件,脱胎去阿里每部使用的MetaQ,在设计上借鉴了Kafka。

2012年开源,2017年成为apache顶级项目。

2      预置条件

本文档基于有外网的Euler2.8系统环境展开。

3      下载RocketMQ 4.0.0源码

github.com/apache/rock…

unzip rocketmq-4.0.0-incubating.zip

cd rocketmq-4.0.0-incubating

4      依赖包下载安装

基于openjdk1.8

yum install java-1.8.0-openjdk*

image.png 

基于maven

安装Maven 3.6.1

访问Maven官网

maven.apache.org/download.cg…

image.png

下载源码包后,解压安装包:tar zxvf apache-maven-3.6.1-bin.tar.gz

本次搭建过程中解压后文件夹路径为:/home/sopuser/apache-maven-3.6.1

编辑文件/etc/profile:vim /etc/profile,添加以下两行:

image.png

编辑完成后使配置生效:source /etc/profile

使用命令:mvn -v,查看配置是否生效

image.png

5      编译RocketMQ 4.0.0

cd rocketmq-4.0.0-incubating

mvn clean package install -Prelease-all assembly:assembly -U 

image.png

5.1      启动NameServer:

cd target/apache-rocketmq-all

nohup sh bin/mqnamesrv &

tail -f ~/logs/rocketmqlogs/namesrv.log

image.png

5.2      启动Broker:

nohup sh bin/mqbroker -n localhost:9876 aut**ateTopicEnable=true &

tail -f ~/logs/rocketmqlogs/broker.log

image.png

5.3      启动示例生产者:

export NAMESRV_ADDR=localhost:9876

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

image.png

5.4      启动示例消费者:

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

image.png

6      常见问题

1、编译时提示:No compiler is provided in this environment.

说明java环境缺少JDK 只有JRE,不能编译。需安装JDK环境

2、启动时报错

nohup sh bin/mqbroker -n localhost:9876 aut**ateTopicEnable=true &

使用以上命令时,如遇错误,不会有显示

使用 sh bin/ mqbroker

出现以下问题

image.png

原因:rocketmq默认jvm配置较高,导致内存不足。

解决:

1、     变更虚拟机规格,选择16G内存的规格

2、     修改运行脚本

runbroker.sh

JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"

改成:

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m

同理,运行其他命令也建议先使用sh来运行,解决方法如下

runserver.sh

JAVA_OPT="${JAVA_OPT} -server –Xms4G –Xmx4G –Xmn2G -XX:PermSize=128m -XX:MaxPermSize=320m"

改成

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:PermSize=128m -XX:MaxPermSize=320m"

tools.sh

JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn256m -XX:PermSize=128m -XX:MaxPermSize=128m"

改成

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:PermSize=128m -XX:MaxPermSize=128m"

3、  启动生产者/消费者报错

原因:经调试发现org.apache.rocketmq.example.quickstart.Producer中

image.png

无法获取name-server的地址

手动修改为

image.png

并重新编译

大家实际安装遇到任何问题,可以到混合云社区提问:bbs.huaweicloud.com/forum/forum…

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。