欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

RocketMQ(二)Linux搭建RocketMQ实例服务

时间:2023-07-16
目录

1、搭建RocketMQ2、启动RocketMQ3、关闭rocketmq4、测试rocketmq5、Broker更多配置及启动6、WEB监控平台搭建 1、搭建RocketMQ

注意:云服务器需要开启10911、10909、9876、9875(web管理页面)端口

1、下载RocketMQ
地址:https://archive.apache.org/dist/rocketmq/ ,选择:rocketmq-all-xxx-bin-release.zip 版本进行下载

2、安装

文档搭建版本为 4.9.2

操作目录:cd /opt/rocketmq

将下载好的rocketmq包,上传到/opt/rocketmq目录下

直接解压压缩包:

unzip rocketmq-all-4.9.2-bin-release.zip

目录结构:

bin:启动脚本,包括shell脚本和CMD脚本conf:实例配置文件 ,包括broker配置文件、logback配置文件等lib:依赖jar包,包括Netty、commons-lang、FastJSON等

建立日志目录:

mkdir /opt/rocketmq/rocketmq-4.9.2/logs -p

配置环境变量:

vim /etc/profile# 追加以下配置export rocketmq=/opt/rocketmq/rocketmq-4.9.2export PATH=$PATH:$rocketmq/bin# 刷新配置source /etc/profile

2、启动RocketMQ

1、修改内存大小
RocketMQ启动时可能会存在内存占过大,编辑runbroker.sh和runserver.sh修改默认JVM大小;

cd /opt/rocketmq/rocketmq-4.9.2/bin

修改runbroker.sh:

vim runbroker.shJAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m"


修改runserver.sh:

vim runserver.shJAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:metaspaceSize=128m -XX:MaxmetaspaceSize=320m"


2、启动NameServer

# 进入目录cd /opt/rocketmq/rocketmq-4.9.2# 启动命令nohup sh bin/mqnamesrv &>/opt/rocketmq/rocketmq-4.9.2/logs/mqnamesrv.log 2>&1 &

查看启动日志:

tailf logs/mqnamesrv.log


3、启动Broker

修改配置:

vim /opt/rocketmq/rocketmq-4.9.2/conf/broker.conf# 最后加上,当前机器公网IPbrokerIP1=

# 进入目录cd /opt/rocketmq/rocketmq-4.9.2# 启动Broker,-n 指向NameServer地址,多个由`;`分开,也可以在配置文件中设置nohup sh bin/mqbroker -n 162.14.119.135:9876 -c /opt/rocketmq/rocketmq-4.9.2/conf/broker.conf autoCreateTopicEnable=true &>/opt/rocketmq/rocketmq-4.9.2/logs/broker.log 2>&1 &

查看启动日志:

tailf logs/broker.log

3、关闭rocketmq

# 进入目录cd /opt/rocketmq/rocketmq-4.9.2# 1.关闭NameServersh bin/mqshutdown namesrv# 2.关闭Brokersh bin/mqshutdown broker

4、测试rocketmq

1、发送消息

# 进入目录cd /opt/rocketmq/rocketmq-4.9.2# 1.设置临时环境变量export NAMESRV_ADDR=162.14.119.135:9876# 2.使用安装包的Demo发送消息sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

2、接收消息

# 1.设置环境变量export NAMESRV_ADDR=162.14.119.135:9876# 2.接收消息sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

如果控制台不报错,并且打印打量日志信息则表示成功

5、Broker更多配置及启动

默认的broker.conf中,配置项较少,可以自己通过建立properties文件配置更多属性,启动时配置文件执行properties即可:

# 指定配置文件启动nohup sh bin/mqbroker -c /opt/rocketmq/rocketmq-4.9.2/conf/broker.properties &>/opt/rocketmq/cluster/logs/broker.log 2>&1 &

properties文件配置内容:

#所属集群名字brokerClusterName=rocketmq-cluster#broker名字,注意此处不同的配置文件填写的不一样brokerName=broker-a#0 表示 Master,>0 表示 SlavebrokerId=0#nameServer地址,分号分割namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数defaultTopicQueueNums=4#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭autoCreateTopicEnable=true#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭autoCreateSubscriptionGroup=true#Broker 对外服务的监听端口listenPort=10911#删除文件时间点,默认凌晨 4点deleteWhen=04#文件保留时间,默认 48 小时fileReservedTime=120#commitLog每个文件的大小默认1GmapedFileSizeCommitLog=1073741824#ConsumeQueue每个文件默认存30W条,根据业务情况调整mapedFileSizeConsumeQueue=300000#destroyMapedFileIntervalForcibly=120000#redeleteHangedFileInterval=120000#检测物理文件磁盘空间diskMaxUsedSpaceRatio=88#存储路径storePathRootDir=/usr/local/rocketmq/store#commitLog 存储路径storePathCommitLog=/usr/local/rocketmq/store/commitlog#消费队列存储路径存储路径storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue#消息索引存储路径storePathIndex=/usr/local/rocketmq/store/index#checkpoint 文件存储路径storeCheckpoint=/usr/local/rocketmq/store/checkpoint#abort 文件存储路径abortFile=/usr/local/rocketmq/store/abort#限制的消息大小maxMessageSize=65536#flushCommitLogLeastPages=4#flushConsumeQueueLeastPages=2#flushCommitLogThoroughInterval=10000#flushConsumeQueueThoroughInterval=60000s

6、WEB监控平台搭建

1、下载安装包

注意:因为是下载源码并且需要进行maven打包,所以在本地下载,比如:下载到D盘

下载rocketmq-externals-rocketmq-console-1.0.0.zip包

地址:https://github.com/apache/rocketmq-externals/tags

2、修改配置文件

# 在进行解压以后,进入文件目录,比如:D:rocketmq-externals-rocketmq-console-1.0.0/rocketmq-console/src/main/resources#编辑文本application.properties#配置启动端口,任意不冲突端口,需要开启防火墙和安全组server.port=9875#rocket服务地址,多个由逗号分开rocketmq.config.namesrvAddr=111.229.160.175:9876#数据路径,自己配置rocketmq.config.dataPath=/tmp/rocketmq-console/data

3、maven打包

# 在进行解压以后,进入文件目录,比如:D:rocketmq-externals-rocketmq-console-1.0.0/rocketmq-consolemvn clean package -Dmaven.test.skip=true

5、运行
在服务器的/opt/rocketmq创建web目录及日志目录

mkdir /opt/rocketmq/web -pmkdir /opt/rocketmq/web/logs -p

打包完成后在rocketmq-console/target目录下将rocketmq-console-ng-1.0.0.jar拷贝到服务器中的/opt/rocketmq/web

创建启动脚本

vim /opt/rocketmq/web/start.sh

内容如下:

nohup java -jar rocketmq-console-ng-1.0.0.jar &>/opt/rocketmq/web/logs/console.log 2>&1 &

创建停止脚本

vim /opt/rocketmq/web/stop.sh

内容如下:

ps -ef |grep rocketmq-console-ng-1.0.0.jar |awk '{print $2}'|xargs kill -9

6、测试访问
运行start.sh启动控制台

cd /opt/rocketmq/web#启动脚本sh start.sh

地址:http://xxx.xxx.xxx:9875

效果:

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。