You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Midvision服务器MQ 8.0升级至9.3:求最小停机分步指南

Midvision MQ 8.0 → 9.3 最小停机升级分步指南

前提说明

以下流程基于多实例高可用集群部署(这是实现最小停机的核心架构),单实例场景的简化方案会单独列出。


一、升级前准备

  • 全量备份MQ数据
    • 导出队列管理器配置:dmpmqcfg -m <QM_NAME> -o xml > qm_backup.xml
    • 备份消息数据:通过runmqsc执行DISPLAY QL(*)确认队列状态,对关键队列执行SAVE QL(<QUEUE_NAME>),同时备份MQ安装目录(默认/var/mqm)及配置文件
  • 兼容性验证
    • 确认所有连接MQ的应用客户端版本与9.3兼容(MQ 8.0客户端可兼容9.3服务端,但建议提前测试)
    • 检查自定义脚本、监控工具是否适配9.3的命令行接口变化
  • 预准备安装包
    • 下载MQ 9.3官方安装包,解压到服务器临时目录,确保安装文件权限为root或MQ管理员用户可执行

二、集群滚动升级(最小停机核心流程)

假设集群包含主实例(Node A)和备实例(Node B)

  1. 升级备实例(Node B)

    • 停止备机队列管理器:endmqm -w <QM_NAME>(等待所有进程结束)
    • 卸载MQ 8.0:执行系统包管理命令(如rpm -ivh --erase <mq-packages>),注意保留/var/mqm配置数据目录
    • 安装MQ 9.3:运行安装程序,选择"保留现有配置"选项,完成后执行setmqinst -i -p <MQ_INSTALL_PATH>设置默认实例
    • 启动备机队列管理器:strmqm <QM_NAME>,用dspmq确认状态为STANDBY
    • 验证同步状态:通过runmqsc <QM_NAME>执行DISPLAY CLUSQMGR,确认备机与主机配置同步
  2. 触发主备切换

    • 执行集群切换命令:rsmqm -s <QM_NAME>(不同集群部署工具可能命令不同,如使用HADR则对应HADR切换命令)
    • 验证切换结果:dspmq确认Node B变为RUNNING(主实例),Node A变为STANDBY(备实例)
    • 业务验证:检查应用日志,确认消息收发正常,无连接中断或报错
  3. 升级原主实例(Node A)

    • 停止Node A的队列管理器:endmqm -w <QM_NAME>
    • 卸载MQ 8.0,重复安装MQ 9.3的步骤
    • 启动Node A队列管理器:strmqm <QM_NAME>,确认状态为STANDBY
    • 最终集群验证:dspmq查看两个实例均为9.3版本,且集群同步正常

三、单实例场景最小停机方案

若为单实例部署,需通过"并行实例切换"实现最小停机:

  • 新建一台服务器安装MQ 9.3,导入备份的队列管理器配置:crtmqm <QM_NAME> && dmpmqcfg -m <QM_NAME> -i xml < qm_backup.xml
  • 逐步修改应用客户端的连接地址,将流量切换到新实例
  • 待所有流量迁移完成后,停止旧8.0实例,清理旧服务器资源

四、升级后验证

  • 检查所有队列管理器状态:dspmq,确保均为RUNNING或STANDBY状态
  • 消息收发测试:发送测试消息至关键队列,确认能正常生产、消费
  • 日志检查:查看/var/mqm/log/<QM_NAME>/AMQERR01.LOG,确保无升级相关错误
  • 客户端连接验证:确认所有应用客户端稳定连接9.3实例,无频繁重连情况

注意事项

  • 升级前必须在测试环境完整演练流程,确认无兼容性问题
  • 升级过程中禁止修改队列管理器配置,避免同步异常
  • 若升级后出现异常,立即回滚到备份的8.0环境

内容的提问来源于stack exchange,提问作者Hareesh Dasari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 19:23:16