
正文
rocketmq集群、配置详解和常用命令
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
集群原文地址: http://www.cnblogs.com/520playboy/p/6716235.html
常用命令原文地址: http://www.cnblogs.com/gmq-sh/p/6232633.html
rocketmq集群第一步:先安装jdk, maven等工具
vim /etc/profile 添加 JAVA_HOME=/usr/java/jdk1.8.0_65
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
M2_HOME=/usr/local/apache-maven-3.3.9
PATH=$M2_HOME/bin:$JAVA_HOME/bin:$PATH
export JAVA_HOME
export CLASSPATH
export M2_HOME
export PATH source /etc/profile第二步:安装RocketMQ
https://github.com/alibaba/RocketMQ最新版本RocketMQ-3.4.6.tar.gz
tar -xvzf RocketMQ-3.4.6.tar.gz
cd RocketMQ-3.4.6
sh install.sh 可以看到安装成功了.有个软链接 devenv cd devenv/bin
chmod +x mqadmin mqbroker mqfiltersrv mqshutdown mqnamesrv第三步: 修改配置文件
vim /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-a.properties
brokerClusterName=DefaultCluster
brokerName=broker-a
namesrvAddr=namesrv1.rocket.pccb.com:9876;namesrv2.rocket.pccb.com:9876
autoCreateTopicEnable=flase
autoCreateSubscriptionGroup=flase
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH vim /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-b.properties
brokerClusterName=DefaultCluster
brokerName=broker-b
brokerId=0
namesrvAddr=namesrv1.rocket.pccb.com:9876;namesrv2.rocket.pccb.com:9876
autoCreateTopicEnable=flase
autoCreateSubscriptionGroup=flase
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH 绑定host,在两台机子上
[root@node-214 /opt/RocketMQ-3.4.6/devenv/bin 17:28:01&&245]#cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.55.214 node-214
192.168.55.214 namesrv1.rocket.pccb.com
192.168.55.215 namesrv2.rocket.pccb.com
第四步、启动和关闭
启动
/opt/RocketMQ-3.4.6/devenv/bin/mqnamesrv > /tmp/mqnamesrv.log &
/opt/RocketMQ-3.4.6/devenv/bin/mqbroker -c /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-a.properties > /tmp/mqbroker.log &
另一台
/opt/RocketMQ-3.4.6/devenv/bin/mqnamesrv > /tmp/mqnamesrv.log &
/opt/RocketMQ-3.4.6/devenv/bin/mqbroker -c /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-b.properties > /tmp/mqbroker.log &
关闭
/opt/RocketMQ-3.4.6/devenv/bin/mqshutdown namesrv
/opt/RocketMQ-3.4.6/devenv/bin/mqshutdown broker
rocketmq配置详解#所属集群名字 brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样 brokerName=broker-a|broker-b
# 表示 Master,> 表示 Slave brokerId=0
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=
#删除文件时间点,默认凌晨 4点
deleteWhen=
#文件保留时间,默认 小时 fileReservedTime=120
#commitLog每个文件的大小默认1G mapedFileSizeCommitLog=
#ConsumeQueue每个文件默认存30W条,根据业务情况调整 mapedFileSizeConsumeQueue=
#destroyMapedFileIntervalForcibly=
#redeleteHangedFileInterval=
#检测物理文件磁盘空间 diskMaxUsedSpaceRatio=
#存储路径
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=#flushCommitLogLeastPages=
#flushConsumeQueueLeastPages=
#flushCommitLogThoroughInterval=
#flushConsumeQueueThoroughInterval=#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=ASYNC_MASTER#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=
#拉消息线程池数量
#pullMessageThreadPoolNums=
rocketmq常用命令首先进入 RocketMQ 工程,进入/RocketMQ/bin 在该目录下有个 mqadmin 脚本 .
查看帮助: 在 mqadmin 下可以查看有哪些命令
a: 查看具体命令的使用 : sh mqadmin
b: sh mqadmin help 命令名称 例如,查看 updateTopic 的使用
sh mqadmin help updateTopic. 关闭nameserver和所有的broker: 进入到bin下: sh mqshutdown namesrv sh mqshutdown broker. 查看所有消费组group: sh mqadmin consumerProgress -n 192.168.1.23:. 查看指定消费组下的所有topic数据堆积情况: sh mqadmin consumerProgress -n 192.168.1.23: -g warning-group. 查看所有topic : sh mqadmin topicList -n 192.168.1.23:. 查看topic信息列表详情统计 sh mqadmin topicstatus -n 192.168.1.23: -t topicWarning. 新增topic sh mqadmin updateTopic -n 192.168.1.23: -c DefaultCluster -t topicWarning
8.查看topic路由信息
sh mqadmin topicRoute –n 10.45.47.168:9876 –t testb
. 删除topic sh mqadmin deleteTopic -n 192.168.1.23: -c DefaultCluster -t topicWarning # -c 集群名 -t topic名、查询集群消息sh mqadmin clusterList -n 192.168.1.23:9876 #9876是namesrv的端口
10、添加订阅
/opt/apps/alibaba-rocketmq/bin/mqadmin updateSubGroup -n 172.16.0.155:9876 -c DefaultCluster -g bank_deposition_common
第一步:先安装jdk, maven等工具
vim /etc/profile 添加 JAVA_HOME=/usr/java/jdk1.8.0_65
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
M2_HOME=/usr/local/apache-maven-3.3.9
PATH=$M2_HOME/bin:$JAVA_HOME/bin:$PATH
export JAVA_HOME
export CLASSPATH
export M2_HOME
export PATH source /etc/profile第二步:安装RocketMQ
https://github.com/alibaba/RocketMQ最新版本RocketMQ-3.4.6.tar.gz
tar -xvzf RocketMQ-3.4.6.tar.gz
cd RocketMQ-3.4.6
sh install.sh 可以看到安装成功了.有个软链接 devenv cd devenv/bin
chmod +x mqadmin mqbroker mqfiltersrv mqshutdown mqnamesrv第三步: 修改配置文件
vim /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-a.properties
brokerClusterName=DefaultCluster
brokerName=broker-a
namesrvAddr=namesrv1.rocket.pccb.com:9876;namesrv2.rocket.pccb.com:9876
autoCreateTopicEnable=flase
autoCreateSubscriptionGroup=flase
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH vim /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-b.properties
brokerClusterName=DefaultCluster
brokerName=broker-b
brokerId=0
namesrvAddr=namesrv1.rocket.pccb.com:9876;namesrv2.rocket.pccb.com:9876
autoCreateTopicEnable=flase
autoCreateSubscriptionGroup=flase
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH 绑定host,在两台机子上
[root@node-214 /opt/RocketMQ-3.4.6/devenv/bin 17:28:01&&245]#cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.55.214 node-214
192.168.55.214 namesrv1.rocket.pccb.com
192.168.55.215 namesrv2.rocket.pccb.com
第四步、启动和关闭
启动
/opt/RocketMQ-3.4.6/devenv/bin/mqnamesrv > /tmp/mqnamesrv.log &
/opt/RocketMQ-3.4.6/devenv/bin/mqbroker -c /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-a.properties > /tmp/mqbroker.log &
另一台
/opt/RocketMQ-3.4.6/devenv/bin/mqnamesrv > /tmp/mqnamesrv.log &
/opt/RocketMQ-3.4.6/devenv/bin/mqbroker -c /opt/RocketMQ-3.4.6/devenv/conf/2m-noslave/broker-b.properties > /tmp/mqbroker.log &
关闭
/opt/RocketMQ-3.4.6/devenv/bin/mqshutdown namesrv
/opt/RocketMQ-3.4.6/devenv/bin/mqshutdown broker
#所属集群名字 brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样 brokerName=broker-a|broker-b
# 表示 Master,> 表示 Slave brokerId=0
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=
#删除文件时间点,默认凌晨 4点
deleteWhen=
#文件保留时间,默认 小时 fileReservedTime=120
#commitLog每个文件的大小默认1G mapedFileSizeCommitLog=
#ConsumeQueue每个文件默认存30W条,根据业务情况调整 mapedFileSizeConsumeQueue=
#destroyMapedFileIntervalForcibly=
#redeleteHangedFileInterval=
#检测物理文件磁盘空间 diskMaxUsedSpaceRatio=
#存储路径
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=#flushCommitLogLeastPages=
#flushConsumeQueueLeastPages=
#flushCommitLogThoroughInterval=
#flushConsumeQueueThoroughInterval=#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=ASYNC_MASTER#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=
#拉消息线程池数量
#pullMessageThreadPoolNums=
rocketmq常用命令首先进入 RocketMQ 工程,进入/RocketMQ/bin 在该目录下有个 mqadmin 脚本 .
查看帮助: 在 mqadmin 下可以查看有哪些命令
a: 查看具体命令的使用 : sh mqadmin
b: sh mqadmin help 命令名称 例如,查看 updateTopic 的使用
sh mqadmin help updateTopic. 关闭nameserver和所有的broker: 进入到bin下: sh mqshutdown namesrv sh mqshutdown broker. 查看所有消费组group: sh mqadmin consumerProgress -n 192.168.1.23:. 查看指定消费组下的所有topic数据堆积情况: sh mqadmin consumerProgress -n 192.168.1.23: -g warning-group. 查看所有topic : sh mqadmin topicList -n 192.168.1.23:. 查看topic信息列表详情统计 sh mqadmin topicstatus -n 192.168.1.23: -t topicWarning. 新增topic sh mqadmin updateTopic -n 192.168.1.23: -c DefaultCluster -t topicWarning
8.查看topic路由信息
sh mqadmin topicRoute –n 10.45.47.168:9876 –t testb
. 删除topic sh mqadmin deleteTopic -n 192.168.1.23: -c DefaultCluster -t topicWarning # -c 集群名 -t topic名、查询集群消息sh mqadmin clusterList -n 192.168.1.23:9876 #9876是namesrv的端口
10、添加订阅
/opt/apps/alibaba-rocketmq/bin/mqadmin updateSubGroup -n 172.16.0.155:9876 -c DefaultCluster -g bank_deposition_common
首先进入 RocketMQ 工程,进入/RocketMQ/bin 在该目录下有个 mqadmin 脚本 .
查看帮助: 在 mqadmin 下可以查看有哪些命令
a: 查看具体命令的使用 : sh mqadmin
b: sh mqadmin help 命令名称 例如,查看 updateTopic 的使用
sh mqadmin help updateTopic. 关闭nameserver和所有的broker: 进入到bin下: sh mqshutdown namesrv sh mqshutdown broker. 查看所有消费组group: sh mqadmin consumerProgress -n 192.168.1.23:. 查看指定消费组下的所有topic数据堆积情况: sh mqadmin consumerProgress -n 192.168.1.23: -g warning-group. 查看所有topic : sh mqadmin topicList -n 192.168.1.23:. 查看topic信息列表详情统计 sh mqadmin topicstatus -n 192.168.1.23: -t topicWarning. 新增topic sh mqadmin updateTopic -n 192.168.1.23: -c DefaultCluster -t topicWarning
8.查看topic路由信息
sh mqadmin topicRoute –n 10.45.47.168:9876 –t testb
. 删除topic sh mqadmin deleteTopic -n 192.168.1.23: -c DefaultCluster -t topicWarning # -c 集群名 -t topic名、查询集群消息sh mqadmin clusterList -n 192.168.1.23:9876 #9876是namesrv的端口
10、添加订阅
/opt/apps/alibaba-rocketmq/bin/mqadmin updateSubGroup -n 172.16.0.155:9876 -c DefaultCluster -g bank_deposition_common
rocketmq详细命令
1.2. 详细命令1.2.1. 创建Topic
指令 | updateTopic | 类路径 | com.alibaba.rocketmq.tools.command.topic.UpdateTopicSubCommand |
参数 | 是否必填 | 说明 | |
-b | 如果 -c为空,则必填 | broker地址,表示topic建在该broker | |
-c | 如果 -b为空,则必填 | cluster名称,表示topic建在该集群(集群可通过clusterList查询) | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
-p | 否 | 指定新topic的权限限制( W|R|WR ) | |
-r | 否 | 可读队列数(默认为8) | |
-w | 否 | 可写队列数(默认为8) | |
-t | 是 | topic名称(名称只能使用字符 ^[a-zA-Z0-9_-]+$ ) | |
举例 | 在集群DefaultCluster上创建主题ZTEExample,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin updateTopic -n 192.168.100.193:9876 -b 192.168.100.193:10911 -t test111 test111 create topic to 192.168.100.193:10911 success. TopicConfig [topicName=test111, readQueueNums=8, writeQueueNums=8, perm=RW-, topicFilterType=SINGLE_TAG, topicSysFlag=0, order=false] |
1.2.2. 删除Topic
指令 | deleteTopic | 类路径 | com.alibaba.rocketmq.tools.command.topic.DeleteTopicSubCommand |
参数 | 是否必填 | 说明 | |
-c | 是 | cluster名称,表示删除某集群下的某个topic (集群可通过clusterList查询) | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;… | |
-t | 是 | topic名称(名称只能使用字符 ^[a-zA-Z0-9_-]+$ ) | |
举例 | 在集群DefaultCluster上删除主题ZTEExample,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin deleteTopic -n 192.168.100.194:9876 -c AdpMqCluster -t test111 delete topic [test111] from cluster [AdpMqCluster] success. delete topic [test111] from NameServer success. |
1.2.3. 创建(修订)订阅组
指令 | updateSubGroup | 类路径 | com.alibaba.rocketmq.tools.command.consumer.UpdateSubGroupSubCommand |
参数 | 是否必填 | 说明 | |
-b | 如果 –c为空,则必填 | broker地址,表示订阅组建在该broker | |
-c | 如果 –b为空,则必填 | cluster名称,表示topic建在该集群(集群可通过clusterList查询) | |
-d | 否 | 是否容许广播方式消费 | |
-g | 是 | 订阅组名 | |
-i | 否 | 从哪个broker开始消费 | |
-m | 否 | 是否容许从队列的最小位置开始消费,默认会设置为false | |
-q | 否 | 消费失败的消息放到一个重试队列,每个订阅组配置几个重试队列 | |
-r | 否 | 重试消费最大次数,超过则投递到死信队列,不再投递,并报警 | |
-s | 否 | 消费功能是否开启 | |
-w | 否 | 发现消息堆积后,将Consumer的消费请求重定向到另外一台Slave机器 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.4. 删除订阅组配置
指令 | deleteSubGroup | 类路径 | com.alibaba.rocketmq.tools.command.consumer.DeleteSubscriptionGroupCommand |
参数 | 是否必填 | 说明 | |
-b | 如果 –c为空,则必填 | broker地址,表示订阅组建在该broker | |
-c | 如果 –b为空,则必填 | cluster名称,表示topic建在该集群(集群可通过clusterList查询) | |
-g | 是 | 订阅组名 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.5. 更新Broker配置文件
指令 | updateBrokerConfig | 类路径 | com.alibaba.rocketmq.tools.command.broker.UpdateBrokerConfigSubCommand |
参数 | 是否必填 | 说明 | |
-b | 如果 –c为空,则必填 | broker地址,表示订阅组建在该broker | |
-c | 如果 –b为空,则必填 | cluster名称,表示topic建在该集群(集群可通过clusterList查询) | |
-k | 是 | key值 | |
-v | 否 | value值 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.6. 查看Topic列表信息
指令 | topicList | 类路径 | com.alibaba.rocketmq.tools.command.broker.UpdateBrokerConfigSubCommand |
参数 | 是否必填 | 说明 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | nameserve地址为10.45.47.168:9876 | ||
sh mqadmin topicList –n 10.45.47.168:9876 打印内容: BenchmarkTest %RETRY%simple-consumer-test SELF_TEST_TOPIC ZTEExample 注释:上述头三个主题是RocketMQ默认预先创建 |
1.2.7. 查看Topic路由信息
指令 | topicRoute | 类路径 | com.alibaba.rocketmq.tools.command.topic.TopicRouteSubCommand |
参数 | 是否必填 | 说明 | |
-t | 是 | topic名称 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查看主题ZTEExample的路由,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin topicRoute –n 10.45.47.168:9876 –t ZTEExample_Crm 打印内容: { "brokerDatas":[{ "brokerAddrs":{0:"10.45.47.168:10911" }, "brokerName":"crmdb" }], "queueDatas":[{ "brokerName":"crmdb", "perm":6, "readQueueNums":8, "writeQueueNums":8 }] } |
1.2.8. 查看Topic统计信息
指令 | topicStats | 类路径 | com.alibaba.rocketmq.tools.command.topic.TopicStatsSubCommand |
参数 | 是否必填 | 说明 | |
-t | 是 | topic名称 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查看主题ZTEExample的统计信息,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin topicStats –n 10.45.47.168:9876 –t ZTEExample 打印内容:(统计信息里包括有offset、最后更新时间) #Broker Name #QID #Min Offset #Max Offset #Last Updated crmdb 0 0 1 2014-02-10 11:37:44,977 crmdb 1 0 0 crmdb 2 0 0 crmdb 3 0 0 crmdb 4 0 0 crmdb 5 0 0 crmdb 6 0 0 crmdb 7 0 0 |
1.2.9. 查看Broker统计信息
指令 | brokerStats | 类路径 | com.alibaba.rocketmq.tools.command.broker.BrokerStatsSubCommand |
参数 | 是否必填 | 说明 | |
-b | 是 | broker地址 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查看broker(crmdb)的统计信息,broker地址为10.45.47.168:10911,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin brokerStats –n 10.45.47.168:9876 –b 10.45.47.168:10911 打印内容: bootTimestamp : 1392003367470 brokerVersion : 29 brokerVersionDesc : V3_0_7 commitLogDiskRatio : 0.32690830974763857 commitLogMaxOffset : 217 commitLogMinOffset : 0 consumeQueueDiskRatio : 0.32690830974763857 dispatchMaxBuffer : 1 getFoundTps : 0.0 0.0 0.0 getMessageEntireTimeMax : 4 getMissTps : 0.0 0.0 0.0 getTotalTps : 0.0 0.0 0.0 getTransferedTps : 0.0 0.0 0.0 msgGetTotalTodayMorning : 0 msgGetTotalTodayNow : 1 msgGetTotalYesterdayMorning : 0 msgPutTotalTodayMorning : 0 msgPutTotalTodayNow : 1 msgPutTotalYesterdayMorning : 0 putMessageAverageSize : 217.0 putMessageDistributeTime : 0(0.0%) 1(100.0%) 0(0.0%) 0(0.0%) 0(0.0%) 0(0.0%) 0(0.0%) putMessageEntireTimeMax : 6 putMessageSizeTotal : 217 putMessageTimesTotal : 1 putTps : 0.0 0.0 0.0 runtime : [ 0 days, 3 hours, 21 minutes, 1 seconds ] sendThreadPoolQueueCapacity : 100000 sendThreadPoolQueueSize : 0 |
1.2.10. 根据消息ID查询消息
指令 | queryMsgById | 类路径 | com.alibaba.rocketmq.tools.command.message.QueryMsgByIdSubCommand |
参数 | 是否必填 | 说明 | |
-i | 是 | msgId | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询msgId= 0A2D2FA800002A9F0000000000000000的消息,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin queryMsgById –n 10.45.47.168:9876 –i 0A2D2FA800002A9F0000000000000000 打印内容: Topic: ZTEExample Tags: [SimpleTest] Keys: [SimpleTest-1] Queue ID: 0 Queue Offset: 0 CommitLog Offset: 0 Born Timestamp: 2014-02-26 14:49:10,875 Store Timestamp: 2014-02-26 14:48:44,840 Born Host: 10.45.46.229:4231 Store Host: 10.45.47.168:10911 System Flag: 0 Properties: {TAGS=SimpleTest, KEYS=SimpleTest-1, WAIT=true} Message Body Path: /tmp/rocketmq/msgbodys/0A2D2FA800002A9F0000000000000000 |
1.2.11. 根据消息Key查询消息
指令 | queryMsgByKey | 类路径 | com.alibaba.rocketmq.tools.command.message.QueryMsgByKeySubCommand |
参数 | 是否必填 | 说明 | |
-f | 否 | 被查询消息的截止时间 | |
-k | 是 | msgKey | |
-t | 是 | Topic名称 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询Topic= ZTEExample下key= SimpleTest-1的消息,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin queryMsgByKey -n 10.45.47.168:9876 -t ZTEExample -k SimpleTest-1 打印内容: #Message ID #QID #Offset 0A2D2FA800002A9F0000000000000000 0 0 |
1.2.12. 根据Offset查询消息
指令 | queryMsgByOffset | 类路径 | com.alibaba.rocketmq.tools.command.message.QueryMsgByOffsetSubCommand |
参数 | 是否必填 | 说明 | |
-b | 是 | Broker名称,表示订阅组建在该broker(这里需要注意填写的是broker的名称,不是broker的地址,broker名称可以在clusterList查到) | |
-i | 是 | query队列id | |
-o | 是 | offset值 | |
-t | 是 | topic名称 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询brokerName=crm-168,Topic= ZTEExample的第1个队列下offset=0的消息,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin queryMsgByOffset -n 10.45.47.168:9876 -b crm-168 -i 0 -t ZTEExample -o 0 打印内容: Topic: ZTEExample Tags: [SimpleTest] Keys: [SimpleTest-1] Queue ID: 0 Queue Offset: 0 CommitLog Offset: 0 Born Timestamp: 2014-02-26 14:49:10,875 Store Timestamp: 2014-02-26 14:48:44,840 Born Host: 10.45.46.229:4231 Store Host: 10.45.47.168:10911 System Flag: 0 Properties: {TAGS=SimpleTest, KEYS=SimpleTest-1, WAIT=true} Message Body Path: /tmp/rocketmq/msgbodys/0A2D2FA800002A9F0000000000000000 |
1.2.13. 查询Producer的网络连接
l 该命令只打印当前与cluster连接的producer网络连接信息
指令 | producerConnection | 类路径 | com.alibaba.rocketmq.tools.command.connection.ProducerConnectionSubCommand |
参数 | 是否必填 | 说明 | |
-g | 是 | 生产者所属组名 | |
-t | 是 | topic名称 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询当前属于group(生产者组)=simple-producer-test的生产者到topic=ZTEExample的网络连接,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin producerConnection -n 10.45.47.168:9876 -g simple-producer-test -t ZTEExample 打印内容: 0001 10.45.46.229@simple-producer-test-99f09de2a20a4b6284bb949b452bee0c 10.45.46.229:4332 Java V3_0_7 |
1.2.14. 查询Consumer的网络连接
l 该命令只打印当前与cluster连接的consumer网络连接信息
指令 | consumerConnection | 类路径 | com.alibaba.rocketmq.tools.command.connection.ConsumerConnectionSubCommand |
参数 | 是否必填 | 说明 | |
-g | 是 | 消费者所属组名 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询当前属于group(消费者组)=simple-consumer-test的消费者的网络连接,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin consumerConnection -n 10.45.47.168:9876 -g simple-consumer-test 打印内容: 001 10.45.46.229@simple-consumer-test-7babbb6021b040d29978494b16d559ae 10.45.46.229:4355 JAVA V3_0_7 Below is subscription: 001 Topic: ZTEExample SubExpression: * ConsumeType: CONSUME_ACTIVELY MessageModel: CLUSTERING ConsumeFromWhere: CONSUME_FROM_LAST_OFFSET |
1.2.15. 查看订阅组消费状态
指令 | consumerProgress | 类路径 | com.alibaba.rocketmq.tools.command.consumer.ConsumerProgressSubCommand |
参数 | 是否必填 | 说明 | |
-g | 是 | 消费者所属组名 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询当前属于group(消费者组)=simple-consumer-test的订阅状态,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin consumerProgress -n 10.45.47.168:9876 -g simple-consumer-test 打印内容: #Topic #Broker Name #QID #Broker Offset #Consumer Offset #Diff ZTEExample crm-168 0 2 2 0 ZTEExample crm-168 1 0 0 0 ZTEExample crm-168 2 0 0 0 ZTEExample crm-168 3 0 0 0 ZTEExample crm-168 4 0 0 0 ZTEExample crm-168 5 0 0 0 ZTEExample crm-168 6 0 0 0 ZTEExample crm-168 7 0 0 0 Consume TPS: 0 Diff Total: 0 |
1.2.16. 查看集群消息
指令 | clusterList | 类路径 | com.alibaba.rocketmq.tools.command.cluster.ClusterListSubCommand |
参数 | 是否必填 | 说明 | |
-m | 否 | 打印更多信息 (增加打印出如下信息 #InTotalYest, #OutTotalYest, #InTotalToday ,#OutTotalToday) | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询当前集群状态,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin clusterList -n 192.168.100.193:9876 打印内容: #Cluster Name #Broker Name #BID #Addr #Version #InTPS #OutTPS AdpMqCluster broker-a 0 192.168.100.193:10911 V3_2_6 0.00 0.00 AdpMqCluster broker-b 0 192.168.100.194:10911 V3_2_6 0.00 0.00 sh mqadmin clusterList -n 192.168.100.193:9876 -m #Cluster Name #Broker Name #InTotalYest #OutTotalYest #InTotalToday #OutTotalToday AdpMqCluster broker-a 0 0 0 0 AdpMqCluster broker-b 0 0 0 0 |
1.2.17. 添加(更新)KV配置信息
指令 | updateKvConfig | 类路径 | com.alibaba.rocketmq.tools.command.namesrv.UpdateKvConfigCommand |
参数 | 是否必填 | 说明 | |
-k | 是 | key值 | |
-v | 是 | value值 | |
-s | 是 | Namespace值 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.18. 删除KV配置信息
指令 | deleteKvConfig | 类路径 | com.alibaba.rocketmq.tools.command.namesrv.DeleteKvConfigCommand |
参数 | 是否必填 | 说明 | |
-k | 是 | key值 | |
-s | 是 | Namespace值 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.19. 添加(更新)Project group配置信息
指令 | updateProjectGroup | 类路径 | com.alibaba.rocketmq.tools.command.namesrv.UpdateProjectGroupCommand |
参数 | 是否必填 | 说明 | |
-i | 是 | 服务器ip | |
-p | 是 | project group名 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.20. 删除Projectgroup配置信息
指令 | deleteProjectGroup | 类路径 | com.alibaba.rocketmq.tools.command.namesrv.DeleteProjectGroupCommand |
参数 | 是否必填 | 说明 | |
-i | 是 | 服务器ip | |
-p | 是 | project group名 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.21. 取得Projectgroup配置信息
指令 | getProjectGroup | 类路径 | com.alibaba.rocketmq.tools.command.namesrv.GetProjectGroupCommand |
参数 | 是否必填 | 说明 | |
-i | 是 | 服务器ip | |
-p | 是 | project group名 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.22. 设置消费进度
l 根据时间来设置消费进度,设置之前要关闭这个订阅组的所有consumer,设置完再启动,方可生效
指令 | resetOffsetByTime | 类路径 | com.alibaba.rocketmq.tools.command.offset.ResetOffsetByTimeSubCommand |
参数 | 是否必填 | 说明 | |
-f | 否 | 通过时间戳强制回滚(true|false),默认为true | |
-s | 是 | 时间戳 (currentTimeMillis|yyyy-MM-dd#HH:mm:ss:SSS) | |
-g | 是 | 消费者所属组名 | |
-t | 是 | topic名称 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.23. 清除特定Broker权限
指令 | wipeWritePerm | 类路径 | com.alibaba.rocketmq.tools.command.namesrv.WipeWritePermSubCommand |
参数 | 是否必填 | 说明 | |
-b | 是 | broker地址 | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | |||
1.2.24. 获取Consumer消费进度
l 该命令只打印当前与cluster连接的consumer的消费进度
指令 | getConsumerStatus | 类路径 | com.alibaba.rocketmq.tools.command.offset.GetConsumerStatusCommand |
参数 | 是否必填 | 说明 | |
-g | 是 | 消费者所属组名 | |
-t | 是 | 查询主题 | |
-i | 否 | Consumer客户端ip | |
-h | 否 | 打印帮助 | |
-n | 是 | nameserve服务地址列表,格式ip:port;ip:port;... | |
举例 | 查询属于group(消费者组)=simple-consumer-test的消费者在Topic=ZTEExample上的消费状态,nameserve地址为10.45.47.168:9876 | ||
sh mqadmin getConsumerStatus -n 10.45.47.168:9876 -g simple-consumer-test -t ZTEExample get consumer status from client. group=simple-consumer-test, topic=ZTEExample, originClientId= #clientId #brokerName #queueId #offset 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 4 0 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 0 2 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 3 0 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 1 0 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 5 0 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 6 0 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 7 0 10.45.46.229@simple-consumer-test-3f89fb692e874640 crm-168 2 0 |






