我有一台 Server 2019 Hyper-V 主机,该主机有两个 Windows Server 客户虚拟机。两个虚拟机均配置为在主机关闭时关闭:
但是,每次重新启动或关闭主机时,客户机操作系统都会遇到意外关闭,并在系统事件日志中记录事件 ID 6008(“上次系统于 2019 年 7 月 26 日下午 2:11:33 意外关闭”)。当 Hyper-V 主机上开始关闭过程时,以下事件会立即记录到日志中Microsoft-Windows-Hyper-V-VMMS/Admin
:
Event ID: 14100
Logged: 7/26/2019 2:11:46 PM
Source: Hyper-V-VMMS
Text: Shut down physical computer. Stopping/saving all virtual machines...
Event ID: 19060
Logged: 7/26/2019 2:11:46 PM
Source: Hyper-V-VMMS
Text: <VM NAME #1> failed to perform the 'Shutting Down' operation. The virtual machine is currently performing the following operation: 'Shutting Down'. (Virtual machine ID <VM #1 GUID>)
Event ID: 19060
Logged: 7/26/2019 2:11:46 PM
Source: Hyper-V-VMMS
Text: <VM NAME #2> failed to perform the 'Shutting Down' operation. The virtual machine is currently performing the following operation: 'Shutting Down'. (Virtual machine ID <VM #2 GUID>)
这些事件的奇怪之处在于:
- “停止/保存虚拟机”事件和后续的“虚拟机关闭失败”事件之间没有时间差距。
- 它们会在虚拟机意外关闭后数秒内进行记录。
为什么会发生这种情况?我该怎么办?
在此环境中,无法将虚拟机关闭选项更改为“保存”或“关闭”。我怀疑这无关紧要,但客户虚拟机正在运行 Server 2008 R2 和 Server 2016。
答案1
这是一个已知问题,预计将于 2019 年 9 月修复
根据这个帖子在 Microsoft Hyper-V 服务器论坛中,这是 Windows Server 2019 中的一个已知问题。主题发起者描述了与您遇到的相同情况,包括事件文本:
“ADFS”无法执行“关闭”操作。虚拟机当前正在执行以下操作:“关闭”。
根据发帖者“simdoc”的说法,微软已经意识到了这个问题:
我为此提出了高级支持请求。他们花了几周时间才重现此问题,因为他们对物理服务器的访问有限(似乎应该针对 Hyper-V 问题进行改进)。最重要的是,我被告知他们会在 8 月更新中修复此问题。(用户“simdoc”于 2019 年 7 月 1 日星期一下午 2:29 发布)
发帖者“Nicolas Rojas”被确认为微软员工,他表示修复程序将于 2019 年 9 月发布:
针对此问题的修复计划在 Windows Server 2019 的 2019 年 9 月更新包中发布,即在 WS 2019 主机上配置为关闭时,主机关闭会意外关闭虚拟机。(由“Nicolas Rojas Microsoft”于 2019 年 7 月 4 日下午 3:13 发布)
与此同时,我建议您重新考虑在关闭 Hyper-V 主机时使用虚拟机的“保存”选项,或者手动(例如通过脚本)关闭虚拟机前计划重启主机。这些选项中的任何一个都必须比让虚拟机在没有警告的情况下断电要好。
答案2
2022 年 8 月 – Windows Server 2019 已更新至最新 CU,7 台虚拟机。问题仍然存在。当我关闭主机属性时,所有虚拟机都会被异常关闭,并在下次启动时意外关闭。这真的很奇怪:MS 不知道该怎么办?我读过很多技术,但没用。问题是当我的 AC 出现故障时,虚拟机真的会崩溃。
答案3
Windows Server 2016 上也发生了同样的事情。我们进行了广泛的调查并发现 VMMS 服务是导致此问题的原因。如果 Hyper-V 主机重新启动并且有待处理的 Windows 修补程序,则主机将执行所有 VM 的干净关闭,然后停止 VMMS 服务,然而,在修补程序正在处理时,VMMS 服务会在后台重新启动,从而触发 VM 自动启动。一旦 Windows 修补程序处理完毕并且主机服务器最终重新启动,VMMS 服务就不会再次停止,VM 也不会干净关闭,它们只是电源循环(类似于在计算机运行时拔下电源线)。这会给这些 VM 上运行的数据库和其他软件带来各种各样的问题,我甚至在其中很多虚拟机上都遇到了 BSOD,需要完全重新安装。