RocketMQ3.2.6环境搭建

0.074字数 1169阅读 3297

RocketMQ相关文件及配置信息,

链接: https://pan.baidu.com/s/1kV019l1 密码: 8ete

RocketMQ不做多介绍,自行Google。本文基于CentOS7, Java 1.8.0_144。



搭建机器:

192.168.100.24,192.168.100.25。两台机器各部署一个NameServer、BrokerServer。

1、基础组件准备【两台机器】

JDK,alibaba-rocketmq-3.2.6.tar.gz,rocketmq-console.war

java环境、apache-tomcat自行准备。

注意防火墙端口9876是否开放,不然Broker不能互通。


2、hosts添加信息【两台机器】

文件:/etc/hosts

192.168.100.24.rocketmq-nameserv1

192.168.100.24 rocketmq-master1

192.168.100.24 rocketmq-nameserv2

192.168.100.24 rocketmq-master2

hosts配置

两台机器添加相同配置


查看是否能ping通

3、上传alibaba-rocketmq-3.2.6.tar.gz并解压【两台机器】

cd /usr/local/devTool

tar -zxvf alibaba-rocketmq-3.2.6.tar.gz

mv alibaba-rocketmq alibaba-rocketmq-3.2.6

ln -s alibaba-rocketmq-3.2.6 rocketmq


4、创建存储路径【两台机器】

cd /usr/local/devTool

mkdir -p rocketmq/store/{commitlog,consumequeue,index}


5、RocketMQ配置文件【两台机器】

vim /usr/local/devTool/rocketmq/conf/2m-noslave/broker-a.properties

vim /usr/local/devTool/rocketmq/conf/2m-noslave/broker-b.properties

配置信息:


#所属集群名字

brokerClusterName=rocketmq-cluster

#broker名字,注意此处不同的配置文件填写的不一样

brokerName=broker-a|broker-b

#0 表示 Master, >0 表示 Slave

brokerId=0

#nameServer地址,分号分割

namesrvAddr=192.168.100.24:9876;192.168.100.25:9876

#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数

defaultTopicQueueNums=4

#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭

autoCreateTopicEnable=true

#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭

autoCreateSubscriptionGroup=true

#Broker 对外服务的监听端口

listenPort=10911

#删除文件时间点,默认凌晨 4点

deleteWhen=04

#文件保留时间,默认 48 小时

fileReservedTime=120

#commitLog每个文件的大小默认1G

mapedFileSizeCommitLog=1073741824

#ConsumeQueue每个文件默认存30W条,根据业务情况调整

mapedFileSizeConsumeQueue=300000

#destroyMapedFileIntervalForcibly=120000

#redeleteHangedFileInterval=120000

#检测物理文件磁盘空间

diskMaxUsedSpaceRatio=88

#存储路径

storePathRootDir=/usr/local/devTool/rocketmq/store

#commitLog 存储路径

storePathCommitLog=/usr/local/devTool/rocketmq/store/commitlog

#消费队列存储路径存储路径

storePathConsumeQueue=/usr/local/devTool/rocketmq/store/consumequeue

#消息索引存储路径

storePathIndex=/usr/local/devTool/rocketmq/store/index

#checkpoint 文件存储路径

storeCheckpoint=/usr/local/devTool/rocketmq/store/checkpoint

#abort 文件存储路径

abortFile=/usr/local/devTool/rocketmq/store/abort

#限制的消息大小

maxMessageSize=65536

#flushCommitLogLeastPages=4

#flushConsumeQueueLeastPages=2

#flushCommitLogThoroughInterval=10000

#flushConsumeQueueThoroughInterval=60000

#Broker 的角色

#- ASYNC_MASTER 异步复制Master

#- SYNC_MASTER 同步双写Master

#- SLAVE

brokerRole=ASYNC_MASTER

#刷盘方式

#- ASYNC_FLUSH 异步刷盘

#- SYNC_FLUSH 同步刷盘

flushDiskType=ASYNC_FLUSH

#checkTransactionMessageEnable=false

#发消息线程池数量

#sendMessageThreadPoolNums=128

#拉消息线程池数量

#pullMessageThreadPoolNums=128


6.、修改日志配置文件【两台机器】

mkdir -p /usr/local/devTool/rocketmq/logs

cd /usr/local/devTool/rocketmq/conf && sed -i 's#${user.home}#/usr/local/devTool/rocketmq#g' *.xml


修改日志配置文件


7、修改启动脚本参数【两台机器】

7.1、修改Broker配置文件

vim /usr/local/devTool/rocketmq/bin/runbroker.sh


修改Broker配置文件

7.2、修改NameServer配置文件

vim /usr/local/devTool/rocketmq/bin/runserver.sh

修改NameServer配置文件

8、启动 NameServer 【两台机器】

cd /usr/local/devTool/rocketmq/bin

nohup sh mqnamesrv &

tail -f -n 500 /usr/local/devTool/rocketmq/logs/rocketmqlogs/namesrv.log


启动NameServer


9、启动 BrokerServer  A【192.168.100.24】

注意是broker-a.properties文件

cd /usr/local/devTool/rocketmq/bin

nohup sh mqbroker -c /usr/local/devTool/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2>&1 &

tail -f -n 500 /usr/local/devTool/rocketmq/logs/rocketmqlogs/broker.log


启动 BrokerServer  A


10、启动BrokerServer B【192.168.100.25】

注意是broker-b.properties文件

cd /usr/local/devTool/rocketmq/bin

nohup sh mqbroker -c /usr/local/devTool/rocketmq/conf/2m-noslave/broker-b.properties >/dev/null 2>&1 &

tail -f -n 500 /usr/local/devTool/rocketmq/logs/rocketmqlogs/broker.log


启动 BrokerServer  B


11、tomcat部署RocketMQ Console【任意一台机器】

上传rocketmq-console.war到tomcat,webapp目录下

上传rocketmq-console.war到tomcat,webapp目录下

11.1、解压unzip rocketmq-console.war

unzip rocketmq-console.war -d rocketmq-console

11.2、修改rocketmq-console配置文件

修改config.properties配置文件

rocketmq.namesrv.addr=192.168.100.24:9876;192.168.100.25:9876



11.3、启动tomcat

cd /usr/local/devTool/apache-tomcat-7.0.75/bin/

./startup.sh

浏览器访问: http://192.168.100.24:8080/rocketmq-console/cluster/list.do

12、数据清理【两台机器】

cd /usr/local/devTool/rocketmq/bin

sh mqshutdown broker

sh mqshutdown namesrv


--等待NameServer/Broker停止

rm -rf /usr/local/devTool/rocketmq/store

mkdir /usr/local/devTool/rocketmq/store

mkdir /usr/local/devTool/rocketmq/store/commitlog

mkdir /usr/local/devTool/rocketmq/store/consumequeue

mkdir /usr/local/devTool/rocketmq/store/index


--如果要重启NameServer和BrokerServer,按照上面步骤重启NameServer与BrokerServer

推荐阅读更多精彩内容