Hyper-V虚拟机可在无故障转移群集和无共享存储下实现实时迁移。需满足:Windows Server 2012 R2+、同域、Kerberos/CredSSP身份验证、VM版本≥5、CPU兼容、虚拟交换机同名,通过Hyper-V管理器或Move-VM命令执行迁移。
hyper-v 虚拟机可以在不依赖故障转移群集、也不需要共享存储(如san或smb 3.0文件共享)的前提下,实现跨宿主机的实时迁移。关键在于正确配置主机、网络、身份验证和虚拟机兼容性,而不是必须搭建高成本集群环境。
基础前提与系统要求
确保以下条件全部满足:
- 源和目标服务器均运行 Windows Server 2012 R2 或更高版本(推荐 Windows Server 2016+),且已启用 Hyper-V 角色;
- 两台主机处于同一域中,或至少能通过 Kerberos 进行双向身份验证;
- 执行操作的账户是两台主机上的本地 Administrators 组和 Hyper-V Administrators 组成员;
- 虚拟机版本 ≥ 5(Windows Server 2012 R2 起默认支持),若为旧版 VM,需先在源主机上升级配置版本(右键 VM → “升级虚拟机配置版本”);
- 目标主机有足够的内存、CPU 和磁盘空间容纳该虚拟机。
主机端实时迁移设置
每台参与迁移的 Hyper-V 主机都必须单独开启并配置实时迁移功能:
直播话术巡检系统(Windows版) — 实时语音转写、关键词检测、场景自动切换、告警推送、大屏可视化。支持 Windows VB-Cable 虚拟声卡音频采集,阿里云 ASR 实时识别。一键启动脚本,自动安装环境。
- 打开“Hyper-V 设置” → 左侧选择主机名 → 勾选“启用实时迁移”;
- 在“实时迁移”页中,指定用于迁移的网络适配器(建议使用专用千兆以上网卡,避免与管理/存储流量混用);
- 选择身份验证协议:Kerberos(推荐,更安全)或 CredSSP(仅限工作组环境,需额外启用委派);
- 设置最大并发迁移数(默认为2,可根据网络带宽调高);
- 如使用 Kerberos,需确保域控制器可用,并为两台主机正确注册 SPN(通常自动完成);若提示“0x8009030E”,说明约束委派未配置,需域管理员运行 Set-ADComputer -Identity [HostName] -PrincipalsAllowedToDelegateToAccount "Microsoft Virtual System Migration Service/[TargetFQDN]"。
执行迁移操作
有两种常用方式,效果一致:
- 图形界面(Hyper-V 管理器):连接到源主机 → 右键目标虚拟机 → “移动” → 选择“移动虚拟机” → 指定目标主机 → 选择是否同时迁移存储(勾选“包括存储”则把 VHD/VHDX 文件一并复制过去)→ 完成;
-
PowerShell(推荐批量或脚本化):
Move-VM -Name "VMName" -DestinationHost "TargetServer" -IncludeStorage -DestinationStoragePath "D:\VMs\VMName"
注意:-IncludeStorage 参数会将虚拟硬盘、检查点、配置文件等全部复制到目标路径,适合无共享存储场景。
常见失败原因与快速检查
迁移中断或报错时,优先核对以下几项:
- 虚拟交换机名称不一致:目标主机上必须存在同名、同类型(外部/内部/专用)的虚拟交换机,否则迁移直接失败(事件ID 21502);
- CPU 兼容性问题:若源/目标 CPU 品牌或微码差异大(如 Intel 与 AMD,或不同代际),需在 VM 设置中启用“迁移到具有不同处理器版本的物理计算机”;
- 防火墙拦截:确保目标主机开放 UDP 端口 6600(Kerberos 实时迁移默认端口),或检查 Windows 防火墙中“Hyper-V 实时迁移”规则是否启用;
- 存储路径权限不足:目标文件夹需赋予“NT VIRTUAL MACHINE\Virtual Machines”组完全控制权限;
- VM 正处于不支持状态:如正在备份、快照合并中、或启用了 vTPM/受防护虚拟机(需额外证书同步)。

















