虚拟磁盘的空间回收: Virtual Disk UNMAP/Shrink

同时发布于: http://leiqzhang.com/2013/08/2013-08-07-virtual-disk-unmap-shrink/


虚拟磁盘的空间回收: Virtual Disk UNMAP/Shrink

问题

在虚拟化场景下,瘦分配(Thin-provisioning)磁盘应用场景非常广泛。目前主流的虚拟磁盘镜像格式,如Dynamic VHD、Sparse Raw、Qcow2、VMDK等均只具有随着虚拟机读写而动态增长的能力,一般来说是按需每次分配一个固定大小的块,如VHD的块是2M为单位。

当Guest OS删除了文件,已经分配的空间在虚拟磁盘上可否进行空间回收呢?

空间回收主要包括两步,一是获取到可以回收的空间,二是在虚拟磁盘文件中对相应空间进行回收。

根据获取所需回收空间时虚拟磁盘的IO情况来讲,回收主要有在线回收和离线回收,在线和离线的区别在于虚拟磁盘是否在有Guest持续写IO的情况下进行空间回收。也即离线回收不单单指虚拟机关机情形下的回收,也包括虚拟磁盘只有读IO的情况(如虚拟磁盘为某个ROW快照的父镜像)。

就虚拟磁盘文件来说,空间回收的结果可以是如下两种

  1. 在Host上实际占用的空间减少
  2. 在Host上实际占用的空间减少,但是后续Guest的写入可以复用之前需要回收的空间,从而使得虚拟磁盘文件不会随着Guest的写入立即分配新块

下文首先分别对离线和在线可回收空间获取方法进行讨论,然后对虚拟磁盘文件的空间回收方式进行讨论,最后以Qemu当前的实现为例进行说明。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值