防火铝复合板:QCOW增量虚拟机制作

来源:百度文库 编辑:偶看新闻 时间:2024/05/08 18:02:22
QCOW增量虚拟机制作2011-03-15 20:18

在服务器上,经常需要启动数十个甚至上百个虚拟机,按照我们现有的方式可以安装一个虚拟机,然后复制相应的份数。在全虚拟化情况下,每个虚拟机至少需要4G以上空间,为了支持里面的应用,一般要分配10G左右,这样10个虚拟机就需要100G空间。事实上在目前为止里面还没有执行任何程序,这些空间都是分配,实际并不一定都要使用。是否能够实现用多少分配多少呢?分析下可以发现,每个虚拟机里面的内核都是一样的,大部分时候我们都不需要去修改里面的内核,是否能够共用内核? Copy-On-Write模式为我们提供了很好的解决方式,通过创建一个基础镜像(base image),里面把各个虚拟机都需要的环境都搭建好,然后基于这个镜像建立起一个个增量镜像,每个增量镜像对应一个虚拟机,虚拟机对镜像中所有的改变都记录在增量镜像里面,基础镜像始终保持不变。这样我们建立10个虚拟机,需要的空间为:10G+10*52K(增量镜像的起始大小可能偏差)=10G,一下节省了近90G的空间。

1、 资源准备

基础镜像文件(制作方式参考HVM Guest安装手册):

vmdisk.img

2、 制作虚拟机的增量镜像

制作一个容量为30G的虚拟硬盘:

# qemu-img-xencreate –b vmdisk –f qcow2 vm1disk-qcow2.img 30000M                //此处也可以用qcow-create

# ll–h

-rw-r--r--1 root root  52K Mar 11 19:42 vm1disk-qcow2.img

3、 制作增量虚拟机配置文件

拷贝基础镜像配置文件

# cpwindows.hvm vm1-windows.hvm

修改配置文件

disk= [ 'tap:qcow2:/home/wq/img/centos_pv/vmdisk-qcow.img,ioemu:hda,w']     

4、 启动增量虚拟机

# xmcr vm1-windows.hvm

可以拷贝一个50M以上的文件到虚拟机中,可以看到增量虚拟机镜像文件大小会动态改变。