rocketmq集群搭建

来源:互联网 发布:mysql官方手册中文版 编辑:程序博客网 时间:2024/06/05 17:25

上一章讲解了rocketmq的消息发送与接收,那么这篇文章讲解如何安装rocketmq

单机搭建

1. 安装包准备

上传apache-rocketmq.tar.gz至/opt目录
http://download.csdn.net/download/xxzblog/10124706

机器ip:192.168.1.101

2. 安装

cd /opttar -xzf apache-rocketmq.tar.gzmv apache-rocketmq rocketmqmkdir /opt/rocketmq/logscd /opt/rocketmq/bin && dos2unix *

3. 环境配置

cp /opt/rocketmq/conf/broker.conf /opt/rocketmq/conf/broker.propertiesecho "brokerIP1=192.168.1.101" > /opt/rocketmq/conf/broker.propertiesvi /opt/rocketmq/mqnamesrv-start.shexport ROCKETMQ_HOME=/opt/rocketmqnohup sh /opt/rocketmq/bin/mqnamesrv > /opt/rocketmq/logs/mqnamesrv.log 2>&1 &:xchmod u+x /opt/rocketmq/mqnamesrv-start.shvi /opt/rocketmq/mqbroker-start.shexport ROCKETMQ_HOME=/opt/rocketmqnohup sh /opt/rocketmq/bin/mqbroker -n 192.168.1.101:9876 -c /opt/rocketmq/conf/broker.properties > /opt/rocketmq/logs/mqbroker.log 2>&1 &:xchmod u+x /opt/rocketmq/mqbroker-start.sh

集群搭建

1, 2同单机一样

本文配置2m-noslave,机器ip:192.168.1.101,192.168.1.102

3.环境配置

/opt/rocketmq/conf/2m-noslave/broker-a.properties

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

/opt/rocketmq/conf/2m-noslave/broker-b.properties

#所属集群名字  brokerClusterName=DefaultCluster#broker名字,注意此处不同的配置文件填写的不一样brokerName=broker-b#0 表示 Master,>0 表示 SlavebrokerId=0#nameServer地址,分号分割namesrvAddr=192.168.1.101:9876;192.168.1.102:9876#关键brokerIP1=192.168.1.102#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数defaultTopicQueueNums=4#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭autoCreateTopicEnable=true#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭autoCreateSubscriptionGroup=true#Broker 对外服务的监听端口listenPort=10911#删除文件时间点,默认凌晨 4点deleteWhen=04#文件保留时间,默认48小时fileReservedTime=48#commitLog每个文件的大小默认1GmapedFileSizeCommitLog=1073741824#ConsumeQueue每个文件默认存30W条,根据业务情况调整mapedFileSizeConsumeQueue=300000#destroyMapedFileIntervalForcibly=120000#redeleteHangedFileInterval=120000#检测物理文件磁盘空间diskMaxUsedSpaceRatio=88#这里是我的 日志配置#存储路径storePathRootDir=/opt/rocketmq/store#commitLog 存储路径storePathCommitLog=/opt/rocketmq/store/commitlog#消费队列存储路径存储路径storePathConsumeQueue=/opt/rocketmq/store/consumequeue#消息索引存储路径storePathIndex=/opt/rocketmq/store/index#checkpoint 文件存储路径storeCheckpoint=/opt/rocketmq/store/checkpoint#abort 文件存储路径abortFile=/opt/rocketmq/store/abort#限制的消息大小  maxMessageSize=65536#flushCommitLogLeastPages=4#flushConsumeQueueLeastPages=2#flushCommitLogThoroughInterval=10000#flushConsumeQueueThoroughInterval=60000#Broker 的角色#- ASYNC_MASTER 异步复制Master#- SYNC_MASTER 同步双写Master#- SLAVEbrokerRole=ASYNC_MASTER#刷盘方式#- ASYNC_FLUSH 异步刷盘#- SYNC_FLUSH 同步刷盘flushDiskType=ASYNC_FLUSH#checkTransactionMessageEnable=false#发消息线程池数量#sendMessageThreadPoolNums=128#拉消息线程池数量#pullMessageThreadPoolNums=128

启动nameserver脚本[两台机器]

cd /opt/rocketmq/binnohup sh mqnamesrv &

启动BrokerServer

192.168.1.101

nohup sh /opt/rocketmq/bin/mqbroker -c /opt/rocketmq/conf/2m-noslave/broker-a.properties > /opt/rocketmq/logs/mqbroker.log  2>&1 &

192.168.1.102

nohup sh /opt/rocketmq/bin/mqbroker -c /opt/rocketmq/conf/2m-noslave/broker-b.properties > /opt/rocketmq/logs/mqbroker.log  2>&1 &

备注:可以执行对os的优化/opt/rocketmq/bin/os.sh

rocketmq-console搭建

1.安装包准备

上传rocketmq-console-ng-1.0.0.jar至/opt/rocketmq-console
http://download.csdn.net/download/xxzblog/10124810

2. 启动脚本

vi /opt/rocketmq-console/start.shnohup java -jar rocketmq-console-ng-1.0.0.jar --server.port=12581 --rocketmq.config.namesrvAddr=192.168.1.101:9876,192.168.1.102:9876 >/opt/rocketmq-console/run.log 2>&1 &:xchmod u+x /opt/rocketmq-console/start.sh

3. 执行脚本

/opt/rocketmq-console/start.sh

4. 验证是否成功

浏览器打开:http://127.0.0.1:12581

整个rocketmq搭建就结束了

原创粉丝点击