1. vMotion业务迁移工程导论
vMotion 是 vSphere 中最具代表性的在线迁移能力,它允许正在运行的虚拟机在不中断业务的前提下,从一台 ESXi 主机迁移到另一台 ESXi 主机。但把 vMotion 当作“点一下按钮就能搬走”的功能,是工程实践中最常见的误判。真正的迁移工程要回答三个问题:迁移对象是什么、迁移路径经过哪些资源、迁移过程中业务是否持续可用。本课程围绕这三个问题展开,把 vMotion 从单点操作提升为一套可规划、可验证、可回退的工程方法。
课程目标
完成本课程后,你应当具备以下能力:能够识别一次 vMotion 迁移所依赖的计算、存储、网络三类资源条件;能够根据业务窗口和风险等级选择标准 vMotion、Storage vMotion 或跨 vCenter 的混合迁移方式;能够为迁移设计前置检查、执行监控和回退方案;能够读懂迁移任务中的关键指标,例如迁移速率、内存传输轮次和切换停顿时间,并据此判断迁移是否健康。课程不追求罗列菜单,而是让你在真实拓扑中做出可解释的决策。
迁移工程生命周期
迁移工程不是一次操作,而是一个有起点和终点的闭环。可以把它划分为五个阶段:评估、设计、准备、执行、收尾。评估阶段盘点待迁移虚拟机的资源画像,包括 vCPU、内存、磁盘容量、存储类型和网络依赖;设计阶段确定目标主机、目标存储和目标端口组,并判断是否需要跨 vCenter 或跨长距离链路;准备阶段完成兼容性检查、权限确认、快照与备份策略;执行阶段按批次迁移并实时观察指标;收尾阶段核对业务状态、清理临时快照、更新资产记录。
这五个阶段中,评估和设计决定了迁移的上限,执行只是把设计落地。很多迁移失败并非发生在点击“迁移”之后,而是因为评估阶段漏掉了某个 RDM 磁盘或某个仅存在于源主机的端口组。因此本课程会把大量篇幅放在前置条件上。
核心术语与整体架构
理解 vMotion 需要先建立一张清晰的架构图。源 ESXi 主机和目标 ESXi 主机各自运行虚拟机,二者通过 vMotion VMkernel 端口建立迁移通道。vCenter Server 负责发起任务、校验兼容性并跟踪进度。共享存储让磁盘数据无需复制即可被目标主机访问;如果使用 Storage vMotion,则磁盘数据也会通过存储网络传输。网络层面,虚拟机的端口组必须在目标主机上存在同名或可映射的配置,否则迁移后虚拟机将失去网络连接。
迁移过程中,源主机持续跟踪虚拟机的内存页变化。第一轮传输全部内存页,随后对发生修改的脏页进行多轮增量传输。当脏页速率降到足够低时,虚拟机进入短暂的切换停顿,源主机挂起虚拟机,把最后一批内存和 CPU 状态传到目标主机,目标主机恢复运行。这个停顿通常在几十毫秒到几百毫秒之间,是业务几乎无感的根本原因。理解“多轮增量传输 + 短暂停顿”这一机制,就能理解为什么内存写入密集型的虚拟机迁移时间更长,也就能解释为什么迁移速率和脏页速率是监控的核心指标。
迁移方式的选择
标准 vMotion 只迁移计算状态,要求源和目标都能访问同一份存储。Storage vMotion 同时迁移计算和存储,适用于更换数据存储或存储阵列的场景。跨 vCenter vMotion 则用于数据中心整合或云迁移,需要额外的网络连通性和权限配置。选择哪种方式,取决于迁移目标:如果只是主机维护,标准 vMotion 足够;如果要下线旧存储,必须使用 Storage vMotion;如果涉及不同 vCenter 实例,则要评估跨站点延迟和加密要求。
工程视角下的关键判断
一次迁移是否成功,不能只看任务状态是否变成“已完成”。工程上还要确认:虚拟机在目标主机上网络是否可达、存储延迟是否正常、业务进程是否持续响应、监控告警是否出现异常。如果迁移后业务出现短暂抖动,需要回看切换停顿时间和目标主机的资源争用情况。把这些判断标准前置到设计阶段,迁移才从“操作”变成“工程”。