Hyper-v Server在线调整虚拟硬盘大小
从Windows Server 2012 R2开始,Hyper-v支持在线调整虚拟硬盘的大小了,这意味着在生产环境当虚拟硬盘不够用时,我们可以在虚拟机运行的情况下直接扩展虚拟硬盘容量。管理员可以在运行虚拟机的同时,使用 Hyper-V 来扩展或压缩虚拟硬盘的大小。虚拟机管理员可以通过对运行中的虚拟硬盘执行维护操作来避免代价不菲的停机。不再需要关闭虚拟机,这可以避免对访问这些虚拟机的用户造成中断,并有助于降低维护成本。在 Windows Server 2012 R2 推出以前,如果虚拟机已联机或者某个虚拟硬盘已被使用,则在不临时关闭虚拟机的情况下,无法对虚拟硬盘执行维护。
要实现Hyper-V在线调整虚拟硬盘的大小这个功能,至少要符合以下条件:
1、一个属于本地 Hyper-V 管理员组或管理员组成员的用户帐户。
2、虚拟硬盘的格式必须是VHDX。因为:扩展和压缩虚拟硬盘的功能只能对使用 .vhdx 文件格式的虚拟硬盘执行。VHDX 磁盘类型(包括固定磁盘、差异磁盘和动态磁盘)支持联机大小调整。大小调整操作不支持使用 .vhd 文件格式的虚拟硬盘。
3、VHDX虚拟硬盘必须挂载到SCSI控制器上。因为:扩展或压缩虚拟硬盘容量的功能只能对已附加到 SCSI 控制器的 .vhdx 文件执行。不支持附加到 IDE 控制器的 VHDX 文件。
注意:挂载到IDE控制器上的VHDX虚拟硬盘无法在线调整大小,如下图所示:
一、演示在线调整虚拟机大小,在此以“Test-Hyper-v-02”为例:
当前“Test-Hyper-v-02”的虚拟硬盘大小为100G,在此我们在其联机的情况下将其调整为120GB:
1、查看当前虚拟磁盘大小,可以看到虚拟机当前硬盘大小大约为100G:
2、选择要扩展其虚拟硬盘的虚拟机,鼠标右键,点击设置:
3、点击硬盘驱动器,选择当前使用的VHD文件,点击编辑:
4、查找虚拟机硬盘页面,阅读相关警告信息后点击下一步:
5、选择操作页面,此时可以选择压缩和扩展,这里选择“扩展”,点击下一步:
6、如果虚拟机是关闭状态此时还可以选择转换虚拟磁盘,例如将VHD文件转化为VHDX文件,当前我们的 虚拟机是开机的,所以我选择扩展:
7、在“扩展虚拟磁盘”页上,输入新的虚拟硬盘大小。该大小以 GB 为单位指定,任意一个虚拟硬盘的最大大小为 64TB;
8、在“正在完成编辑虚拟硬盘向导”页上单击“完成”:
9、登陆虚拟机“Test-Hyper-v-02”,打开磁盘管理器,鼠标右键C盘,选择“扩展卷”:
10、 在扩展卷向导页面点击未使用的卷:
11、 在“正在完成扩展卷”页上单击“完成”:
12、 完成以后进入磁盘管理器和资源管理器查看是否添加成功:
磁盘管理器:
资源管理器:
OK、从上面的图片可以看出在线扩展磁盘成功!
二、压缩虚拟硬盘的大小:
在虚拟机运行的过程中扩大或缩小虚拟磁盘容量的功能能让客户获得更高灵活性,并且降低因容量需求的变化而让负载停机的可能性。这样的功能不仅可为需要更多数据存储空间的虚拟机提供更高灵活度,而且可以让 IT 管理员回收已分配给虚拟机但虚拟机却不再使用的空间。对服务供应商或托管环境来说,这一点尤为重要,客户可能购买了 500GB 容量的虚拟机,但只使用了 300GB 空间,希望将磁盘容量缩小为 400GB 以降低成本。现在这种需求的操作可联机进行,无需让负载业务系统的虚拟机停机。
因为压缩虚拟硬盘的操作和上述操作基本相同,所以在此不做演示,希望有兴趣的朋友可以自己有时间试试。