KVM之raw和qcow2格式虚拟磁盘创建

在创建虚拟机之前,首先添加一个虚拟机磁盘,在KVM中用image来表示虚拟磁盘,在添加虚拟机磁盘之前
首先需要知道如何制作一个image

qemu-img是QEMU的磁盘管理工具

一、raw格式的image创建
1、创建一个raw格式的image,容量为20g
qemu-img create -f raw Ubuntu14.04.raw 20G

2、查看image信息
root@kvmhost1:/datapool/image# qemu-img info ubuntu14.04.raw
image: ubuntu14.04.raw
file format: raw
virtual size: 20G (21474836480 bytes)
disk size: 0


二、创建一个qcow2格式的image
1、创建一个20g的qcow2格式的image
qemu-img create -f qcow2 -o cluster_size=2M,backing_file=ubuntu14.04.raw ubuntu-nova.qcow2 40G

三、相关说明:
1、使用派生镜像刚刚我们创建了ubuntu14.04.raw镜像,比如使用这个镜像的虚拟机安装了一个系统。
然后我们可以通过创建派生镜像来使用这个系统,避免每创建一个虚拟机就安一个系统的
情况。

2、这里使用backing_file方式来创建qcow2格式image,这里的40G并不会真正占用40G,只是限制了
ubuntu-nova.qcow2文件的最大大小。

3、当raw格式文件中安装的系统是windows系列的时候,创建qcow2格式最后
文件大小需要比raw格式大2-3倍,例如创建一个大小为30G的win7.raw格式文件,创建qcow2格式磁盘命令如下:
qemu-img create -f qcow2 -o cluster_size=2M,backing_file=win7.raw windows-7.qcow2 60G

4、这里的ubuntu-nova.qcow2文件并不是一个独立的image,在使用时需要与ubuntu14.04.raw磁盘一起使用
需要保持backing_file绝对路径不变,qcow2文件可以移动。虚拟机是直接与qcow2格式image交互,raw格式image作为backing_file
对虚拟机而言完全是透明的。实际上qcow2文件才是的是写时复制策略,qcow2格式image只是保存了所有的更改数据,raw格式的image
中的数据不会发生丝毫变动。

5、读操作:如果虚拟机并未更改数据,那么虚拟机会直接读取raw格式磁盘,否则读取qcow2磁盘上的数据

6、写操作:写操作时如果与raw虚拟磁盘上的数据并不相同,则将此部分数据保存至qcow2格式磁盘

7、性能方面,qcow2格式磁盘与直接使用raw格式磁盘相比,读写性能略有下降,但损失不明显,磁盘IO要求较低的虚拟机建议使用raw格式虚拟机磁盘

8、这么做的好处是?第一点:raw格式创建后就会占用掉大量空间,比如创建一个20G的rawge格式image,那么就会立占用20G,那么qcow2格式image则是动态增长

9、qcow2是一种当下比较主流的虚拟化磁盘格式,具有占用空间小,支持加密,支持压缩,支持快照的特点

四、qcow2格式image也可以不使用backing_file(此时:qcow2格式和raw格式的唯一却别是qcow2是动态增长,其他基本无太大区别)
qemu-img create -f qcow2 ubuntu14.04.qcow2 20G

相关推荐