概述

ZStack Cloud升级需要将管理节点、计算节点、存储节点、网络节点等升级到最新版本,并更新对应的基础包、依赖软件库和虚拟化核心工具。本文档介绍ZStack Cloud升级的典型流程,包括:
  1. 平台版本升级
  2. 虚拟化组件升级 (可选)
  3. Kernel升级 (可选)

适用范围

本文档仅适用于同源环境云平台升级,即:
  • 当前云平台内所有物理机和管理节点均使用相同的操作系统,例如均使用h84r操作系统。
  • 目标版本的操作系统与当前云平台物理机、管理节点的操作系统一致,例如:当前云平台内所有物理机和管理节点均使用h84r操作系统,则应使用h84r版ISO进行升级。

升级机制

ZStack Cloud存在以下升级机制:
  • 无缝升级:同源场景下,ZStack Cloud所有历史发布版本,均可一键无缝升级到最新版本。
  • 无损升级:ZStack Cloud升级过程,云主机中正在运行的业务不受任何影响。
Note:
  • 如需更换操作系统或在多源共存环境下升级,请联系官方技术支持获取帮助。
  • 本文档以使用h84r版ISO升级为例进行介绍。

注意事项

升级ZStack Cloud前,请阅读以下注意事项:
  • 平台版本升级过程中将无法访问管理节点、无法申请云主机/云盘等资源。建议在业务低谷期或业务变更窗口进行操作,避免升级过程中发生资源申请或其他关键业务变更。
  • 虚拟化组件 (QEMU、Libvirt) 升级后不支持回滚至旧版本。
  • QEMU升级完成后,需重启物理机上的云主机、VPC路由器、负载均衡实例,使新版本QEMU生效。
  • Kernel升级完成后,需重启物理机使新版本Kernel升级生效。
  • 升级过程中如发生任何异常情况导致升级中断或出现业务影响,请及时联系官方技术支持。
  • 提前阅读功能迭代信息,了解目标版本重要功能变更:
    云平台版本 迭代信息 详情
    ZStack Cloud 5.1.0 取消云主机RDP模式UI开关 5.1.0开始,不再支持通过UI设置云主机RDP模式。用户可通过CLI命令SetVmRDP uuid=${vmuuid} enable=true为云主机开启RDP模式。
    ZStack Cloud 4.7.21 企业管理更名租户管理 4.7.21开始,原企业管理功能模块全面更名为租户管理,相关功能不受任何影响。
    ZStack Cloud 4.6.0 亲和组功能升级为云主机调度策略 4.6.0开始,亲和组功能全面升级为云主机调度策略
    • 支持互斥云主机、聚集云主机、云主机互斥物理机、和云主机亲和物理机四种类型策略,每种策略均支持强制和优先两种执行机制。
    • 之前版本中反亲和(强制)和反亲和(非强制)策略分别升级为互斥云主机(强制)和互斥云主机(优先)策略,升级全程无感知,不影响已有业务运行。
    ZStack Cloud 4.0.0 云路由器升级为VPC路由器 4.0.0开始,云路由器全面升级为VPC路由器,云路由网络全面升级为VPC网络,不再单独设云路由器页面。升级全程无感知,相关业务不受任何影响。
    企业管理账号体系取代用户组与用户 4.0.0开始,企业管理账号体系取代用户组与用户,不再单独设用户/用户组页面,不可再使用用户/用户组账号登录云平台。升级前,请先将用户组与用户纳管的账号数据妥善迁移至企业管理纳管,再执行升级操作。
    Note: 对于admin创建并具备admin权限的用户账号同步取消,如有需要,可使用企业管理账号体系中的平台管理员实现相同功能。
    调整AD/LDAP与账户的对接管理方式 4.0.0开始,调整AD/LDAP与账户的对接管理方式,统一由企业管理纳管,不再单独设AD/LDAP页面。
    Note: 升级前,请先将账户对接纳管的AD/LDAP账号数据妥善迁移至企业管理纳管,再执行升级操作。

平台版本升级

手动升级ZStack Cloud管理节点至最新版本。升级完成后,自动或手动对物理机、主存储、镜像服务器、VPC 路由器等资源执行对应的升级操作。

ZStack Cloud支持普通升级和灰度升级两种平台升级方式,并支持单管理节点和双管理节点两种部署形态。不同升级方式和部署形态的升级流程存在差异,请根据实际场景选择对应的升级方式和升级流程进行操作:
  • 普通升级

    普通升级是指在完成管理节点升级后,平台自动重连物理机、主存储、镜像服务器、VPC路由器等资源,统一完成相关节点的升级,不支持分批控制升级节奏。

  • 灰度升级

    灰度升级是指在完成管理节点升级后,不立即对所有物理机或其他节点执行升级,而是通过灰度控制机制分批推进升级过程。用户可优先对承载非核心业务的物理机进行验证,在确认无异常后再逐步完成全量升级,从而降低升级风险。

    Note:

    灰度升级功能仅适用于ZStack Cloud 5.0.0及之后版本,低版本不支持该升级方式。

单管理节点普通升级

背景信息

本章节详细介绍单管理节点普通升级的操作流程。

操作步骤

  1. 获取升级安装包。
    准备以下软件包,并存放在管理节点/root/目录:
    • ZStack Cloud ISO:
      • 软件名称: ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
      • 下载地址:点击这里
    • ZStack Cloud安装包:
      • 软件名称:ZStack-Cloud-installer-5.5.24.bin
      • 下载地址:点击这里
    • ZStack Cloud升级脚本:
      • 软件名称:ZStack-Cloud-upgrade
      • 下载地址:点击这里
    Note:
    • ZStack Cloud支持离线升级,无需连接公网,请提前获取软件包和升级脚本。
    • 软件包或升级脚本下载完成后,请确保MD5与官网一致,如不一致请重新下载。
  2. 关闭云主机高可用全局开关。

    登录ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的停用按钮。

  3. 备份数据库和升级脚本。
    升级前,备份数据库和升级脚本以用于意外恢复。
    • 登录管理节点,执行以下命令将数据库备份至/var/lib/zstack/mysql-backup/目录:
      [root@localhost ~]# zstack-ctl dump_mysql --file-name zstack-db-backup
    • 在管理节点执行以下命令将升级脚本备份备份至/root/目录:
      [root@localhost ~]# cp /usr/local/bin/zstack-upgrade /root/zstack-upgrade-bk
  4. 升级平台版本。
    在管理节点进行离线升级:
    #支持两种离线升级方式,推荐使用第一种:
    # 第一种方式: 升级本地仓库和管理服务
    [root@zstack-1 opt]# zstack-upgrade ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
    # 第二种方式: 先升级本地仓库再升级管理服务:
    [root@zstack-1 opt]# zstack-upgrade -r ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso 
    [root@zstack-1 opt]# bash ZStack-Cloud-installer-5.5.24.bin -u -P <MYSQL_ROOT_PASSWORD>
    Note:
    • <MYSQL_ROOT_PASSWORD>为MySQL root用户的密码,占位符仅用于示例,请替换为实际密码。
    • 若数据库root密码采用系统默认密码, -P MYSQL_ROOT_PASSWORD参数可省略。
    • 执行zstack-upgrade命令前需确认所准备的ISO是基于h84r版,避免使用其他ISO覆盖本地源。
    • 升级本地仓库时会自动更新升级脚本,脚本升级完成后,可按提示重新执行上一步命令即可。
  5. 手动清理浏览器缓存。

    为了保证新功能能够正常使用,请在升级完成后登录ZStack Cloud UI界面,并按下Ctrl+F5Ctrl+Shift+R,手动清理浏览器缓存。

  6. 开启云主机高可用开关。

    ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的启用按钮。

后续操作

至此,单管理节点升级已完成,平台将自动重连物理机、主存储、镜像服务器、VPC路由器等资源,完成其他相关节点升级。用户可按需继续进行虚拟化组件和Kernel升级。

双管理节点普通升级

背景信息

本章节详细介绍双管理节点普通升级的操作流程。

操作步骤

  1. 获取升级安装包。
    准备以下软件包,并分别存放在两个管理节点的/root/目录:
    • ZStack Cloud ISO:
      • 软件名称: ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
      • 下载地址:点击这里
    • ZStack Cloud安装包:
      • 软件名称:ZStack-Cloud-installer-5.5.24.bin
      • 下载地址:点击这里
    • ZStack Cloud升级脚本:
      • 软件名称:ZStack-Cloud-upgrade
      • 下载地址:点击这里
    • 多管理节点高可用套件 Multi-MN-HA:
      • 软件名称:ZStack-Multinode-HA-Suite-5.5.24.tar.gz
      • 下载地址:点击这里
    Note:
    • ZStack Cloud支持离线升级,无需连接公网,请提前获取软件包和升级脚本。
    • 软件包或升级脚本下载完成后,请确保MD5与官网一致,如不一致请重新下载。
  2. 关闭云主机高可用全局开关。

    登录ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的停用按钮。

  3. 备份数据库和升级脚本。
    升级前,备份数据库和升级脚本以用于意外恢复。
    • 分别登录两个管理节点,执行以下命令将数据库备份至/var/lib/zstack/mysql-backup/目录:
      [root@localhost ~]# zstack-ctl dump_mysql --file-name zstack-db-backup
    • 分别在两个管理节点执行以下命令将升级脚本备份至/root/目录:
      [root@localhost ~]# cp /usr/local/bin/zstack-upgrade /root/zstack-upgrade-bk
  4. 更新本地repo源。
    分别在两个管理节点执行以下命令,更新本地repo源:
    [root@localhost ~]# zstack-upgrade -r ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
    Note: 升级本地repo时会自动更新升级脚本,脚本升级完成后,可按提示重新执行上一步命令即可。
  5. 获取VIP所在管理节点IP地址。
    执行以下命令获取VIP所在管理节点IP地址,返回结果中VIP为yes的节点即为VIP所在的管理节点:
    [root@localhost ~]# zsha2 status
  6. 解压高可用套件,并赋予可执行权限。
    在VIP所在管理节点依次执行以下命令,解压高可用套件,并对zsha2和zstack-hamon文件赋予可执行权限:
    [root@localhost ~]# tar zxvf ZStack-Multinode-HA-Suite-5.5.24.tar.gz      #解压高可用套件
    [root@localhost ~]# chmod +x zsha2 zstack-hamon    #赋予可执行权限
  7. 升级高可用套件。
    在VIP所在管理节点执行以下命令,完成高可用套件升级:
    [root@localhost ~]# ./zsha2 upgrade-ha
  8. 升级云平台。
    在VIP所在管理节点依次执行以下命令,升级双管理节点:
    zsha2 upgrade-mn -peerpass password ZStack-Cloud-installer-5.5.24.bin
    Note: -peerpass为可选参数,可设置Peer管理节点SSH登录密码。
  9. 手动清理浏览器缓存。

    为了保证新功能能够正常使用,请在升级完成后登录ZStack Cloud UI界面,并按下Ctrl+F5Ctrl+Shift+R,手动清理浏览器缓存。

  10. 开启云主机高可用开关。

    ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的启用按钮。

后续操作

至此,双管理节点升级已完成,平台将自动重连物理机、主存储、镜像服务器、VPC路由器等资源,完成其他相关节点升级。用户可按需继续进行虚拟化组件和Kernel升级。

单管理节点灰度升级

背景信息

本章节详细介绍单管理节点灰度升级的操作流程。

操作步骤

  1. 获取升级安装包。
    准备以下软件包,并存放在管理节点/root/目录:
    • ZStack Cloud ISO:
      • 软件名称: ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
      • 下载地址:点击这里
    • ZStack Cloud安装包:
      • 软件名称:ZStack-Cloud-installer-5.5.24.bin
      • 下载地址:点击这里
    • ZStack Cloud升级脚本:
      • 软件名称:ZStack-Cloud-upgrade
      • 下载地址:点击这里
    Note:
    • ZStack Cloud支持离线升级,无需连接公网,请提前获取软件包和升级脚本。
    • 软件包或升级脚本下载完成后,请确保MD5与官网一致,如不一致请重新下载。
  2. 关闭云主机高可用全局开关。

    登录ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的停用按钮。

  3. 选择灰度升级验证物理机。

    在升级前准备阶段,预先选定一台承载非核心业务的物理机,作为灰度升级验证节点。该物理机将在后续升级过程中优先执行手动重连操作,用于验证Agent升级、云主机运行状态及业务可用性。

  4. 备份数据库和升级脚本。
    升级前,备份数据库和升级脚本以用于意外恢复。
    • 登录管理节点,执行以下命令将数据库备份至/var/lib/zstack/mysql-backup/目录:
      [root@localhost ~]# zstack-ctl dump_mysql --file-name zstack-db-backup
    • 在管理节点执行以下命令将升级脚本备份备份至/root/目录:
      [root@localhost ~]# cp /usr/local/bin/zstack-upgrade /root/zstack-upgrade-bk
  5. 灰度升级平台版本。
    在管理节点进行灰度升级:
    [root@localhost ~]# zstack-upgrade -r ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso      #更新本地repo源
    [root@localhost ~]# bash zstack-installer-5.5.24.bin -u --grayscale true -P <MYSQL_ROOT_PASSWORD>      #云平台灰度升级
    Note:
    • <MYSQL_ROOT_PASSWORD>为MySQL root用户的密码,占位符仅用于示例,请替换为实际密码。
    • 若数据库root密码采用系统默认密码, -P <MYSQL_ROOT_PASSWORD>参数可省略。
    • -grayscale参数用于启动灰度升级模式,升级完成后不会自动升级物理机及相关Agent。
    • 升级完成后,物理机、VPC等资源的升级状态将保持为未升级,需通过后续重连或关闭灰度开关推进升级。
  6. 手动清理浏览器缓存。

    为了保证新功能能够正常使用,请在升级完成后登录ZStack Cloud UI界面,并按下Ctrl+F5Ctrl+Shift+R,手动清理浏览器缓存。

  7. 检查灰度升级后资源状态。

    登录ZStack Cloud UI界面,检查物理机、主存储、镜像服务器等资源状态,确保资源处于已连接状态。同时查看物理机及VPC等资源的升级状态,在灰度升级模式下,此时升级状态应显示为未升级

  8. 对非核心业务物理机执行灰度升级验证。

    选择预先选定的非核心业务物理机,在ZStack Cloud UI界面中手动执行重连操作, 触发该物理机及相关Agent的升级。

    重连完成后,需对升级结果进行验证,确保升级过程及业务运行均无异常:
    • 确认物理机上Agent版本记录已更新,且运行状态正常。
    • 检查主存储及相关组件运行状态是否正常。
    • 确认云主机运行状态及网络连通性正常,业务访问未受影响。

    当上述检查项均验证通过,且该物理机的升级状态显示为已升级时,可认为灰度升级验证通过,并可继续推进后续的全平台升级操作。

    Note:
    • 在灰度升级期间,允许对未升级的物理机执行重连操作,重连后将自动触发Agent升级。
    • 若灰度升级期间物理机发生意外失联,且无法自动重连成功,可通过手动重连方式恢复,重连后同样会升级Agent。
  9. 推进全平台资源升级。

    在灰度升级验证通过后,可根据实际需求选择以下方式,推进其余资源完成升级:

    • 手动分批推进:依次对其余物理机执行重连操作,逐步完成物理机及相关Agent的升级,并持续关注升级过程及业务运行状态。
    • 自动推进升级:在确认非核心业务物理机灰度升级验证通过,且无需继续对剩余资源进行分批验证后,关闭灰度升级开关,平台将自动完成剩余物理机及相关资源的升级。

    无论采用何种方式,在升级过程中均应持续检查云主机运行状态,确保业务不受影响。

  10. 关闭灰度升级开关。
    在确认灰度升级验证无异常后,执行以下命令关闭灰度升级变量开关:
    [root@localhost ~]# zstack-cli   //进入zstack-cli
    admin >>> LogInByAccount accountName=admin password=<ADMIN_PASSWORD>     //使用admin账户登录cli。其中,<ADMIN_PASSWORD>为admin账户的密码,占位符仅用于示例,请替换为实际密码
    admin >>> UpdateGlobalConfig name=grayscaleUpgrade category=upgradeControl value=false     //关闭灰度升级开关
  11. 开启云主机高可用开关。

    ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的启用按钮。

后续操作

至此,单管理节点灰度升级已完成。用户可按需继续进行虚拟化组件和Kernel升级。

双管理节点灰度升级

背景信息

本章节详细介绍双管理节点灰度升级的操作流程。

操作步骤

  1. 获取升级安装包。
    准备以下软件包,并分别存放在两个管理节点的/root/目录:
    • ZStack Cloud ISO:
      • 软件名称: ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
      • 下载地址:点击这里
    • ZStack Cloud安装包:
      • 软件名称:ZStack-Cloud-installer-5.5.24.bin
      • 下载地址:点击这里
    • ZStack Cloud升级脚本:
      • 软件名称:ZStack-Cloud-upgrade
      • 下载地址:点击这里
    • 多管理节点高可用套件 Multi-MN-HA:
      • 软件名称:ZStack-Multinode-HA-Suite-5.5.24.tar.gz
      • 下载地址:点击这里
    Note:
    • ZStack Cloud支持离线升级,无需连接公网,请提前获取软件包和升级脚本。
    • 软件包或升级脚本下载完成后,请确保MD5与官网一致,如不一致请重新下载。
  2. 关闭云主机高可用全局开关。

    登录ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的停用按钮。

  3. 选择灰度升级验证物理机。

    在升级前准备阶段,预先选定一台承载非核心业务的物理机,作为灰度升级验证节点。该物理机将在后续升级过程中优先执行手动重连操作,用于验证Agent升级、云主机运行状态及业务可用性。

  4. 备份数据库和升级脚本。
    升级前,备份数据库和升级脚本以用于意外恢复。
    • 分别登录两个管理节点,执行以下命令将数据库备份至/var/lib/zstack/mysql-backup/目录:
      [root@localhost ~]# zstack-ctl dump_mysql --file-name zstack-db-backup
    • 分别在两个管理节点执行以下命令将升级脚本备份至/root/目录:
      [root@localhost ~]# cp /usr/local/bin/zstack-upgrade /root/zstack-upgrade-bk
  5. 更新本地repo源。
    分别在两个管理节点执行以下命令,更新本地repo源:
    [root@localhost ~]# zstack-upgrade -r ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
    Note: 升级本地repo时会自动更新升级脚本,脚本升级完成后,可按提示重新执行上一步命令即可。
  6. 获取VIP所在管理节点IP地址。
    执行以下命令获取VIP所在管理节点IP地址,返回结果中VIP为yes的节点即为VIP所在的管理节点:
    [root@localhost ~]# zsha2 status
  7. 解压高可用套件,并赋予可执行权限。
    在VIP所在管理节点依次执行以下命令,解压高可用套件,并对zsha2和zstack-hamon文件赋予可执行权限:
    [root@localhost ~]# tar zxvf ZStack-Multinode-HA-Suite-5.5.24.tar.gz      #解压高可用套件
    [root@localhost ~]# chmod +x zsha2 zstack-hamon    #赋予可执行权限
  8. 灰度升级高可用套件。
    在VIP所在管理节点执行以下命令,完成高可用套件的灰度升级:
    [root@localhost ~]# ./zsha2 upgrade-ha -gencfg=true
  9. 灰度升级云平台。
    在VIP所在管理节点依次执行以下命令,完成云平台的灰度升级:
    [root@localhost ~]# ./zsha2 upgrade-mn -grayscale -yes -db-root-pw <MYSQL_ROOT_PASSWORD> -peerpass password ZStack-Cloud-installer-5.5.24.bin
    Note:
    • <MYSQL_ROOT_PASSWORD>为MySQL root用户的密码,占位符仅用于示例,请替换为实际密码。
    • -grayscale参数用于启动灰度升级模式,升级完成后不会自动升级物理机及相关Agent。
    • -peerpass为可选参数,可设置Peer管理节点SSH登录密码。
    • 升级完成后,物理机、VPC等资源的升级状态将保持为未升级,需通过后续重连或关闭灰度开关推进升级。
  10. 手动清理浏览器缓存。

    为了保证新功能能够正常使用,请在升级完成后登录ZStack Cloud UI界面,并按下Ctrl+F5Ctrl+Shift+R,手动清理浏览器缓存。

  11. 检查灰度升级后资源状态。

    登录ZStack Cloud UI界面,检查物理机、主存储、镜像服务器等资源状态,确保资源处于已连接状态。同时查看物理机及VPC等资源的升级状态,在灰度升级模式下,此时升级状态应显示为未升级

  12. 对非核心业务物理机执行灰度升级验证。

    选择预先选定的非核心业务物理机,在ZStack Cloud UI界面中手动执行重连操作, 触发该物理机及相关Agent的升级。

    重连完成后,需对升级结果进行验证,确保升级过程及业务运行均无异常:
    • 确认物理机上Agent版本记录已更新,且运行状态正常。
    • 检查主存储及相关组件运行状态是否正常。
    • 确认云主机运行状态及网络连通性正常,业务访问未受影响。

    当上述检查项均验证通过,且该物理机的升级状态显示为已升级时,可认为灰度升级验证通过,并可继续推进后续的全平台升级操作。

    Note:
    • 在灰度升级期间,允许对未升级的物理机执行重连操作,重连后将自动触发Agent升级。
    • 若灰度升级期间物理机发生意外失联,且无法自动重连成功,可通过手动重连方式恢复,重连后同样会升级Agent。
  13. 推进全平台资源升级。

    在灰度升级验证通过后,可根据实际需求选择以下方式,推进其余资源完成升级:

    • 手动分批推进:依次对其余物理机执行重连操作,逐步完成物理机及相关Agent的升级,并持续关注升级过程及业务运行状态。
    • 自动推进升级:在确认非核心业务物理机灰度升级验证通过,且无需继续对剩余资源进行分批验证后,关闭灰度升级开关,平台将自动完成剩余物理机及相关资源的升级。

    无论采用何种方式,在升级过程中均应持续检查云主机运行状态,确保业务不受影响。

  14. 关闭灰度升级开关。
    在确认灰度升级验证无异常后,执行以下命令关闭灰度升级变量开关:
    [root@localhost ~]# zstack-cli   //进入zstack-cli
    admin >>> LogInByAccount accountName=admin password=<ADMIN_PASSWORD>     //使用admin账户登录cli。其中,<ADMIN_PASSWORD>为admin账户的密码,占位符仅用于示例,请替换为实际密码
    admin >>> UpdateGlobalConfig name=grayscaleUpgrade category=upgradeControl value=false     //关闭灰度升级开关
  15. 开启云主机高可用开关。

    ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面,点击右上角的启用按钮。

后续操作

至此,双管理节点灰度升级已完成。用户可按需继续进行虚拟化组件和Kernel升级。

虚拟化组件升级 (可选)

背景信息

不同云平台版本使用的虚拟化组件 (QEMU、Libvirt) 版本可能不同。平台版本升级后,物理机的虚拟化组件不会自动更新。为避免平台功能或安全补丁缺失,用户可以在平台版本升级后,手动升级虚拟化组件至新版本。

操作步骤

  1. 更新管理节点repo源
    确认已使用新ISO更新管理节点repo源。如未更新,请登录管理节点执行以下命令。双管理节点场景下,请分别登录两个管理节点执行:
    [root@localhost ~]# zstack-upgrade -r ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
  2. 备份管理节点数据库。
    在管理节点执行以下命令将数据库备份至/var/lib/zstack/mysql-backup/目录。双管理节点场景下,请分别在两个管理节点执行:
    [root@localhost ~]# zstack-ctl dump_mysql --file-name zstack-db-backup
  3. 检查云平台服务及硬件资源连接情况。
    检查云平台服务是否正常及各项硬件资源是否已连接。
  4. 关闭全局云主机高可用。
    登录ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面右上角,点击停用
  5. 启用全局设置zstack.experimental.repo
    登录管理节点,执行以下命令,启用zstack.experimental.repo。双管理节点场景下,需在VIP所在的管理节点执行:
    [root@localhost ~]# zstack-cli
    # 进入CLI命令行
    - >>>  LogInByAccount accountName=admin password=${Password}
    # 使用admin账号密码登录
    admin >>> UpdateGlobalConfig category=cluster name=zstack.experimental.repo value=true
    # 更新全局设置,启用zstack.experimental.repo源
    Note: 双管理节点场景下,用户可在任一节点执行zsha2 status,返回结果中VIP为yes的节点即为VIP所在的管理节点。
  6. 升级物理机QEMU。
    在管理节点CLI命令行执行以下命令,升级物理机QEMU:
    admin >>> QueryCluster    //查询集群UUID
    admin >>> UpdateClusterOS updatePackages=qemu-kvm excludePackages=python2-crypto uuid=${ClusterUuid}    //升级指定集群下所有物理机的QEMU,记录执行该命令后返回的uuid (即LongJobUuid)
    admin >>> QueryLongJob uuid=${LongJobUuid}    //查询升级进度,返回state=Succeeded,表示升级已完成
    Note: 如云平台内存在多个集群,可按集群依次升级。
  7. 升级物理机Libvirt。
    在管理节点CLI命令行执行以下命令,升级物理机Libvirt:
    admin >>> QueryCluster    //查询集群UUID
    admin >>> UpdateClusterOS updatePackages=glib2 uuid=${ClusterUuid}
    admin >>> UpdateClusterOS updatePackages=libvirt excludePackages=python2-crypto uuid=${ClusterUuid}    //升级指定集群下所有物理机的Libvirt,记录执行该命令后返回的uuid (即LongJobUuid)
    admin >>> QueryLongJob uuid=${LongJobUuid}    //查询升级进度,返回state=Succeeded,表示升级已完成
    Note: 如云平台内存在多个集群,可按集群依次升级。
  8. 检查升级后的QEMU和Libvirt版本。
    登录物理机,执行以下命令,确认QEMU和Libvirt是否已升级到目标版本:
    [root@localhost ~]# qemu-img -V    //查询QEMU版本
    [root@localhost ~]# rpm -qa | grep libvirt    //查询Libvirt版本
  9. 关闭全局设置zstack.experimental.repo
    登录管理节点,执行以下命令,关闭zstack.experimental.repo
    [root@localhost ~]# zstack-cli
    # 进入CLI命令行
    - >>>  LogInByAccount accountName=admin password=${Password}
    # 使用admin账号密码登录
    admin >>> UpdateGlobalConfig category=cluster name=zstack.experimental.repo value=false
    # 更新全局配置,关闭zstack.experimental.repo源
  10. 重启或迁移云主机、VPC路由器、负载均衡实例。
    登录ZStack Cloud UI界面,重启或迁移对应物理机上的云主机、VPC路由器和负载均衡实例,同步更新云资源的QEMU版本。
  11. 打开云主机全局高可用。
    ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面右上角,点击启用

后续操作

至此,虚拟化组件升级已完成。

Kernel升级 (可选)

背景信息

不同云平台版本对应的Kernel版本可能不同。平台版本升级后,物理机的Kernel不会自动更新。为避免平台功能或安全补丁缺失,用户可以在平台版本升级后,手动升级物理机Kernel至新版本。

操作步骤

  1. 更新管理节点repo源
    确认已使用新ISO更新管理节点repo源。如未更新,请登录管理节点执行以下命令。双管理节点场景下,请分别登录两个管理节点执行:
    [root@localhost ~]# bash zstack-upgrade -r ZStack-Cloud-x86_64-DVD-5.5.24-h84r.iso
  2. 备份管理节点数据库
    在管理节点执行以下命令将数据库备份至/var/lib/zstack/mysql-backup/目录。双管理节点场景下,请分别在两个管理节点执行:
    [root@localhost ~]# zstack-ctl dump_mysql --file-name zstack-db-backup
  3. 检查云平台服务及硬件资源连接情况。
    检查云平台服务是否正常及各项硬件资源是否已连接。
  4. 关闭全局云主机高可用。
    登录ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面右上角,点击停用
  5. 启用全局设置zstack.experimental.repo
    登录管理节点,执行以下命令,启用zstack.experimental.repo。双管理节点场景下,需在VIP所在的管理节点启用:
    [root@localhost ~]# zstack-cli
    # 进入CLI命令行
    - >>>  LogInByAccount accountName=admin password=${Password}
    # 使用admin账号密码登录
    admin >>> UpdateGlobalConfig category=cluster name=zstack.experimental.repo value=true
    # 更新全局配置,启用zstack.experimental.repo源
    Note: 双管理节点场景下,用户可在任一节点执行zsha2 status,返回结果中VIP为yes的节点即为VIP所在的管理节点。
  6. 升级物理机Kernel。
    在管理节点CLI命令行执行以下命令,升级物理机Kernel:
    admin >>> QueryCluster    //查询集群UUID
    admin >>> UpdateClusterOS updatePackages=kernel excludePackages=python2-crypto uuid=${ClusterUuid}    //升级指定集群下所有物理机的Kernel,记录执行该命令后返回的uuid (即LongJobUuid)
    admin >>> QueryLongJob uuid=${LongJobUuid}    //查询升级进度,返回state=Succeeded,表示升级已完成
    Note: 如云平台内存在多个集群,可按集群依次升级。
  7. 检查升级后的Kernel版本。
    登录物理机,执行以下命令,确认Kernel是否已升级到目标版本:
    [root@localhost ~]# rpm -qa | grep -i kernel
  8. 重启物理机。
    依次重启物理机系统,使新版本Kernel生效。
    Note: 重启物理机会短暂中断该物理机上的云主机业务,请在业务低峰期执行。
  9. 关闭全局设置zstack.experimental.repo
    登录管理节点,执行以下命令,关闭zstack.experimental.repo
    [root@localhost ~]# zstack-cli
    # 进入CLI命令行
    - >>>  LogInByAccount accountName=admin password=${Password}
    # 使用admin账号密码登录
    admin >>> UpdateGlobalConfig category=cluster name=zstack.experimental.repo value=false
    # 更新全局配置,关闭zstack.experimental.repo源
  10. 打开云主机全局高可用。
    登录ZStack Cloud UI界面,点击设置 > 平台设置 > 高可用策略,在高可用策略界面右上角,点击启用

后续操作

至此,ZStack Cloud典型升级流程已介绍完毕。如有其他疑问或需要升级帮助,请联系官方技术支持。