概要
本文提供了一组全面的步骤、建议和修补程序,可帮助解决在Microsoft Hyper-V 环境中创建、导入和启动虚拟机(VM)时遇到的问题。 Hyper-V 是虚拟化的关键服务器角色,但由于文件系统、权限、配置、网络、驱动程序、许可和硬件问题,它可能会失败。 这些问题可能会导致服务中断、数据可用性影响和灾难恢复方案失败。 本文旨在帮助管理员排查故障、收集相关的诊断信息,并为最常见的故障模式应用经过验证的解决方案。
故障排除清单
使用此清单进行系统故障排除:
- 验证当前 Hyper-V 版本是否支持 VM 和主机 OS。
- 检查最新的 Windows Server 和 Hyper-V 更新和修补程序。
- 验证 VM 配置设置(生成、网络、磁盘、资源)。
- 查看 VM 配置文件夹的文件系统权限和所有权。
- 确保配置 Hyper-V 和 NT VM 帐户和服务的组策略设置。
- 检查与 Hyper-V 相关的注册表项(特别是权限问题)。
- 验证 BIOS/UEFI 中的硬件设置(虚拟化和执行禁用功能)。
- 检查检查点失败或卡住的检查点和快照以及孤立的 AVHD 文件。
- 查看 VM 磁盘和网络适配器,了解配置错误或驱动程序问题。
- 查询事件日志(Windows 和事件查看器)和 VM 日志以获取错误详细信息。
- 验证许可合规性和版本使用权。
- 对于群集,请运行验证报告并检查群集和基础结构日志。
- 收集与系统故障(蓝屏)相关的最新小型转储日志文件。
- 如果使用模板,请验证磁盘名称、SID 和唯一标识符的模板配置。
- 检查是否存在与备份、防病毒或第三方驱动程序和软件的冲突。
常见问题和解决方案
以下部分详细介绍了最常见的故障模式,并提供分步解决方案。
文件系统和权限问题
症状
- VM 导入失败,配置文件缺失,“权限被拒绝”错误。
决议
- 比较和更正 VM 目录中的 NTFS 权限。 确保 SYSTEM、管理员、Hyper-V 组具有完全控制权。
- 将所有者设置为管理员或 SYSTEM,启用继承并扩展权限。
- 重试导入和导出操作。
注册表权限错误
症状
- 动态网络地址分配失败,“无可用 MAC 地址”、“访问被拒绝”事件。
决议
重要
此部分(或称方法或任务)介绍了修改注册表的步骤。 如果您错误地修改注册表,可能会出现严重问题。 因此,请确保仔细执行这些步骤。 出于防范目的,请在修改之前备份注册表,以便在出现问题时还原注册表。 有关如何备份和恢复注册表的更多信息,请参见如何在 Windows 中备份和恢复注册表。
- 从工作主机导出以下注册表子项:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Worker - 将子项导入受影响的服务器,将 vmwp.exe 或 SYSTEM 帐户的权限设置为“完全控制”。
- 使用注册表编辑器进行权限更改,并测试导入或启动 VM。
组策略、群集和服务帐户配置错误
症状
- VM 未创建或未启动:“登录失败:用户尚未被授予请求的登录类型。
决议
- 在组策略编辑器(gpedit.msc)中,确保“NT 虚拟机”和群集服务帐户具有以下权限:
- 从网络访问此计算机
- 创建符号链接
- 以服务身份登录
- 运行
gpupdate /force。 如果需要,请重启群集节点。
虚拟交换机或网络适配器问题
症状
- VM 没有网络连接
- 虚拟交换机创建失败
- 网络驱动程序错误
决议
- 在 Hyper-V Manager 中检查并重新创建虚拟交换机。
- 更新所有相关网络驱动程序(尤其是针对第三方平台)。
- 使用
Get-VMNetworkAdapter -VMName <VMName>查看适配器状态。
检查点和快照链的错误
症状
- VM 在故障或维护后恢复到旧快照。
决议
- 查看 VM 存储中是否有孤立或缺少的 .avhdx 文件。
- 通过 Hyper-V 管理器合并或删除未使用的检查点。
- 避免手动移动或重命名文件。
群集和故障转移问题
症状
- VM 存在于群集管理器中,但在 Hyper-V 中缺失。
- 验证和记录故障。
决议
- 刷新或同步群集配置。
- 解决群集验证报告中标识的存储问题。
- 从群集管理器中删除过时的 VM 引用。
虚拟机管理程序/BIOS/UEFI设置
症状
- “虚拟机无法启动,因为虚拟机监控程序未运行。
决议
- 启用虚拟化(VT-x/AMD-V)并在 BIOS/UEFI 中执行 Disable/NX。
- 运行
bcdedit /set hypervisorlaunchtype auto。 - 重启主机。
OS、更新和软件驱动程序问题
症状
- VM 在更新后失败,更新服务停滞,系统故障(蓝屏)
决议
- 运行
sfc /scannow和DISM /Online /Cleanup-Image /RestoreHealth。 - 停止更新服务后清除 C:\Windows\SoftwareDistribution 缓存。
- 对于蓝屏,请使用 BlueScreenView 分析小型转储文件,并更新有问题的第三方驱动程序(例如 Airlock 和 CrowdStrike)。
- 如有必要,请重新安装 Hyper-V 角色。
资源过度分配
症状
- 性能和可用性问题。
- 用户尝试阻止 CPU 或内存过度分配。
决议
- 用户需要了解 Hyper-V 的设计允许资源的超分配。
- 使用 CPU 组或分配控件进行部分限制。
- 主动监视系统运行状况和资源使用情况。
许可问题
症状
- VM 数量超过许可证。
- 与核心或插座许可的混淆。
决议
- 标准:为每个主机的所有物理核心授权,以支持最多两个虚拟机(VM)。
- 数据中心:完全许可时,每个主机的 VM 不受限制。
- 若有关于许可的问题,请联系 Microsoft 销售团队或客户团队进行场景验证。
从网络共享导入/导出失败
症状
- “Hyper-V 找不到从位置导入的虚拟机...权限错误。”
决议
-
将导出文件夹本地复制到核心服务器,并使用直接 PowerShell 导入:
Import-VM -Path <VMPath> -Copy -GenerateNewId -VhdDestinationPath <CSVLocation> -VirtualMachinePath <ConfigPath>
模板和磁盘命名冲突
症状
- 新的 VM 共享磁盘名称。 此情况会导致批量部署出现问题。
决议
- 使用部署后命令重命名磁盘,而无需关闭 VM,或调整模板设置以允许唯一的磁盘命名。
修改 VM 页文件或创建 VM 时出现蓝屏
症状
- 系统在移动页面文件或创建 VM 时发生故障,尤其是在 Windows 11 上。
决议
- 将内存转储文件设置为“完成”,在发生故障后收集小型转储文件,并使用 BlueScreenView 进行分析。
- 更新与存储或分页关联的所有第三方驱动程序。
不支持的操作系统/虚拟机代次不匹配
症状
- 无法启动新的 VM。
- 转换或安装后 VM 会失败。
决议
- 确保在主机上支持来宾操作系统(例如,Hyper-V 2022 上的 Windows Server 2025 版本,而不是 2019)。
- 使用工具在 Gen1 和 Gen2 之间转换磁盘。 验证磁盘分区类型是否与 VM 生成匹配。
常见问题快速参考表
| 症状 | 错误消息或事件 ID | 根源 | 解决方案 | 工具或日志 |
|---|---|---|---|---|
| 导入/导出失败,权限被拒绝 | “找不到 VM 配置”、“权限被拒绝” | 目录与所有权问题 | 修复 NTFS、设置所有权/继承、添加组 | 文件系统,Procmon |
| 动态 MAC 地址/网络分配失败 | “无可用 MAC”、“访问被拒绝” | 注册表权限 | 授予 vmwp.exe 完全控制,导入工作正则密钥 | 注册表编辑器 |
| VM 无法启动、登录失败 | 0x80070569 |
GPO/组策略配置错误 | 在 GPO 中设置权限,gpupdate/force,然后重启节点。 |
gpedit.msc |
| VM 无法启动,虚拟机监控程序未运行 | “虚拟机监控程序未运行” | 未设置 BIOS/UEFI | 启用 VT-x/NX/XD、检查 BIOS、运行 bcdedit 命令 |
BIOS、bcdedit |
| VM 在维护后还原为旧检查点 | n/a | 孤立的 .avhdx 文件 | 合并/删除旧检查点,清理链 | Hyper-V 管理器 |
| 群集问题和故障转移问题 | “验证失败”,缺少 VM | 存储/服务配置错误 | 群集验证,修复存储,刷新/同步群集配置 | FCM、验证日志 |
| 网络/交换机安装问题 | 无连接,适配器安装失败 | 驱动程序/开关配置错误 | 更新网络驱动程序,重新创建交换机,使用 Get-VMNetworkAdapter | Hyper-V、PowerShell |
| VM 创建崩溃/BSOD | BSOD、MiniDump 已生成 | 故障第三方驱动程序 | 分析转储、更新驱动程序、完整内存转储 | BlueScreenView |
| 依模板命名的同名 VM 磁盘 | n/a | 模板命名约定 | 部署后磁盘重命名,模板更改 | PowerShell,Hyper-V |
| 许可/资源限制 | 许可证超出限制,核心/套接字问题 | 误解授权 | 许可所有处理器核心,检查版本类型,请参阅销售团队/客户经理 | N/A |
| 通过网络共享导入失败 | “找不到位置”权限错误 | 路径/分辨率或权限问题 | 本地复制,使用直接 PowerShell 导入 | PowerShell |
| OS/Gen 转换/安装失败 | VM 启动失败,磁盘无法识别 | 不支持的配置 | 验证 OS 支持、正确的 VM 生成、磁盘分区类型 | Hyper-V,转换 |
| 页面文件移动蓝屏 | 更改页面文件位置后的蓝屏 | 驱动器冲突 | 分析小型转储、更新存储驱动程序 | BlueScreenView |
数据收集
在联系Microsoft支持人员之前,可以收集有关你的问题的以下信息。
-
系统和存储事件日志 (eventvwr.msc,用于磁盘/存储相关 ID 的筛选器)
-
MPIO 配置和状态:
mpclaim -s -d mpclaim -v -
硬件/驱动程序/固件版本信息
-
设备管理器的截图(包括所有存储和DSM)
-
Perfmon 或 Storport 跟踪:
logman create counter PerfLog -o C:\PerfLog.blg -f bincirc ... logman create trace storport -ow -o <output path> -p <provider> -
群集日志:
Get-ClusterLog -Node \<NodeName> -TimeSpan 3 -
DiskPart:
diskpart list disk list volume san -
IO、存储、故障转移、VSS 问题的 TSS 或 WPR 日志
-
建议的供应商日志收集工具
References
第三方联系人免责声明
Microsoft 会提供第三方联系信息来帮助你查找有关本主题的其他信息。 该联系信息可能会在不通知的情况下更改。 Microsoft 不保证第三方联系信息的准确性。