安装MQ前需要安装maven
JDK最好1.8+
机器的内存最好要很大很大(我的是2G的内存+8G的swap全都用完了)
maven下载地址 http://maven.apache.org/download.cgi
1:我下载的是 apache-maven-3.6.3-bin.tar.gz 包,将此包上传至 /maven目录下解压
2:修改系统环境变量 /etc/profile 添加如下
export MAVEN_HOME=/maven/apache-maven-3.6.3
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
保存退出 source /etc/profile 使之生效
3:mvn -v 查看maven版本
4:rocketmq下载地址 https://github.com/apache/rocketmq/releases
我下载的是下图这个版本的安装包
5:上传此安装包之 /rocketmq 下并解压
6:cd /rocketmq/rocketmq-rocketmq-all-4.8.0
7:使用maven编译rocketmq
[root@cainiaoke1 rocketmq-rocketmq-all-4.8.0]# mvn -Prelease-all -DskipTests clean install -U
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Apache RocketMQ 4.8.0 [pom]
[INFO] rocketmq-logging 4.8.0 [jar]
[INFO] rocketmq-remoting 4.8.0 [jar]
[INFO] rocketmq-common 4.8.0 [jar]
[INFO] rocketmq-client 4.8.0 [jar]
[INFO] rocketmq-store 4.8.0 [jar]
[INFO] rocketmq-srvutil 4.8.0 [jar]
[INFO] rocketmq-filter 4.8.0 [jar]
[INFO] rocketmq-acl 4.8.0 [jar]
[INFO] rocketmq-broker 4.8.0 [jar]
[INFO] rocketmq-tools 4.8.0 [jar]
[INFO] rocketmq-namesrv 4.8.0 [jar]
[INFO] rocketmq-logappender 4.8.0 [jar]
[INFO] rocketmq-test 4.8.0 [jar]
[INFO] rocketmq-openmessaging 4.8.0 [jar]
[INFO] rocketmq-example 4.8.0 [jar]
[INFO] rocketmq-distribution 4.8.0 [pom]
[INFO]
[INFO] ------------------< org.apache.rocketmq:rocketmq-all >------------------
[INFO] Building Apache RocketMQ 4.8.0 4.8.0 [1/17]
[INFO] --------------------------------[ pom ]---------------------------------
8:编译成功后会出现下面的结果(我编译的时候等了很长时间)
[INFO] Reactor Summary for Apache RocketMQ 4.8.0 4.8.0:
[INFO]
[INFO] Apache RocketMQ 4.8.0 .............................. SUCCESS [04:34 min]
[INFO] rocketmq-logging 4.8.0 ............................. SUCCESS [01:19 min]
[INFO] rocketmq-remoting 4.8.0 ............................ SUCCESS [ 13.191 s]
[INFO] rocketmq-common 4.8.0 .............................. SUCCESS [ 10.152 s]
[INFO] rocketmq-client 4.8.0 .............................. SUCCESS [ 14.121 s]
[INFO] rocketmq-store 4.8.0 ............................... SUCCESS [ 7.077 s]
[INFO] rocketmq-srvutil 4.8.0 ............................. SUCCESS [ 0.629 s]
[INFO] rocketmq-filter 4.8.0 .............................. SUCCESS [ 5.125 s]
[INFO] rocketmq-acl 4.8.0 ................................. SUCCESS [ 4.160 s]
[INFO] rocketmq-broker 4.8.0 .............................. SUCCESS [ 3.308 s]
[INFO] rocketmq-tools 4.8.0 ............................... SUCCESS [ 2.294 s]
[INFO] rocketmq-namesrv 4.8.0 ............................. SUCCESS [ 0.829 s]
[INFO] rocketmq-logappender 4.8.0 ......................... SUCCESS [ 2.617 s]
[INFO] rocketmq-test 4.8.0 ................................ SUCCESS [ 6.045 s]
[INFO] rocketmq-openmessaging 4.8.0 ....................... SUCCESS [ 2.621 s]
[INFO] rocketmq-example 4.8.0 ............................. SUCCESS [ 1.237 s]
[INFO] rocketmq-distribution 4.8.0 ........................ SUCCESS [03:19 min]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 10:27 min
[INFO] Finished at: 2021-02-22T23:38:13-08:00
[INFO] ------------------------------------------------------------------------
[root@cainiaoke1 rocketmq-rocketmq-all-4.8.0]#
9:编译成功之后 cd ./distribution/target/rocketmq-4.8.0/rocketmq-4.8.0 这个就是rocketmq的主目录了
10:配置系统环境变量 /etc/profile 添加如下内容
export rocketmq=/rocketmq/rocketmq-rocketmq-all-4.8.0/distribution/target/rocketmq-4.8.0/rocketmq-4.8.0
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$rocketmq/bin 这个是在maven的基础上添加的,保存退出 source使之生效
11:创建rocketmq日志目录 /rocketmq/rocketmq-rocketmq-all-4.8.0/rocketmqlogs
12:后台启动mq
nohup mqnamesrv > /rocketmq/rocketmq-rocketmq-all-4.8.0/rocketmqlogs/namesrv.log 2>&1 &
[root@cainiaoke1 rocketmqlogs]# tail -f namesrv.log
nohup: ignoring input
Java HotSpot(TM) 64-Bit Server VM warning: Using the DefNew young collector with the CMS collector is deprecated and will likely be removed in a future release
Java HotSpot(TM) 64-Bit Server VM warning: UseCMSCompactAtFullCollection is deprecated and will likely be removed in a future release.
The Name Server boot success. serializeType=JSON
nohup mqbroker -n localhost:9876 > /rocketmq/rocketmq-rocketmq-all-4.8.0/rocketmqlogs/broker.log 2>&1 & (broker启动之后要等一会才会有日志生成)
[root@cainiaoke1 rocketmqlogs]# tail -f broker.log
nohup: ignoring input
The broker[cainiaoke1, 192.168.190.130:10911] boot success. serializeType=JSON and name server is localhost:9876
13:停止mq
cd /rocketmq/rocketmq-rocketmq-all-4.8.0/distribution/target/rocketmq-4.8.0/rocketmq-4.8.0/bin 可以看到这里面都是脚本
mqshutdown namesrv 停止namesrv
mqshutdown broker 停止broker
14:mq的配置文件
cd /rocketmq/rocketmq-rocketmq-all-4.8.0/distribution/target/rocketmq-4.8.0/rocketmq-4.8.0/conf
2m-2s-async 多master多slave 异步
2m-2s-sync 多master多slave 同步
2m-noslave 多master
MQ技术博大精深,安装完毕之后请看其他人写的帖子自己琢磨研究