RocketMQ安装
1、下载
RocketMQ的官⽹地址: http://rocketmq.apache.org 。
在下载⻚⾯可以获取RocketMQ的源码包以及运⾏包。下载⻚⾯地址:https://rocketmq.apache.org/download。


1、上传到服务器,这里我上传到 /usr/local
2、解压压缩包
# 如果未安装unzip,安装 unzip 命令用于解压压缩包
yum -y install unzip
# 解压压缩包 rocketmq-all-5.3.0-bin-release.zip:
unzip rocketmq-all-5.3.0-bin-release.zip
- Benchmark:包含一些性能测试的脚本;
- Bin:可执行文件目录;
- Conf:配置文件目录;
- Lib:第三方依赖;
- LICENSE:授权信息;
- NOTICE:版本公告。
默认情况下,RocketMQ建议的运⾏环境需要⾄少12G的内存,这是⽣产环境⽐较理想的资源配置。但是,学 习阶段,如果你的服务器没有这么⼤的内存空间,那么就需要做⼀下调整。进⼊bin⽬录,对其中的 runserver.sh和runbroker.sh两个脚本进⾏⼀下修改。
使⽤vi runserver.sh指令,编辑这个脚本,找到下⾯的⼀⾏配置,调整Java进程的内存⼤⼩。
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -XX:MetaspaceSize=128m -
XX:MaxMetaspaceSize=320m"
接下来,同样调整runbroker.sh中的内存⼤⼩。
JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g"
修改为:
JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g"
修改配置时,注意要根据你的JDK版本调整对应的配置⾏。RocketMQ是⼀个典型的Java应⽤,所以需要提前安装JDK。我们这⾥采⽤的是1.8版本。JDK的安装过程略。⽣产环境不建议调整。这⼀系列参数实际上就是RocketMQ的JVM调优结果。
第⼀步:启动nameserver服务。
cd /app/rocketmq/rocketmq-all-5.3.0-bin-release
nohup bin/mqnamesrv &
指令执⾏后,会⽣成⼀个nohup.out的⽇志⽂件。在这个⽇志⽂件⾥如果看到下⾯这⼀条关键⽇志,就表示 nameserver服务启动成功了。
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, address 0.0.0.0:9876
接下来,可以通过jsp指令进⾏验证。使⽤jps指令后,可以看到有⼀个NamesrvStartup的进程运⾏,也表示 nameserver服务启动完成。
第⼆步:启动broker服务
broker也是⼀个Java服务,只需要调整conf⽬录下的broker.conf⽂件,进⾏⼀些定制。然后就可以启动了。
在启动broker服务前,需要先指定NameServer的服务地址。RocketMQ可以使⽤⼀个NAMESRV_ADDR的环 境变量指定NameServer服务地址。
通过vi ~/.bash_profile添加以下配置。然后使⽤source ~/.bash_profile让配置⽣效。
export NAMESRV_ADDR='localhost:9876'
9876是nameserver的默认服务端⼝。
然后也可以⽤之前的⽅式启动broker服务。启动broker服务的指令是mqbroker。
cd /app/rocketmq/rocketmq-all-5.3.0-bin-release
nohup bin/mqbroker &
启动完成后,同样检查nohup.out⽇志⽂件,有如下⼀条关键⽇志,就表示broker服务启动正常了。
The broker[xxxxx] boot success. serializeType=JSON and name server is localhost:9876
注:1、在实际服务部署时,通常会将RocketMQ的部署地址添加到环境变量当中。例如使⽤vi ~/.bash_profile指令,添加以下内容。
export ROCKETMQ_HOME=/usr/local/rocketmq/rocketmq-all-5.3.0-bin-release
PATH=$ROCKETMQ_HOME/bin:$PATH
export PATH
这样就不必每次进⼊RocketMQ的安装⽬录了。直接可以使⽤mqnamesrv 和mqbroker指令。
停⽌RocketMQ服务可以通过mqshutdown指令进⾏
mqshutdown namesrv # 关闭nameserver服务
mqshutdown broker # 关闭broker服务
同样使⽤jps指令可以检查服务的启动状态。使⽤jps指令后,可以看到⼀个名为BrokerStartup的进程,则表示 broker服务启动完成。
2、搭建可视化管理平台
RocketMQ的社区就提供了⼀个图形化的管理控制台Dashboard,可以⽤可视化的⽅式直接观测并管理 RocketMQ的运⾏过程。 Dashboard服务并不在RocketMQ的运⾏包中,需要到RocketMQ的官⽹下载⻚⾯单独下载。

这⾥只提供了源码,并没有提供直接运⾏的jar包。将源码下载下来后,需要解压并进⼊对应的⽬录,使⽤ maven进⾏编译。(需要提前安装maven客户端)
mvn clean package -Dmaven.test.skip=true
编译完成后,在源码的target⽬录下会⽣成可运⾏的jar包rocketmq-dashboard-1.0.1-SNAPSHOT.jar。接下 来可以将这个jar包上传到服务器上。我们上传到/usr/local/rocketmq/rocketmq-dashboard⽬录下 接下来我们需要在jar包所在的⽬录下创建⼀个application.yml配置⽂件,在配置⽂件中做如下配置:
rocketmq:
config:
namesrvAddrs:
- 192.168.65.112:9876
主要是要指定nameserver的地址。关于这个配置⽂件中更多的配置选项,可以参考⼀下dashboard源码当中的application.yml配置⽂ 件。
接下来就可以通过java指令执⾏这个jar包,启动管理控制台服务。
java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar 1>dashboard.log 2>&1 &
应⽤启动完成后,会在服务器上搭建起⼀个web服务,我们就可以通过访问http://192.168.232.128 查 看到管理⻚⾯

如果访问不了检查防火墙相关得端口是否开放
查看防火墙状态
systemctl status firewalld
关闭防火墙
systemctl stop firewalld
开起防火墙
systemctl start firewalld
开放指定端口
firewall-cmd --zone=public --add-port=8081/tcp --permanent
重启防火墙:
firewall-cmd --reload

浙公网安备 33010602011771号