1,机器ip
软件版本
jdk-8u131-linux-x64.tar.gz
rocketmq-all-4.2.0-bin-release.zip
rocketmq-console-ng-1.0.0.jar
10.15.10.238 HNVM015238 nameserver1 rocketmq-master a rocketmq-slave b
10.15.10.239 HNVM015239 nameserver2 rocketmq-master b rocketmq-slave a
2,配置hosts
[[email protected] ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.15.10.238 rocketmq-nameserver1 10.15.10.238 rocketmq-master1 10.15.10.239 rocketmq-nameserver2 10.15.10.239 rocketmq-master2 10.15.10.239 rocketmq-slave1 10.15.10.238 rocketmq-slave2 10.15.10.238 HNVM015238 [[email protected] ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.15.10.238 rocketmq-nameserver1 10.15.10.238 rocketmq-master1 10.15.10.239 rocketmq-nameserver2 10.15.10.239 rocketmq-master2 10.15.10.239 rocketmq-slave1 10.15.10.238 rocketmq-slave2 10.15.10.239 HNVM015239
3,解压放到软件部署目录
/app/rocketmq,新建存储目录
配置Java,rocketmq 环境
export JAVA_HOME=/app/jdk1.8.0_131 export PATH=$JAVA_HOME/bin:/app/rocketmq/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
10.15.10.238 机器上操作,建立a-master 和 b-slave 目录
mkdir /app/rocketmq/broker-a-master/store
mkdir /app/rocketmq/broker-b-slave/store
cd /app/rocketmq/conf/2m-2s-sync
[[email protected] 2m-2s-sync]# cat broker-a.properties
#所属集群名字 brokerClusterName=rocketmq-ztqy-test #broker名字,注意此处不同的配置文件填写的不一样 brokerName=broker-a #0 表示 Master,>0 表示 Slave brokerId=0 #nameServer地址,分号分割 namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876 #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数 defaultTopicQueueNums=4 #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭 autoCreateTopicEnable=true #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭 autoCreateSubscriptionGroup=true #Broker 对外服务的监听端口 listenPort=10911 #删除文件时间点,默认凌晨 4点 deleteWhen=01 #文件保留时间,默认 48 小时 fileReservedTime=72 #commitLog每个文件的大小默认1G mapedFileSizeCommitLog=1073741824 #ConsumeQueue每个文件默认存30W条,根据业务情况调整 mapedFileSizeConsumeQueue=300000 #destroyMapedFileIntervalForcibly=120000 #redeleteHangedFileInterval=120000 #检测物理文件磁盘空间 diskMaxUsedSpaceRatio=88 #存储路径 storePathRootDir=/app/rocketmq/broker-a-master/store #commitLog 存储路径 storePathCommitLog=/app/rocketmq/broker-a-master/store/commitlog #消费队列存储路径存储路径 storePathConsumeQueue=/app/rocketmq/broker-a-master/store/consumequeue #消息索引存储路径 storePathIndex=/app/rocketmq/broker-a-master/store/index #checkpoint 文件存储路径 storeCheckpoint=/app/rocketmq/broker-a-master/store/checkpoint #abort 文件存储路径 abortFile=/app/rocketmq/broker-a-master/store/abort #限制的消息大小 maxMessageSize=65536 #flushCommitLogLeastPages=4 #flushConsumeQueueLeastPages=2 #flushCommitLogThoroughInterval=10000 #flushConsumeQueueThoroughInterval=60000 #Broker 的角色 #- ASYNC_MASTER 异步复制Master #- SYNC_MASTER 同步双写Master #- SLAVE brokerRole=SYNC_MASTER #刷盘方式 #- ASYNC_FLUSH 异步刷盘 #- SYNC_FLUSH 同步刷盘 flushDiskType=SYNC_FLUSH #checkTransactionMessageEnable=false #发消息线程池数量 #sendMessageThreadPoolNums=128 #拉消息线程池数量 #pullMessaeThreadPoolNums=128
[[email protected] 2m-2s-sync]# cat broker-b-s.properties
#所属集群名字 brokerClusterName=rocketmq-ztqy-test #broker名字,注意此处不同的配置文件填写的不一样 brokerName=broker-b #0 表示 Master,>0 表示 Slave brokerId=1 #nameServer地址,分号分割 namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876 #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数 defaultTopicQueueNums=4 #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭 autoCreateTopicEnable=true #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭 autoCreateSubscriptionGroup=true #Broker 对外服务的监听端口 listenPort=10920 #删除文件时间点,默认凌晨 4点 deleteWhen=01 #文件保留时间,默认 48 小时 fileReservedTime=72 #commitLog每个文件的大小默认1G mapedFileSizeCommitLog=1073741824 #ConsumeQueue每个文件默认存30W条,根据业务情况调整 mapedFileSizeConsumeQueue=300000 #destroyMapedFileIntervalForcibly=120000 #redeleteHangedFileInterval=120000 #检测物理文件磁盘空间 diskMaxUsedSpaceRatio=88 #存储路径 storePathRootDir=/app/rocketmq/broker-b-slave/store #commitLog 存储路径 storePathCommitLog=/app/rocketmq/broker-b-slave/store/commitlog #消费队列存储路径存储路径 storePathConsumeQueue=/app/rocketmq/broker-b-slave/store/consumequeue #消息索引存储路径 storePathIndex=/app/rocketmq/broker-b-slave/store/index #checkpoint 文件存储路径 storeCheckpoint=/app/rocketmq/broker-b-slave/store/checkpoint #abort 文件存储路径 abortFile=/app/rocketmq/broker-b-slave/store/abort #限制的消息大小 maxMessageSize=65536 #flushCommitLogLeastPages=4 #flushConsumeQueueLeastPages=2 #flushCommitLogThoroughInterval=10000 #flushConsumeQueueThoroughInterval=60000 #Broker 的角色 #- ASYNC_MASTER 异步复制Master #- SYNC_MASTER 同步双写Master #- SLAVE brokerRole=SLAVE #刷盘方式 #- ASYNC_FLUSH 异步刷盘 #- SYNC_FLUSH 同步刷盘 flushDiskType=SYNC_FLUSH #checkTransactionMessageEnable=false #发消息线程池数量 #sendMessageThreadPoolNums=128 #拉消息线程池数量 #pullMessaeThreadPoolNums=128
10.15.10.239 机器上操作,建立b-master 和 a-slave 目录
mkdir /app/rocketmq/broker-b-master/store
mkdir /app/rocketmq/broker-a-slave/store
[[email protected] 2m-2s-sync]# cat broker-a-s.properties
#所属集群名字 brokerClusterName=rocketmq-ztqy-test #broker名字,注意此处不同的配置文件填写的不一样 brokerName=broker-a #0 表示 Master,>0 表示 Slave brokerId=1 #nameServer地址,分号分割 namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876 #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数 defaultTopicQueueNums=4 #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭 autoCreateTopicEnable=true #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭 autoCreateSubscriptionGroup=true #Broker 对外服务的监听端口 listenPort=10920 #删除文件时间点,默认凌晨 4点 deleteWhen=01 #文件保留时间,默认 48 小时 fileReservedTime=72 #commitLog每个文件的大小默认1G mapedFileSizeCommitLog=1073741824 #ConsumeQueue每个文件默认存30W条,根据业务情况调整 mapedFileSizeConsumeQueue=300000 #destroyMapedFileIntervalForcibly=120000 #redeleteHangedFileInterval=120000 #检测物理文件磁盘空间 diskMaxUsedSpaceRatio=88 #存储路径 storePathRootDir=/app/rocketmq/broker-a-slave/store #commitLog 存储路径 storePathCommitLog=/app/rocketmq/broker-a-slave/store/commitlog #消费队列存储路径存储路径 storePathConsumeQueue=/app/rocketmq/broker-a-slave/store/consumequeue #消息索引存储路径 storePathIndex=/app/rocketmq/broker-a-slave/store/index #checkpoint 文件存储路径 storeCheckpoint=/app/rocketmq/broker-a-slave/store/checkpoint #abort 文件存储路径 abortFile=/app/rocketmq/broker-a-slave/store/abort #限制的消息大小 maxMessageSize=65536 #flushCommitLogLeastPages=4 #flushConsumeQueueLeastPages=2 #flushCommitLogThoroughInterval=10000 #flushConsumeQueueThoroughInterval=60000 #Broker 的角色 #- ASYNC_MASTER 异步复制Master #- SYNC_MASTER 同步双写Master #- SLAVE brokerRole=SLAVE #刷盘方式 #- ASYNC_FLUSH 异步刷盘 #- SYNC_FLUSH 同步刷盘 flushDiskType=SYNC_FLUSH #checkTransactionMessageEnable=false #发消息线程池数量 #sendMessageThreadPoolNums=128 #拉消息线程池数量 #pullMessaeThreadPoolNums=128
[[email protected] 2m-2s-sync]# cat broker-b.properties
#所属集群名字 brokerClusterName=rocketmq-ztqy-test #broker名字,注意此处不同的配置文件填写的不一样 brokerName=broker-b #0 表示 Master,>0 表示 Slave brokerId=0 #nameServer地址,分号分割 namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876 #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数 defaultTopicQueueNums=4 #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭 autoCreateTopicEnable=true #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭 autoCreateSubscriptionGroup=true #Broker 对外服务的监听端口 listenPort=10911 #删除文件时间点,默认凌晨 4点 deleteWhen=01 #文件保留时间,默认 48 小时 fileReservedTime=72 #commitLog每个文件的大小默认1G mapedFileSizeCommitLog=1073741824 #ConsumeQueue每个文件默认存30W条,根据业务情况调整 mapedFileSizeConsumeQueue=300000 #destroyMapedFileIntervalForcibly=120000 #redeleteHangedFileInterval=120000 #检测物理文件磁盘空间 diskMaxUsedSpaceRatio=88 #存储路径 storePathRootDir=/app/rocketmq/broker-b-master/store #commitLog 存储路径 storePathCommitLog=/app/rocketmq/broker-b-master/store/commitlog #消费队列存储路径存储路径 storePathConsumeQueue=/app/rocketmq/broker-b-master/store/consumequeue #消息索引存储路径 storePathIndex=/app/rocketmq/broker-b-master/store/index #checkpoint 文件存储路径 storeCheckpoint=/app/rocketmq/broker-b-master/store/checkpoint #abort 文件存储路径 abortFile=/app/rocketmq/broker-b-master/store/abort #限制的消息大小 maxMessageSize=65536 #flushCommitLogLeastPages=4 #flushConsumeQueueLeastPages=2 #flushCommitLogThoroughInterval=10000 #flushConsumeQueueThoroughInterval=60000 #Broker 的角色 #- ASYNC_MASTER 异步复制Master #- SYNC_MASTER 同步双写Master #- SLAVE brokerRole=SYNC_MASTER #刷盘方式 #- ASYNC_FLUSH 异步刷盘 #- SYNC_FLUSH 同步刷盘 flushDiskType=SYNC_FLUSH #checkTransactionMessageEnable=false #发消息线程池数量 #sendMessageThreadPoolNums=128 #拉消息线程池数量 #pullMessaeThreadPoolNums=128
4,启动nameserver
10.15.10.238 机器上操作
cd /app/rocketmq/logs nohup sh /app/rocketmq/bin/mqnamesrv > mqnamesrv.log & 启动238 a -master nohup sh /app/rocketmq/bin/mqbroker -c /app/rocketmq/conf/2m-2s-sync/broker-a.properties > broker-a.log & 启动238 b-slave nohup sh /app/rocketmq/bin/mqbroker -c /app/rocketmq/conf/2m-2s-sync/broker-b-s.properties > broker-b-s.log & [[email protected] 2m-2s-sync]# jps 5014 NamesrvStartup 5049 BrokerStartup 5151 BrokerStartup 18271 Jps
查看 9876 10919 10920 端口是否起来
10.15.10.239操作
cd /app/rocketmq/logs nohup sh /app/rocketmq/bin/mqnamesrv > mqnamesrv.log & 启动239 b -master nohup sh /app/rocketmq/bin/mqbroker -c /app/rocketmq/conf/2m-2s-sync/broker-b.properties > broker-b.log &
启动239 a-slave
nohup sh /app/rocketmq/bin/mqbroker -c /app/rocketmq/conf/2m-2s-sync/broker-a-s.properties > broker-a-s.log & [[email protected] 2m-2s-sync]# jps 3154 BrokerStartup 3243 BrokerStartup 4701 Jps 3103 NamesrvStartup
查看 9876 10919 10920 端口是否起来
5,安装console web界面
在10.15.10.238上操作
直接执行
nohup java -jar rocketmq-console-ng-1.0.0.jar --server.port=12581 --rocketmq.config.namesrvAddr=10.15.10.238:9876;10.15.10.239:9876 > rocketmq-console.log 2&>1 &
如果卡住 进不了后台
就新建一个脚本
[[email protected] jar]# cat start_console.sh
#!/bin/sh nohup java -jar /root/jar/rocketmq-console-ng-1.0.0.jar --server.port=12581 --rocketmq.config.namesrvAddr=10.15.10.238:9876;10.15.10.239:9876 > rocketmq-console.log 2&>1 & echo Start Success!
检测12581 端口是否启动OK
浏览器输入10.15.10.238:12581 显示rocketmq-ztqy-test 集群有4台broker 即成功
[[email protected] 2m-2s-sync]# /app/rocketmq/bin/mqadmin clusterlist -n 10.15.10.238:9876 #Cluster Name #Broker Name #BID #Addr #Version #InTPS(LOAD) #OutTPS(LOAD) #PCWait(ms) #Hour #SPACE rocketmq-ztqy-test broker-a 0 10.15.10.238:10911 V4_2_0_SNAPSHOT 0.00(0,0ms) 0.00(0,0ms) 0 423898.87 0.0055 rocketmq-ztqy-test broker-a 1 10.15.10.239:10920 V4_2_0_SNAPSHOT 0.00(0,0ms) 0.00(0,0ms) 0 423898.87 0.0044 rocketmq-ztqy-test broker-b 0 10.15.10.239:10911 V4_2_0_SNAPSHOT 0.00(0,0ms) 0.00(0,0ms) 0 423898.87 -1.0000 rocketmq-ztqy-test broker-b 1 10.15.10.238:10920 V4_2_0_SNAPSHOT 0.00(0,0ms) 0.00(0,0ms) 0 423898.87 0.0055 [[email protected] 2m-2s-sync]#
问题备注:
1,如果提示启动broker 失败 ,检测日志提示locked faild ,already 检查 端口是否区分 ,存储目录是否区分
2,配置文件要注意空格
原文地址:https://www.cnblogs.com/cmttys/p/9026283.html