Windows Server 2016 Hyper-V提供了两类检查点:标准及生产。如何决定使用哪一种?
虚拟机即时配置快照已经帮Hyper-V管理员解决了很多令人头痛的问题,现在Hyper-V管理员在保存虚拟机状态时有了更多的选择。最初被称为快照,微软在Windows Server 2012 R2中将其修改为检查点。在后续版本Windows Server 2016中,微软提供了两种Hyper-V检查点:标准检查点、生产检查点。
两类Hyper-V检查点
尽管标准、生产检查点都创建了虚拟机的即时镜像,但却依赖于不同的技术。标准镜像保存虚拟机然后创建即时镜像,与Hyper-V早期版本中快照的实现方式非常类似。生产检查点采用备份技术,使用集成服务功能创建虚拟机的即时镜像。对于正在运行Windows操作系统的虚拟机而言,生产检查点使用卷影复制服务(VSS)技术;对运行Linux发行版的虚拟机来说,生产检查点刷新文件系统缓冲区创建一个一致的虚拟机镜像。
应该使用哪种检查点?
由于在Windows Server 2016中,提供了两种类型的Hyper-V检查点,必须理解标准检查点、生产检查点之间的区别并在决定使用哪种检查点时权衡这些差异。当对虚拟机执行标准检查点时,了解Hyper-V捕获虚拟机的磁盘以及内存状态,配置被恢复到应用标准检查点的精确时刻是很重要的。除捕获磁盘之外,标准检查点还捕获内存状态,这包括了运行在虚拟机内的应用正在处理的会话。当你使用生产检查点时,Hyper-V使用卷影复制服务创建一个数据一致的存储镜像,但从不对虚拟机的内存状态进行快照。
标准检查点对用于开发及测试的虚拟机尤为有用,但不适合在内存中保存会话的虚拟机。由于恢复时同样会恢复内存配置,如果选择的是标准检查点,那么使用内存数据处理会话的应用可能无法搞定内存变化。如果使用的是生产检查点,运行在虚拟机内的任何应用都能够正常运行而且能够处理变更因为其调用了卷影复制服务恢复操作。例如,在恢复运行SQL以及Exchange应用的虚拟机的生产检查点时,应用将能够正常运行。
启用并创建检查点
你可以使用Hyper-V Manager用户界面,以及PowerShell启用并创建检查点。在Hyper-V Manager中,右键单击你想启用检查点的虚拟机,然后点击设置。在管理菜单下选择检查点,然后单击启用检查点复选框启用检查点。
如图A所示,你可以选择生产检查点或者标准检查点。如果创建生产检查点出问题,你需要创建一个标准检查点代替它,勾选复选框“如果无法创建生产检查点,创建标准检查点”即可。
图A.启用虚拟机检查点
请注意在Windows Server 2016 Hyper-V中新创建的虚拟机默认使用的是生产检查点。
为创建检查点,只需要右键单击虚拟机,然后单击检查点以允许Hyper-V创建一个检查点。一旦创建完检查点,如图B所示,Hyper-V将显示一条成功创建检查点的信息。
图B. 成功创建检查点
如果你需要使用PowerShell启用、禁用或者创建Hyper-V检查点,可以使用如下Set-VM PowerShell 命令:
可以使用如下命令启用或禁用虚拟机检查点,执行Set-VM –Name VM1 –CheckPointType Enable 命令启用检查点,执行Set-VM –Name VM1 –CheckPointType Disable命令禁用检查点。
为配置虚拟机仅使用生产检查点,可以使用Set-VM –Name VM2 –CheckPointType ProductionOnly命令。如果生产检查点创建失败,为确保Hyper-V能够切换到标准检查点,可以使用Set-VM –Name VM2 –CheckPointType Production PowerShell命令。
为能够使用PowerShell创建检查点,你需要使用 CheckPoint-VM PowerShell命令,执行 CheckPoint-VM –Name VM1 命令以允许Hyper-V创建一个检查点。
取决于虚拟机的状态,你可以配置并创建一个检查点。对安装了集成服务、处于运行状态的虚拟机而言,你可以同时使用生产、标准检查点,但没有安装集成服务的虚拟机只能使用标准检查点。
如果虚拟机处于离线状态,那么生产检查点和标准检查点并没有任何差异。
尽管Hyper-V检查点提供了很简单的方式将虚拟机配置恢复到之前的状态,但针对非核心虚拟工作负载或者用户测试及开发的虚拟机,你应该使用生产检查点。