[发明专利]一种低存储空间的虚拟机镜像打包方法在审
申请号: | 201410743495.7 | 申请日: | 2014-12-05 |
公开(公告)号: | CN104486392A | 公开(公告)日: | 2015-04-01 |
发明(设计)人: | 张瑜科;杨松;莫展鹏;季统凯 | 申请(专利权)人: | 国云科技股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F9/455 |
代理公司: | 广东莞信律师事务所 44332 | 代理人: | 余伦 |
地址: | 523808 广东省东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 存储空间 虚拟机 打包 方法 | ||
技术领域
本发明涉及云计算领域,特别是指特别是指一种低存储空间的虚拟机镜像打包方法。
背景技术
在云平台中,用户一般基于基础镜像创建虚拟机实例以后,都会基于当前的虚拟机实例打包成新的虚拟机镜像,以此镜像作为模板重新批量创建虚拟机。基于镜像运行虚拟机有两种模式:第一种是直接运行拷贝镜像文件,把镜像文件作为虚拟磁盘文件,该模式在打包时直接把当前虚拟机实例文件拷贝一份作为虚拟机镜像即可。第二种是先基于虚拟机镜像文件创建外部快照文件,把外部快照文件作为虚拟磁盘文件,所有基于虚拟机镜像文件的改变都被写入到外部快照文件中。在此种模式下,打包的流程如下:
1、关闭虚拟机实例以停止虚拟机实例的一切IO读写操作,确保打包的镜像时保存的是最新的数据;
2、创建一个新的镜像文件,先写入虚拟机镜像文件的数据,再写入外部快照文件的数据,合并数据的文件就是新的镜像文件。
上述方法存在以下的问题:
1、合并写入镜像文件耗费的时间比较长;
2、占用的存储空间较大,新的镜像文件与原来的虚拟机镜像文件有一定的关联,没有必要浪费空间存储重复的数据,外部快照文件中可能也存在与原来虚拟机镜像文件重复的数据,需要运用策略尽量避免。
发明内容
本发明解决的技术问题在于提供一种低存储空间的虚拟机镜像打包方法,解决虚拟机存储利用率低的问题。
本发明解决上述技术问题的技术方案是:
所述的方法包括以下步骤:
步骤1:基于创建外部快照文件的方式运行虚拟机:
步骤2:虚拟机打包时,首先查看外部快照文件的大小,如果外部快照文件的大小小于虚拟机镜像文件,虚拟机基于原始镜像所做的改变不多,那么执行步骤3;否则表明虚拟机基于原始镜像所做的改变已经多于原始镜像,虚拟机中存在与原始镜像重复的数据也比较多,执行步骤4;
步骤3:直接把虚拟机的外部快照文件作为镜像保存,需要用此种镜像创建虚拟机时执行步骤5;
步骤4:创建一个新的镜像文件,把虚拟机原始镜像文件和外部快照文件的数据合并到此镜像中;
步骤5:查询新的镜像文件信息中是否有母镜像的数据项,如果有,那么执行步骤6,否则执行步骤7;
步骤6:根据母镜像的名称在镜像列表中查找到,然后把母镜像和当前镜像拷贝到虚拟机实例文件存放路径中,把当前镜像作为虚拟磁盘文件创建新的虚拟机;
步骤7:直接把当前镜像文件拷贝到虚拟机实例文件存放路径,基于当前镜像文件创建一个外部快照文件,把外部快照文件作为虚拟磁盘文件创建虚拟机。
所述虚拟机镜像采用COW的原理,用外部快照作为虚拟机实例文件。
所述镜像文件存在元数据,通过查询元数据了解是否有母镜像。
所述创建虚拟机时存在一个镜像池,用来存放母镜像和快照镜像文件。
所述从镜像池拷贝到实例文件存放路径过程时会限制并发数,一般默认设置并发数为2。
本发明方案的有益效果如下:
1、本发明的方法总体耗费的时间相对较少。
2、本发明的方法占用的存储空间较大,能在合并镜像文件和使用外部快照文件两种方法之间取得平衡,是在打包速度与存储空间比较均衡的一种策略。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明的流程图;
具体实施方式
流程图如图1所示,具体实施过程如下:
1、用外部快照的方式创建虚拟机
如果镜像是qcow2格式,那么如下
#qemu-img create/instance/cache/emi-12345-f qcow2/instance/i-ab234/emi-12345.snap
如果镜像是vhd格式,那么如下
#vhd-util snapshot-p/instance/cache/emi-12345/instance/i-ab1234/emi-12345.snap
2、获取快照文件大小
如果快照是qcow2格式,那么如下
#qemu-img check/instance/i-ab 1234/emi-12345.snap#qemu-img check/instance/cache/emi-12345
如果快照是vhd格式,那么如下
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国云科技股份有限公司,未经国云科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410743495.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种商用车载云服务信息终端
- 下一篇:一种存储系统及交换扩展装置