共计 2721 个字符,预计需要花费 7 分钟才能阅读完成。
Apache RocketMQ™是一个开源的分布式消息传递和流数据平台。下面记录在 CentOS 7 安装 RocketMQ 4.4 及相关的注意事项。
一、安装 maven
RocketMQ 依赖 maven 打包,所以先要在虚拟机中安装 maven,我使用的是 v3.3.9。
1:进入指定目录下载 maven 包
1 cd /usr/local
2 wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
2:解压并重新命名文件夹
1 tar -zxvf apache-maven-3.3.9-bin.tar.gz
2
3 mv apache-maven-3.3.9 /usr/local/maven3
3:修改仓库地址为阿里云,不修改下载依赖的时候总报超时
1 cd /usr/local/maven3/conf
2
3 vim settings.xml
在中间偏下的位置添加 <mirror> 标签(默认是注释的)
1 <mirror>
2 <id>alimaven</id>
3 <name>aliyun maven</name>
4 <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
5 <mirrorOf>central</mirrorOf>
6 </mirror>
4:配置环境变量
1 vim /etc/profile
添加 maven_home
1 export M2_HOME=/usr/local/maven3
2 export PATH=$PATH:$Java_HOME/bin:$M2_HOME/bin
5:保存退出(shift +zz)刷新配置文件生效
1 source /etc/profile
6:检查安装结果
mvn -v
二、安装 RocketMQ
1:下载源码的 zip 压缩包,官网上提供了 5 种镜像下载链接,一个推荐镜像链接,两个 PGP 签名以及这两个的备份,下载之后解压到 /usr/local/ 下,然后删除 zip 文件
1 cd /usr/local
2
3 wget http://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.4.0/rocketmq-all-4.4.0-source-release.zip
4
5 unzip -d /usr/local/ rocketmq-all-4.4.0-source-release.zip
6
7 rm -rf rocketmq-all-4.4.0-source-release.zip
2:使用 maven 打包,这个要打好久
1 cd /usr/local/rocketmq-all-4.4.0/
2
3 mvn -Prelease-all -DskipTests clean install -U
3:RocketMQserver 默认初始内存、最大内存都是 4g,新生代内存是 2g,broker 是 8g、8g、4g,我的笔记本四个虚拟机集群每个都是 1g,所以需要改小点,触发 fullGC 的阈值可以不变。根据个人情况修改 JAVA_OPT=”${JAVA_OPT} -server 一行参数
1 vim distribution/target/apache-rocketmq/bin/runserver.sh
2 vim distribution/target/apache-rocketmq/bin/runbroker.sh
4:将 nameserver 地址添加到环境变量中
1 vim /etc/profile
2
3 export NAMESRV_ADDR=127.0.0.1:9876
4
5 # 刷新配置文件
6 source /etc/profile
5:后台运行 nameserver,将日志重定向到指定文件
1 nohup sh mqnamesrv > /usr/local/rocketdata/namesrv.log 2>&1&
2
3 #查看启动日志
4 tail -f /usr/local/rocketdata/namesrv.log
运行 broker
1 nohup sh mqbroker > /usr/local/rocketdata/broker.log 2>&1&
2
3 #查看启动日志
4 tail -f /usr/local/rocketdata/broker.log
6:新开窗口,一个生产一个消费,测试消费。警告忽略
1 #窗口 1
2 sh tools.sh org.apache.rocketmq.example.quickstart.Producer
3 #窗口 2
4 sh tools.sh org.apache.rocketmq.example.quickstart.Consumer
三、控制台安装
1:因为控制台源码在 github 上,我这里在虚拟中安装 git,直接 down 源码,因为 console 是 springboot 项目,也可以下载到本地修改配置文件打包,将打完的 jar 包传到虚拟机中。
1 #使用 yum 安装 git
2 yum install git
2:进入 /usr/local 下
git clone https://github.com/apache/rocketmq-externals
3:rocketmq-externals 里面有所有 Apache RocketMq 外部项目,有的还在孵化中,我主要是使用 rocketmq-console,进入到 console 项目中,修改 resources 文件夹下面的配置文件
1 cd /usr/local/rocketmq-externals/rocketmq-console/src/main/resources
2
3 #查看配置文件名称
4 ll
5
6 #打开配置文件
7 vim application.properties
修改以下配置:
1 #服务端口号
2 server.port=8090
3 #nameserver 服务地址
4 rocketmq.config.namesrvAddr=127.0.0.1:9876
5 #rocketmq 数据路径,由于联系使用,都放在 usr/local 下了
6 rocketmq.config.dataPath=/usr/local/rocketdata/console
4:正常的 maven 项目打包
# 打包并且跳过测试
mvn clean install -Dmaven.test.skip=true
5:后台启动,重定向日志文件
1 nohup java -jar rocketmq-console-ng-1.0.1.jar > /usr/local/rocketdata/console/console.out 2>&1&
6:启动成功后在本机访问 ip+ 端口进入控制台
: