
简介针对VMware P2V热迁移场景的PDF文档面向需要在不中断业务情况下将物理服务器转换为虚拟机的运维与虚拟化管理员适合在实施前全面了解迁移链路与关键检查项。资源为单个PDF文档大小约578KB内容紧凑、便于离线查阅。文档详细阐述成功迁移的注意事项包括vConverter服务器、ESX Server与源物理服务器之间的通信链路Windows Installer、Workstation、Server、TCP/IP NetBIOS Helper及Volume Shadow Copy等关键服务状态防火墙策略、C盘暂存空间预留、TCP/UDP端口放行等前置条件随后讲解在vCenter中通过Converter插件创建调度任务指定源物理机IP、用户名与密码作为凭据设置目标虚拟机名称、主机、资源池、数据存储及网卡参数并选择自动安装VMware Tools同时涵盖操作系统序列号、连接数、时区及网络加入域等配置直至设定执行时间并查看迁移进度迁移完成后还可在vCenter中启动虚拟机以验证运行状态。目前已有1758人学习适合需要为物理机到虚拟机平滑迁移提供实际操作参考的运维人员有助于规避常见错误、保障业务连续性。1. 把老旧物理机无损搬进虚拟化P2V 热迁移能解决什么机房角落里那台跑了五年的物理服务器硬件过保、驱动停产业务方却甩给你一句话“这台机器不能停机。” 这时候最常用的解决方案就是 P2V 热迁移。P2V 是 Physical to Virtual 的缩写把物理机转换成虚拟机热迁移指的是源机全程不关机在线把系统盘和数据盘复制到 VMware 虚拟机里。相比关机对拷的冷迁移热迁移能做到业务几乎无感知代价是数据一致性、增量同步的复杂度明显上升。这篇文章适合接手老旧物理机整合、机房腾退、硬件升级换代的运维和基础架构工程师目标是让你能把整个迁移流程变成一套可复制的操作手册。2. 热迁移原理与路线选择冷迁移、vMotion 和 P2V 的边界2.1 冷迁移与热迁移的取舍什么时候不该用热迁移物理机到虚拟机的迁移常见做法只有两条路线。冷迁移先把业务停掉关机状态下用磁盘对拷工具把整盘数据复制出来再转成 VMware 的 VMDK 镜像热迁移则靠一个临时 Agent 在源机后台运行在线完成卷级复制和增量同步最后做一次短暂的数据收敛。新手很容易把热迁移当成默认选项觉得“不停机就是好”。但冷迁移的优势同样很硬机器关机后磁盘不会再变化拷完镜像数据必然一致不需要处理增量同步、VSS 快照这类不确定因素。对于内部测试机、非核心业务机或者数据量不大的机器停机半小时就能完成的迁移完全没必要上热迁移给自己找麻烦。我一般按三个条件做决定业务是否允许短暂停写、磁盘总用量大小、迁移期间的数据变化速率。业务允许停写且数据量在 500GB 以内直接冷迁移更省事业务严格不允许停机但日常写入量不高热迁移是合理的选择如果源机持续高写入热迁移的增量同步可能永远追不上变化这时候应该考虑数据库复制或备份恢复路线而不是硬上 P2V。实际沟通中还有一个容易混淆的概念VMware 的 vMotion 在中文语境里也常被叫“热迁移”但那是虚拟机在主机之间无缝迁移要求源和目标都是虚拟机而 P2V 热迁移的源是一台物理机。两者不在一个层面。跟业务方沟通时要把这两个词分开否则对方以为你在做在线切换理解会完全偏掉。2.2 热迁移的复制机制Agent 块级复制与 VSS 静默VMware 的 P2V 热迁移底子是卷级块复制加增量同步。源机上装一个 Converter AgentAgent 按块读取各个卷的数据全量写入目标虚拟机对应的 VMDK全量做完后进入增量阶段持续把变化的块同步过去直到接近收敛。这个模型决定了迁移时间主要由磁盘总容量加上增量变化量决定而不是单纯取决于网络带宽。Windows 源机的关键依赖是 VSS也就是 Volume Shadow Copy Service。Agent 在某个时间点触发一次卷影副本快照然后从快照里读取一致的数据块。如果没有 VSS直接裸读磁盘块正在写入的文件会停在中间状态迁移完成后的系统日志和数据文件很容易报损坏。所以预检时第一件事是确认 Volume Shadow Copy 服务和 Microsoft Software Shadow Copy Provider 都处于启动状态而不是只停留在“手动”配置。Linux 源机不依赖 VSSConverter 通过文件系统层的一致性机制保证数据完整但 Linux 迁移的难点在分区表、LVM 布局和引导器兼容性上这几个问题在后面的避坑章节里有对应记录。热迁移的收敛时间还跟发起时段强相关第一轮全量拷贝期间赶上业务高峰增量同步会被持续的新写入拖着走任务时间不可控。经验是避开业务高峰选夜间低峰窗口发起转换任务。2.3 工具选型Converter Standalone 还是 vCenter 内置 P2V实现 P2V 热迁移的官方工具一类是独立的 VMware vCenter Converter Standalone免费、GUI 操作适合单台或小批量迁移另一类是 vCenter 里的“迁移到虚拟机”向导适合已经统一接入了 vCenter 的环境。两者走的是同一套底层复制引擎区别主要在管理和集成方式上。我的习惯是三五台以内、目标端是单台 ESXi 或 Workstation 的环境直接用 Converter Standalone简单直接已经上了 vCenter 的生产环境用 vCenter 内置迁移方式虚拟机直接注册进 vCenter省掉后续手工加主机、加存储、加资源池的步骤。如果你的目标端是一台装好了 vmware workstation 的测试机Converter 同样支持输出到 Workstation 虚拟机只是少了后续热迁移和资源调度这类能力。工具选型的隐藏前提是网络。Converter 服务端要访问源机的 445 管理共享和 135 远程管理端口用来发现系统信息并推送 Agent迁移数据通道还要放行目标 ESXi 的 902 端口。很多企业防火墙只放 443 不放 902任务就会反复重试最终失败。另外Converter 版本要跟目标端 ESXi 版本匹配新版本 ESXi 用老版本工具可能无法识别目标主机动手之前先去兼容性列表确认能省掉大量返工。3. 迁移前预检 6 项检查让 P2V 少翻车的准备工作3.1 源机兼容性、许可证与授权核对先确认源机操作系统在 Converter 支持范围内。Windows Server 2003 到 2019、主流的 CentOS/RHEL/Ubuntu 基本都覆盖但新发布的 Windows Server 版本用老版本 Converter 可能识别不了动手前查支持矩阵是必要的不是浪费时间。许可证问题容易被忽略这里单独拿出来说。Windows Server 迁到虚拟机的授权换算规则和物理机不同物理机按物理 CPU 核数授权虚拟化环境按虚拟 CPU 数授权而且不同版本对虚拟化覆盖范围和故障转移权益的认定有差异。迁移本身不会验证许可证但事后审计时发现虚拟核数超出授权范围会很被动。我在预检阶段会把物理机 CPU 型号、核数、内存、Windows 版本记进迁移表对照授权规则算一遍再开始。Linux 源机还要额外确认引导方式。BIOS 引导和 UEFI 引导在转换时对应的目标固件不同选错会导致开机黑屏或找不到引导设备。判断方法很简单检查是否存在 /sys/firmware/efi 目录存在就是 UEFI 引导目标虚拟机固件要选 UEFI不存在就是传统的 BIOS 引导。3.2 源机磁盘、VSS、凭据三项准备磁盘准备的核心是清理和瘦身。C 盘上的临时文件、Windows Update 缓存、日志堆积这些东西不会因为迁移而消失全都会带进虚拟机白占数据存储空间。而且磁盘越大全量拷贝时间越长增量同步的负担也越大。迁移前一周就该把临时文件清一遍有必要的话做一次磁盘碎片整理。Windows 源机还有三个细节要卡死。第一VSS 服务不能是禁用状态第二系统盘剩余空间至少留出 10%VSS 快照需要临时空间第三动态磁盘里的跨区卷在 Converter 上的支持很差常常只迁移第一段剩下的数据会丢。确认这三件事没有异常再进入配置向导。凭据准备上用域管理员或本地管理员都可以但 UAC 开启时会拦截远程 Agent 安装。常见做法是先确认“本地账户的 Admin Approval Mode”策略没有启用或者直接用域管理员账户操作。我之前遇到过一次本机管理员凭据怎么都推不上 Agent换成域管理员一次通过就是这个策略在作怪。3.3 目标端空间预估、网络隔离与资源预留目标端最容易在空间上翻车。源机 500GB 的磁盘不代表最终 VMDK 只有 500GB迁移过程中还有临时空间、快照空间、转换暂存文件加上未来虚拟机的交换文件和日志预留 1.2 倍只够兜底。数据存储空间不足时任务会卡在最后阶段反复重试进度条看着像坏了实际是磁盘满了。网络方面迁移流量和生产流量隔离是基本要求。几百 GB 的数据流如果跟业务混在同一张物理网卡上业务延迟会明显上升。ESXi 上单独建一个 VMkernel 端口供迁移流量使用源机和目标端尽量处于同一二层网段避免三层转发带来的丢包和延迟抖动。虚拟机命名、放置位置、所属资源池也提前定好。别小看这些规划迁移完成后还要做驱动装载、VMware Tools 配置、网络收敛这些收尾操作如果虚拟机名字随便起、资源池乱放后面管理全是坑。目标端虚拟机的网络参数也来自源机预检阶段把 ipconfig /all 和路由表打印结果存一份后面配置目标机网络和验证阶段都用得上。4. 执行 P2V 热迁移Converter 全流程与 4 个必调参数4.1 源机扫描与 Agent 部署打开 vCenter Converter Standalone 主界面点击“转换机器”进入向导。第一步填写源机 IP 和操作系统类型输入管理员凭据Converter 会先做一次远程探测读取源机的主机名、系统版本、磁盘布局和已安装驱动信息。探测结果就是后续配置向导的数据底座如果这一步失败问题大概率出在端口连通或凭据不匹配上。动手前先用 PowerShell 做一次端口连通性测试把网络问题提前暴露出来# 测试源机管理共享445和远程管理135端口是否可达 Test-NetConnection 192.168.10.20 -Port 445 Test-NetConnection 192.168.10.20 -Port 135 # 测试目标 ESXi 的迁移数据端口 902 是否放通 Test-NetConnection 192.168.10.30 -Port 902三条命令返回值里 TcpTestSucceeded 如果为 False先解决防火墙和路由问题再继续后续操作。Windows 源机探测通过后Converter 不直接开始拷贝而是先向源机远程部署一个临时 Agent 服务Agent 负责在后台执行卷读取、快照触发和数据推送。部署 Agent 依赖管理共享如果源机没开“文件和打印机共享”之类的防火墙规则部署会反复超时。Linux 源机的部署路径不同Converter 通过 SSH 连接源机在 /tmp 下释放 Agent 组件由 Agent 完成后续复制。预检时确认 sshd 服务运行中、root 可以远程登录、临时目录有足够空间这三项是 Linux P2V 的硬前提缺一项任务都会中断在初始化阶段。4.2 卷映射与虚拟机参数配置4 个必调参数进入配置阶段后重点看两块卷映射和虚拟机硬件参数。卷映射界面会列出源机所有卷并预填对应目标虚拟机磁盘。系统卷必选业务数据卷看实际情况临时盘和页面文件卷可以不迁避免浪费目标端空间。页面文件这块可以单独说一句如果源机页面文件在独立卷上目标虚拟机可以只保留系统卷虚拟内存放到虚拟机的动态内存或单独虚拟磁盘上不用照搬原磁盘布局。卷映射界面里还有个置备类型选项热迁移场景建议先选精简置备转换速度快、空间占用小如果虚拟机后续承载数据库或高 IO 业务再改为厚置备消除存储性能抖动。虚拟机参数里有四个参数决定能不能顺利启动。第一个是 SCSI 控制器类型。Windows 源机保守选择 LSI Logic SAS这个控制器的驱动在 Windows 2003 到 2019 里基本都有内置PVSCSI 性能更好但老系统没有驱动选了蓝屏风险高。Linux 源机如果内核版本较新PVSCSI 没问题保守起见也用 LSI Logic SAS。第二个是每插槽核心数。业务软件很多按插槽数授权源机是 2 插槽 8 核迁移后如果变成 1 插槽 16 核授权软件可能直接失效。Converter 默认按源机拓扑映射但最好在配置界面手动确认这个字段别偷懒跳过。第三个是网卡类型。E1000 兼容性最好适合首次启动VMXNET3 性能更好但需要驱动支持。推荐的做法是先 E1000 跑起来确认网络通了再装 VMware Tools 之后把网卡升级为 VMXNET3。第四个是目标固件类型。BIOS 引导的源机对应虚拟机固件选 BIOSUEFI 引导的选 UEFI两者选错会导致开机黑屏或 no bootable device。预检阶段用 efi 目录是否存在判断引导方式这一步能避免掉最常见的启动失败。目标端的虚拟机版本类型也要确认选和当前 ESXi 主机兼容的类型选太旧会丢失部分硬件特性选太新又可能不被主机支持界面里按主机建议值选最稳。提示首次启动蓝屏时不要急着删除虚拟机先改 SCSI 控制器类型到 LSI Logic SAS 再试一次多数情况下这一步就能解决。4.3 执行转换、日志定位与中断恢复配置确认后点击完成任务在后台启动界面上显示进度百分比。Converter 的进度条不是线性的前 60% 是全量拷贝60% 到 95% 是增量同步最后 5% 是收敛和收尾。实际工作中最常遇到卡在 95% 的场面原因通常是增量同步追不上业务写入或目标端 IO 瓶颈不代表任务挂了这章后面的避坑部分会具体讲。遇到异常时先看日志再决定是否重试。Converter 的日志文件在安装目录的 logs 文件夹下文件名包含任务 ID用文本编辑器搜索 FATAL 或 ERROR 就能快速定位失败阶段。任务中断后不要急着删虚拟机大部分场景可以直接重新发起转换Converter 会识别已完成的部分继续增量同步而不是从零开始。第一次迁移的机器建议不要直接在正式业务窗口内跑全流程。先在预检阶段做一次模拟转换目标指向临时虚拟机把参数、空间、时间都验证一遍再切正式窗口执行。这不算额外工作量却能在正式操作前暴露绝大多数环境问题。5. 热迁移避坑指南5 条踩坑记录与排障方法5.1 转换后蓝屏 0x7BSCSI 控制器不匹配现象虚拟机首次启动Windows 直接蓝屏代码 0x0000007B INACCESSIBLE_BOOT_DEVICE。原因源机使用的是 IDE 或旧式 SCSI 控制器而 Converter 在目标端设置了 PVSCSI。Windows 在引导阶段没有对应驱动找不到系统盘直接放弃启动。解决把虚拟机的 SCSI 控制器改成 LSI Logic SAS重新开机。如果修改后仍然蓝屏说明驱动注册表里没有 LSI SAS 的启动项需要进入 Windows 恢复环境做驱动注入。# 将原 VMDK 作为数据盘挂到一台正常 Windows 虚拟机上盘符假设为 E: # 离线注入 LSI Logic SAS 驱动到系统镜像 dism /Image:E:\ /Add-Driver /Driver:D:\drivers\lsi_sas.inf # 提交后卸载数据盘把 VMDK 挂回原虚拟机再启动 dism /Unmount-Image /MountDir:E:\ /Commit这段命令的逻辑是/Image 指向挂载出来的原系统盘根目录/Add-Driver 把驱动包注入到系统驱动库里让 Windows 在引导阶段就能识别 LSI SAS 控制器。如果原虚拟机里没有 dism 环境用 Windows 安装盘引导进修复模式也能完成同样操作。5.2 VSS Writer 失败导致转换中止现象转换任务在“创建卷影副本”阶段失败报错提示和 VSS 相关进度条停在某个百分比不动。原因源机上某些应用的 VSS Writer 注册异常处于 failed 状态例如 Exchange、SQL Server 的 VSS Writer 故障导致系统级快照无法完成。解决在源机上执行下面的命令找出异常 Writer# 查看所有 VSS Writer 状态关注 State 列是否为 Failed vssadmin list writers看到异常的 Writer 后常见做法是重启对应服务或重新注册 VSS Writer DLL让 Writer 恢复稳定再重新发起转换。如果源机只是文件服务器、没有数据库业务可以在 Converter 的高级选项里关闭 VSS 支持直接做非静默复制但代价是文件一致性不保证只建议用在非关键业务上。5.3 热迁移中途数据库写入不一致现象迁移完成后目标机上的数据库启动失败报数据文件损坏或事务日志不连续。原因热迁移的增量同步是块级复制数据库文件在同步窗口内处于写入中间态没有借助应用层的备份机制做一致性收敛拷过去的文件就像没保存完的 Word 文档。解决对数据库服务器做热迁移标准做法是先做一次应用层备份然后用备份文件做最后一跳。也就是说不要让 Converter 直接同步在线数据库文件而是和业务方协商一个计划窗口在窗口内做一次完整备份迁移完成后在虚拟机上做恢复。这样既兼顾源机不关机的要求又保住数据库一致性。如果业务不允许备份恢复需要确保数据库在迁移期间设置了写阻塞或持久性模式这需要业务方配合运维侧很难单方面保证。5.4 任务停在 99%最后 1% 的隐藏障碍现象任务进度在 99% 长时间不动日志里出现大量网络重传。原因99% 意味着全量拷贝和增量同步都接近完成正在做最后的收敛和一致性校验。如果源机业务写入频繁增量同步时间会持续拉长另一种可能是目标端性能瓶颈比如数据存储 IOPS 被打满或者目标 ESXi 主机内存不足导致虚拟机频繁交换。解决先等 15 分钟观察任务详情里字节计数是否还在增长。字节数持续变化说明同步还在跑只是慢完全停滞就检查源机卷的写入负载、目标端数据存储 IOPS、网络链路丢包率。90% 以上的情况是网络丢包导致增量同步重传把迁移流量切到独立网段或降低同步频率就能恢复。5.5 迁移后两边同时在线导致 IP 冲突现象目标虚拟机启动后业务系统开始间歇性断连报地址冲突。原因原物理机没有关机或者迁移完成后原机网络服务仍在线两台机器抢同一个 IP。解决在切换窗口内先关闭原物理机的网卡或直接关机再启动目标虚拟机。如果必须保持原机在线可以把目标虚拟机的 IP 先改成测试地址做验证确认无误后再做最终切换。这类问题的隐蔽之处在于很多人第一反应是查虚拟机网卡和防火墙实际根源就是一台物理机和一台虚拟机在同一广播域里用同一 IP。6. 迁移后的验证清单开机只是第一步回滚和留痕才算完6.1 首次启动与收敛8 项快速检查虚拟机开机不等于迁移成功驱动、网络、服务、数据都要过一遍。下面这张表可以直接打印出来当验收单用。检查项操作方法通过标准系统启动观察虚拟机控制台启动过程无蓝屏、无黑屏进入登录界面驱动状态打开设备管理器查看未知设备没有黄色感叹号没有未识别设备VMware Tools检查 Tools 服务状态已安装且运行正常网络连通ping 网关、DNS 服务器、业务对端业务 IP 可访问域名解析正常磁盘挂载打开磁盘管理对照源机盘符数据卷全部在线盘符无冲突服务状态services.msc 对比源机服务列表关键服务全部处于启动状态时间同步对比 NTP 服务器时间差误差小于 1 分钟数据校验抽查关键文件的哈希值与源机比对结果一致驱动收敛这块单说一句装了 VMware Tools 之后显示驱动、鼠标驱动、时间同步组件才会生效网卡也建议在 Tools 装完后从 E1000 升级到 VMXNET3。升级网卡会触发一次网络中断选在业务低峰做。6.2 回滚路径与迁移留痕网络、时间、驱动都验证通过之后再让业务部门做应用层验证。回滚路径是保留原物理机至少一周期间不关机保持系统可回退状态。如果虚拟机上跑得不顺能随时切回物理机这是你的后悔药。这些年做过的 P2V 里翻车最狠的一次就是没做驱动注入直接拔了物理机。从那以后我养成了一个习惯每台机器迁移完成后把源机型号、操作系统版本、SCSI 控制器类型、网卡类型、迁移时间、目标虚拟机配置、遇到的问题和处理方式整理成一张表存进共享文档。下次迁同类机器直接抄卷映射方案和控制器选择不再重复踩坑。希望这篇笔记对你的 P2V 落地有帮助少走一点我当年绕过的弯路。本文还有配套的精品资源点击获取