还记得 VMware vSphere 8 U3 中更新的有关 vSphere 生命周期管理功能吗?其中,vSphere Lifecycle Manager 引入了一个叫 “Live Patch” 实时修补的功能,该功能允许用户在无停机无中断的情况升级自己的 vSphere 集群,并且也无需将虚拟机从原主机迁移至其他主机即可完成更新。而以往,要完成主机补丁的修补或者更新,通常需要先将虚拟机迁走,然后主机被置于维护模式,完成补丁更新后还要重启主机才能完成整个流程,这个过程不仅繁琐还会容易出错并可能造成业务中断。

vSphere Live Patch 功能的优势明显,可能大家之前也看过了相关的文章介绍了这个功能,但是都没有真正实际应用过,我也一样,其实原因是 VMware 仅仅发布了这个功能,但是之前并没有可用的支持 Live Patch 的补丁。

vSphere Live Patch 实时修补过程是怎么样的?使用 Live Patch 执行修补过程时,vSphere 集群中的 ESXi 主机将进入“部分维护模式”,目标补丁组件的新修订版本与当前版本并行挂载,新的挂载修订版文件和进程已修补,ESXi 主机上的虚拟机执行“快速挂起恢复(FSR)”以使用已修补的版本。

ESXi 主机进入部分维护模式时,上面的虚拟机将继续保持运行,但是此时不允许将该主机上的虚拟机迁移到其他主机,或者从其他主机迁移虚拟机过来,同时也不允许在该主机上创建新的虚拟机。

前面说过,使用 vSphere Live Patch 功能的前提是,你所修补的新补丁必须支持 Live Patch 才可以,我们可以在 vSphere Lifecycle Manager 管理界面查看该补丁是否被标记支持 Live Patch,还有在 vSphere 集群的更新 Image 映像设置中看到补丁是否可以被应用于 Live Patch。

当然,是否支持 Live Patch 的补丁也会在产品的发行说明中提到,比如在最近的 VMSA-2025-0013 安全通告中,VMware 多个产品版本具有 CVE-2025-41237 等多个安全漏洞,并且安全等级为严重,VMware 推出安全补丁 VMware ESX 9.0.0.0100 以解决公告中针对于 vSphere 9 产品的安全漏洞。可能会发现,ESXi 在 vSphere 9 版本中已被更名为 ESX,并且版本补丁的命名方式不再是 U1/U2/U3,而是版本后面加小补丁号。

基于此,我想尝试在 vSphere 9 版本中应用 Live Patch 实时修补功能,看看是不是像官方幻灯片宣传的那样。其实,vSphere 9 仅作为 VMware vSphere Foundation(VVF) 或者 VMware Cloud Foundation(VCF) 产品套件的一部分提供(详见),所以正常情况下的 vSphere 集群的修补过程应该是使用新组件 VCF Operations 来完成,由于我没有部署完整的环境,所以以下测试过程还使用原来 vSphere 8 的修补方式来完成。

一、环境准备

vSphere 环境的安装部署过程就省略了,9 版本和之前 vSphere 8 版本的操作过程几乎没什么区别,只是提一点是,对于 Hypervisor 操作系统安装的时候可以通过“systemMediaSize”选项参数来控制分区的配置,而 ESX 9 中可以使用的选项不再支持 min 和 small 了。

在创建集群的时候,vSphere 9 集群仅支持基于“Image”映像的生命周期管理方式。注意,启动 DRS 并设置为全自动模式。

使用集群快速配置向导配置 vSAN HCI 集群,可能会发现之前叫“vSAN Max”的集群架构方式现在叫“vSAN Storage Cluster”。

vCenter Server 版本为 9.0.0.0,版本号 24755230。

ESX 版本为 9.0.0.0,版本号 24755229。

vSAN HCI ESA 架构单站点标准集群。

部署了 vm1 和 vm2 虚拟机,分别运行在 a1 和 a2 主机上。

二、修补准备

导航到 vSphere Client->Plugins->Lifecycle Manager。

点击“ACTIONS”,选择“Import Updates”,选择并导入本地的补丁文件。

手动导入后,点击“Software Depot”,可以看到补丁后面有 Live Patch 标记。

点击“Settings”,导航到“Cluster Lifecycle”->“Images”设置,点击“EDIT”编辑并将“Enforce Live Patch”功能开启。注意,该选项针对所有集群生效,也可以在集群映像更新设置中单独开启(参见)。

三、修补过程

导航到集群(vsan-esa-cluster)->Updates->Hosts->Image,点击“EDIT”。

点击“ESXi Version”并选择新补丁,可以对集群的映像设置一个新的名称,当集群中具有不同配置的主机时,可以为集群“ADD IMAGE”添加并定义多个映像,之前介绍过(参见)。

点击“Components”后面的“SHOW DETAILS”并选择“ALL components”,也可以自定义映像中的组件,比如将 VM Tools 从基础映像中删除。

由于是测试环境,没有供应商加载项以及其他独立组件等,只需要定义基础映像并点击“SAVE”保存即可。

点击“RUN PRE-CHECK(ALL)”运行预检查。

点击“STAGE(ALL)”将补丁转储到所有主机。

点击“REMEDIATE(ALL)”开始修补所有主机。

点击其中一台主机,我们可以看到该主机即将执行的所有操作。

开始依次对 vSphere 9 集群中的所有主机执行 Live Patch 实时修补,可以看到主机已经进入部分维护模式(Partial Maintenance Mode)。

开始 a2 主机修补工作流。

a2 主机修补的完整过程:

  07/21/2025, 5:41:55 PM  Finished remediation of the host 'esx9-a2.mulab.local'
07/21/2025, 5:41:55 PM Finished compliance check for host 'esx9-a2.mulab.local'
07/21/2025, 5:41:18 PM Started compliance check for host 'esx9-a2.mulab.local'
07/21/2025, 5:41:17 PM Completed exiting partial maintenance mode for host 'esx9-a2.mulab.local'
07/21/2025, 5:41:16 PM Started exiting partial maintenance mode for host 'esx9-a2.mulab.local'
07/21/2025, 5:41:11 PM Completed installing the image on host 'esx9-a2.mulab.local'
07/21/2025, 5:39:46 PM Live Patch apply-published script '03_vmx-apply-published' returned a message: The following Virtual Machines have been tagged for applying fast suspend and resume (FSR): vm2.
07/21/2025, 5:39:46 PM Live Patch apply-published script '01_vmkqp-apply-published' returned a message: The following patches have been successfully activated: vmkqp_00.
07/21/2025, 5:39:46 PM Live Patch apply-published script '01_vmkqp-apply-published' returned a message: The following patch modules have been successfully loaded: vmkqp_00.
07/21/2025, 5:39:46 PM Live Patch apply-published script '03_vmx-apply-published' succeeded.
07/21/2025, 5:39:45 PM Starting to execute Live Patch apply-published script '03_vmx-apply-published'.
07/21/2025, 5:39:45 PM Live Patch apply-published script '01_vmkqp-apply-published' succeeded.
07/21/2025, 5:39:44 PM Starting to execute Live Patch apply-published script '01_vmkqp-apply-published'.
07/21/2025, 5:39:23 PM Live Patch scan script '03_vmx-scan' succeeded.
07/21/2025, 5:39:22 PM Starting to execute Live Patch scan script '03_vmx-scan'.
07/21/2025, 5:39:22 PM Live Patch scan script '01_vmkqp-scan' succeeded.
07/21/2025, 5:39:21 PM Starting to execute Live Patch scan script '01_vmkqp-scan'.
07/21/2025, 5:39:21 PM Live Patch scan script '01_nsxhost_scan.py' succeeded.
07/21/2025, 5:39:12 PM Starting to execute Live Patch scan script '01_nsxhost_scan.py'.
07/21/2025, 5:38:39 PM Started to install the image on host 'esx9-a2.mulab.local'
07/21/2025, 5:38:39 PM Completed entering partial maintenance mode for host 'esx9-a2.mulab.local'
07/21/2025, 5:38:38 PM Started to enter partial maintenance mode for host 'esx9-a2.mulab.local'
07/21/2025, 5:38:37 PM Starting remediation of the host 'esx9-a2.mulab.local'
07/21/2025, 5:38:37 PM Completed getting host recommendation from DRS to enter maintenance mode for cluster 'vsan-esa-cluster'. Selected host: 'esx9-a2.mulab.local'.
07/21/2025, 5:38:37 PM Started getting host recommendation from DRS to enter maintenance mode for cluster 'vsan-esa-cluster'.

主机上的虚拟机没有被迁移并依然正常运行。

完成修补。

检查版本。

经过上面的测试结果可以确认,vSphere 9 现在已经可以使用 Live Patch 进行实时补丁修补,整个过程无需撤离虚拟机,并且以无中断无停机的方式修补了 vSphere 集群,这意味着未来客户可以大大减少生产环境中的停机时间,降低维护的复杂度以及可能未知的风险。

但是,vSphere Live Patch 功能真就这么完美吗?No!并非所有的补丁都支持 Live Patch,vSphere 9 中的 Live Patch 依然存在 vSphere 8 中的限制,比如不能和集群主机并行修复功能结合使用,不兼容配置了 TPM 2.0 以及 DPU 设备的系统,配置了 FT、DirectPath I/O 的虚拟机和 vSphere Pod 容器无法使用 Fast-Suspend-Resume(FSR),这些需要手动修复。

【VMware vSphere】借助 Live Patch 无停机修补 vSphere 9 集群。的更多相关文章

  1. vmware里面的名词 vSphere、vCenter Server、ESXI、vSphere Client

    vmware里面的名词 vSphere.vCenter Server.ESXI.vSphere Client vSphere.vCenter Server.ESXI.vSphere Client VS ...

  2. Vmware Vsphere WebService之vijava 开发一-vcenter连接、及集群信息获取

    开始是通过java代码调用vsphere提供的原始接口,从而控制vcenter的操作.当第一个版本做完之后发现代码执行的速度特别慢,后来在网上看到有人用vijava(对vsphere原始接口封装)编程 ...

  3. 安装部署VMware vSphere 5.5文档 (6-6) 集群和vMotion

    部署VMware vSphere 5.5 实施文档 ########################################################################## ...

  4. 在开启DRS的集群中修复VMware虚拟主机启动问题

    通过iSCSI方式连接到ESXi主机上的外挂存储意外失联了一段时间,导致部分虚拟主机在集群中呈现出孤立的状态,单独登陆到每台ESXi上可以看到这些虚拟主机都变成了unknow状态.因为有过上一次(VM ...

  5. 使用IBM SVC构建vSphere存储间集群

    使用IBM SVC构建vSphere存储间集群 本文目的 本文描述利用IBM SVC来构建Vsphere 存储间集群 解决方案 什么是vMSC? vShpere存储间集群是一个针对VmwarevSpe ...

  6. 通过VMware的PowerCLI配置集群内指定主机的vMotion功能

    PowerCLI是VMware开发的基于微软(MSFT)的PowerShell的命令行管理vSphere的实现,因此在批量化操作方面CLI会减轻很多GUI环境下的繁琐重复劳作. 现有场景中有大量的物理 ...

  7. 初试集群虚拟化搭建(二)—— Xen, kvm, OpenStack, VMware ESXi, Citrix XenServer等种种选择

    小伙伴们找到了一些主流方案的资料,最终选择了XenServer6.5作为平台搭建. Xen 特点: 功能强大,支持Linux的各种发行版本 通常是在现有Linux操作系统上安装,是一种半虚拟化的安装方 ...

  8. VMware workstation虚拟集群实践(1)—— 配置集群多节点互信

    一. 简述 节点互信,是集群管理的基本操作之一.节点互信是通过SSH协议的公钥密钥认证来代替密码认证来实现的.对于单点批量管理多个节点,多个节点之间相互通信来说,配置SSH单方向信任,或者互信十分必要 ...

  9. VLAN 模式下的 OpenStack 管理 vSphere 集群方案

    本文不合适转载,只用于自我学习. 关于为什么要用OpenStack 管理 vSphere 集群,原因可以有很多,特别是一些传统企业,VMware 的使用还是很普遍的,用 OpenStack 纳管至少会 ...

  10. Hadoop1.x集群安装部署(VMware)

    一.hadoop版本介绍 不收费的Hadoop版本主要有三个(均是国外厂商),分别是:Apache(最原始的版本,所有发行版均基于这个版本进行改进).Cloudera版本(Cloudera’s Dis ...

随机推荐

  1. 37.1K star!MCP爆火后,这个AI模型全能工具箱开源项目让智能体开发更简单!

    嗨,大家好,我是小华同学,关注我们获得"最新.最全.最优质"开源项目和高效工作学习方法 "Awesome MCP Servers 是当前最全面的模型上下文协议服务器集合, ...

  2. 【记录】Samba|Windows 11的Samba连接切换用户

    Samba是一个用于共享文件和打印机的网络协议,可以使不同的操作系统之间共享文件和资源变得容易.在Windows 11上,可以使用Samba来连接到网络共享. 如果您想在Windows 11上切换用户 ...

  3. 【笔记】Excel 2021|VBA删除数组中的一个元素、循环时删除一行、选择一列删除指定一行

    主要问题是循环的时候删除一行比较麻烦,因为删除了一行后,循环仍然直接访问后一行,会导致一定的异常. 文章目录 选择一列,删除指定一行 删除数组中的一个元素 方法1:利用动态数组,在循环中条件判断删除 ...

  4. MyCAT 2实现mysql8主从同步读写分离

    一.MyCAT2介绍 1.1 什么是MyCAT?MyCAT是目前最流行的分布式数据库中间插件,是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器.前端用户可以把它看作一个数据库代理,用M ...

  5. vue3 基础-列表渲染

    本篇讲列表渲染, 主要是对 v-on 指令配合 v-if 和一些数组相关的方法来体验 vue 的模板渲染方法. 数组元素的渲染 <!DOCTYPE html> <html lang= ...

  6. [Redis] Redis (7) 连接与会话管理

    序:文由 因今日排查问题,发现微服务因 ERR max number of clients reached (已达到客户端的最大数量) redis异常,而导致服务在健康检测时未通过,进而导致高频宕机. ...

  7. Java 自定义线程池的任务

      在<Java 自定义线程池的线程工厂>一文中介绍了如何优雅地自定义线程工厂,本文介绍如何自定义线程池的任务,并拿到返回值.   首先自定义一个任务类,实现Callable接口,重写ca ...

  8. Linux下安装Flume

    摘要 flume是由cloudera软件公司产出的可分布式日志收集系统,后于2009年被捐赠了apache软件基金会,为hadoop相关组件之一.尤其近几年随着flume的不断被完善以及升级版本的逐一 ...

  9. 生长算法和巡中线算法python实现代码示例(自用)

    生长算法和巡中线算法python实现代码示例(自用) import cv2 import time import numpy as np from math import pi, isnan # PI ...

  10. springboot添加ssl实现https访问(http自动跳转)

    目录 Step1 Step2 Step3 Step4 Step5 Tips: 直接docker部署的时候端口号问题 Step1 去搞一个证书,我的是腾讯买域名送的 Step2 下载jks格式的 Ste ...