背景

生产环境RocketMQ版本为4.5,需要平滑升级到4.7,部署方式为4主4从。

机器配置为:CPU:32C,内存:128G,硬盘:4T

以下为集群的一个节点的操作步骤,其他节点升级步骤一致


安装4.7版本MQ

解压

$ mkdir /workspace/apache

$ unzip rocketmq-all-4.7.0-bin-release.zip -d /workspace/ && mv /workspace/rocketmq-all-4.7.0-bin-release /workspace/apache/rocketmq-原集群节点名称


原集群节点安装目录为:/workspace/rocketmq-a


修改日志存储路径

$ cd  /workspace/apache/rocketmq-原集群节点名称/conf

$ sed -i 's#\${user.home}/logs#/data/logs-原集群节点名称#g' logback_broker.xml

$ sed -i 's#\${user.home}/logs#/data/logs-原集群节点名称#g' logback_tools.xml 


修改配置日志

$ cd /workspace/apache/rocketmq-原集群节点名称/conf/2m-2s-async/

$ rm -rf broker*

#将原来安装目录下的配置文件拷贝到4.7版本的安装目录下

$ cp /workspace/rocketmq-a/conf/2m-2s-async/broker-a.properties .


修改节点启动内存

$ vim  bin/runbroker.sh 

JAVA_OPT="${JAVA_OPT} -server -Xms10g -Xmx10g -Xmn4g"


#根据机器内存设置,默认为8g


摘4.5版本的流量

$ bin/mqadmin updateBrokerConfig -b 10.111.1.2:10911 -n uat-mq.com:9876 -k brokerPermission -v 4


查看是否有积压

$ bin/mqadmin brokerConsumeStats -b 10.111.1.2:10911 -n uat-mq.com:9876

如果有积压,需要等到全部都消费完成才可以停4.5版本的mq


关闭4.5版本主从节点mq

$cd /workspace/racoketmq-a

$ bin/mqshutdown broker


启动4.7版本主从节点mq

$ nohup bin/mqbroker -c /workspace/apache/rocketmq-原集群节点名称/conf/2m-2s-async/broker-a.properties &