[发明专利]虚拟机存储空间管理方法、系统及物理主机有效
| 申请号: | 201010530638.8 | 申请日: | 2010-11-03 |
| 公开(公告)号: | CN101986285A | 公开(公告)日: | 2011-03-16 |
| 发明(设计)人: | 杨晓伟;王志坤 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F12/08 | 分类号: | G06F12/08 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 彭愿洁;李文红 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 虚拟机 存储空间 管理 方法 系统 物理 主机 | ||
技术领域
本发明涉及计算机虚拟化技术领域,具体涉及一种虚拟机存储空间管理方法、系统及物理主机。
背景技术
计算机虚拟化技术是一种将计算机底层硬件设备与上层操作系统、应用程序分离的去耦合方法,其引入虚拟机监控器(VMM,Virtual Machine Monitor)层来直接管理底层硬件资源,并创建与底层硬件无关的虚拟机(VM,VirtualMachine)供上层操作系统和应用程序使用,相应的虚拟机架构如图1所示。虚拟化技术作为当前流行的云计算(Cloud Computing)平台的底层重要支撑技术之一,可以大大提高物理设备的资源使用效率。与传统的物理机相比,虚拟机具有更好的隔离性和封装性,其可以将整个虚拟机的信息保存到虚拟磁盘映像(VDI,Virtual Disk Image)中,从而可以方便地对虚拟机进行快照、备份、克隆和分发等操作。
虚拟磁盘(Virtual Disk)是虚拟机监控器提供给虚拟机使用的虚拟存储设备,其对应的物理存储空间既可以是宿主机(Host)的本地存储系统,也可以是数据中心的网络存储系统,如网络附加存储(NAS,Network Attached Storage)文件服务器、存储区域网(SAN,Storage Area Network)、存储集群或者云存储(Storage Cloud)等。其对应在宿主机里面的存在形式可以是文件,也可以是块设备(如磁盘分区、逻辑卷等)。
虚拟机存储空间分配一般有两种方法:预先分配和动态分配。其中预先分配是为每个虚拟机一次性分配好指定大小的存储空间,当虚拟机数据较少时,预先分配空间浪费较大。而动态分配方式的虚拟存储空间可以一定程度减少存储资源的浪费,刚开始的时候,虚拟存储空间占用很少的实际存储空间,随着用户的使用,虚拟机存储空间上会创建越来越多的文件,而其占有的存储空间也会变得原来越大。
虽然现有动态分配的存储空间管理方法可以按需进行分配,但当虚拟机内部执行文件删除操作时,如果宿主机无法感知到此操作,就不能释放这些虚拟机已释放的空闲空间。比如,一个拥有20GB虚拟存储设备的虚拟机,在任务最繁忙的时候基本上用完了所有的存储空间作为临时文件,而当任务空闲下来以后,这些临时文件都被删除,系统中又出现了15GB的空闲空间,但是这15GB占用的宿主机的存储资源并没有被释放。
现有技术中,虚拟计算机软件VM ware Workstation提供VM wareShrinking Virtual Disk功能,其可以对VMDK(VM Ware Virtual Machine DiskFormat)动态虚拟磁盘中的空闲数据块(以下将数据块简称为块)进行释放,主要步骤如下:
虚拟机内部执行磁盘碎片整理(可选);
虚拟机内部通过VM Tools工具将虚拟磁盘中的空闲块清“0”;
宿主机上配套工具扫描虚拟磁盘对应的文件或者块设备,识别出“0”块,利用动态映像格式特性进行映像收缩,完成空闲数据块的释放。
发明人在实现本发明的过程中,发现:上述方法中,VM Tools将虚拟磁盘中的空闲块清“0”的过程,需要对所有空闲块执行写操作;宿主机上识别“0”块时,需要对所有数据块执行读操作,即现有方法具有比较大的操作开销,较多的磁盘读写操作浪费大量的磁盘带宽且耗时较长;而且,现有方法中宿主机通过识别“0”块间接判断虚拟磁盘中每一数据块的空间占用情况,故无法实时获取虚拟机磁盘全局空闲数据块信息;此外,该现有方法应用受限,只适用于动态分配的映像格式,对于预先分配的镜像格式则无法进行空闲块释放。
发明内容
本发明实施例提供一种虚拟机存储空间管理方法及物理主机,以有效地进行存储空间管理,提高存储系统的利用率。
一种虚拟机存储空间管理方法,应用于物理主机,该物理主机包括:硬件层,运行在该硬件层之上的虚拟机监控单元层,运行在该虚拟机监控单元层之上的虚拟机,其中,该虚拟机部署有存储气球代理模块,该虚拟机监控单元层部署有存储气球守护进程模块,该方法包括:
该存储气球代理模块根据预定义文件占用虚拟存储空间的大小获取所占用的部分虚拟存储块,将该虚拟存储块对应的虚拟存储空闲块信息传递给存储气球守护进程模块;
该存储气球守护进程模块将虚拟存储空闲块信息对应的物理存储空间进行部分或全部释放,并将已释放的物理存储空间对应的虚拟存储块标记为不可用。
一种虚拟机存储空间管理系统,包括部署于虚拟机中的存储气球代理模块和部署于虚拟机监控单元层中的存储气球守护进程模块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010530638.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电动钉锤
- 下一篇:轧坯机防误操作控制电路





