官网地址
https://rocketmq.apache.org/docs/quick-start/
rocketmq是java开发的,所以安装需要环境包括:
- 64bit OS, Linux/Unix/Mac is recommended;(Windows user see guide below)
- 64bit JDK 1.8+;
- Maven 3.2.x;
下载源码包并解压
wget https://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.8.0/rocketmq-all-4.8.0-source-release.zip
unzip rocketmq-all-4.8.0-source-release.zip
重命名一下
mv rocketmq-all-4.8.0-source-release rocketmq4.8.0
编译源码
解压后发现有pom.xml文件,所以在该目录下使用maven进行编译
安装maven
http://maven.apache.org/download.cgi
下载并上传到linux解压
tar -zxf apache-maven-3.6.3-bin.tar.gz
cd apache-maven-3.6.3-bin/conf
修改settings.xml的mirrors成阿里云的镜像
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
配置maven环境变量
修改 /ext/profile
export M2_HOME=/home/yat/maven/apache-maven-3.6.3
export PATH=$PATH:$M2_HOME/bin
source /etx/profile
mvn命令可以使用了
继续使用maven编译源码
mvn -Prelease-all -DskipTests clean install -U
编译后会在distribution下生成target文件
cd distribution/target/rocketmq-4.8.0/rocketmq-4.8.0/bin
启动nameserver
./mqnamesrv
runserver.sh是nameserver的配置文件,初始的内存分配地址为4g,可自己调整
启动broker
./mqbroker
runbroker.sh是broker的配置文件,默认内存为8g
测试消息发送
./tools.sh org.apache.rocketmq.example.quickstart.Producer
无法连接nameserver
vim tools.sh
添加
export NAMESRV_ADDR=localhost:9876
该export 语句要加在其他export后面,不能加在最后,亲测加在最后还是会连不上nameserver。另外启动broker的时候要注册到nameserver上
./mqbroker -n localhost:9876
测试消息消费
./tools.sh org.apache.rocketmq.example.quickstart.Consumer
控制台编译安装
https://github.com/apache/rocketmq-externals/tree/master/rocketmq-console
rocketmq-externals是一些插件库,其中控制台是rocketmq-console这个项目。
使用maven编译源码
mvn clean package -Dmaven.test.skip=true
在编译好的target中,会生成一个rocketmq-console-ng-2.0.0.jar的包,将包移至mq目录下
java -jar rocketmq-console-ng-2.0.0.jar
启动控制台,控制台默认端口是8080,如果出现端口占用的情况,可以去jar包下找到如下路径的文件:
rocketmq-console-ng-2.0.0.jar\BOOT-INF\classes\application.properties
修改端口号就可以了
点击运维
在这里添加nameserver的地址使得客户端可以连接到nameserver。(输完记得回车,不然更新不上去)