磁盘驱动器接口类型
IDE兼容性最好,性能较差,逐渐淘汰
SATA纠错能力强,接口简单,机械使用最广
SCSI性能好,价格贵,主要用于服务器
SAS拓展性和可用性好,新一代SCSI,与SATA兼容
VirtIO性能较好,虚拟化推荐使用
M.2传输速度极快,固态普遍使用
KVM常用磁盘类型
raw:原始磁盘文件格式,几乎所有存储设备都支持,是否支持稀疏文件取决于宿主机(KVM)操作系统是否支持
qcow2:qemu推荐的虚拟磁盘文件格式,支持功能多(加密,稀疏,快照)
稀疏文件=精简
稀疏:起始创建的磁盘文件空间大小为0,随着数据写入,磁盘文件空间动态增大
后端镜像=母卷
后端镜像:多台虚拟机同用一个虚拟磁盘文件,用于存放虚拟机相同的数据,也称为母板
虚拟磁盘缓存模式
虚拟机产生的数据,终将写入到虚拟磁盘文件所在的真实存储设备中,数据何时、如何写入存储设备,由虚拟磁盘缓存模式指定
虚拟磁盘缓存模式分类
1.writethrough(默认模式):直写模式
当虚拟机产生数据时,数据将直接写入虚拟磁盘文件所在的存储设备
2.writeback:回写模式
当虚拟机产生数据时,数据将由宿主机进行缓存,并等待时机成熟时再写入存储设备
虚拟机可以在需要的时候执行刷新操作,使数据写入存储设备
3.none:无模式
当虚拟机产生数据时,数据将写入虚拟磁盘文件所在的存储设备
虚拟机可以在需要的时候执行刷新操作,保证数据立即写入存储设备
4.unsafe:不安全模式
当虚拟机产生数据时,数据将由宿主机进行缓存,并等待时机成熟时再写入存储设备
虚拟机不能执行刷新操作
数据一致性:虚拟机产生了数据,并且数据也写入了真实存储设备
数据不一致:虚拟机产生了数据,但数据由于某些原因(比如断电)没有及时写入真实存储设备,虚拟机认为数据已保存好了,但实际没有
writethrough/none模式具有更高的数据一致性
unsafe模式一致性最差,不建议在生产环境中使用
qemu-img 命令
1、虚拟磁盘文件创建qemu-img create -f 格式 [-o 选项] 虚拟磁盘文件名 磁盘大小[M|G|K]
如:创建raw格式的磁盘文件test.img,磁盘大小为5Gqumu-img create -f raw test.img 5G
2、虚拟磁盘文件信息查询qemu-img info 虚拟磁盘文件名
如:查看test.img磁盘文件信息qeumu-img info test.img
3、虚拟磁盘文件创建qemu-img create -f 格式 [-o 选项] 虚拟磁盘文件名
backing_file选项,指定后端镜像文件
如:创建qcow2格式的磁盘文件abc.qcow2,磁盘大小为10G, 后端镜像为test.imgqemu-img create -f qcow2 -o backing_file=test.img abc.qcow2 10G
4、磁盘文件快照管理(快照创建在磁盘里面)qemu-img snapshot -l 虚拟磁盘文件名
如:查看/storage/test.qcow2磁盘文件中的快照信息qemu-img snapshot -l /storage/test.qcow2
5、磁盘文件空间的调整
注意:(qcow2文件只支持增大空间,且文件没有快照,如果有,需要删除才能进行调整。
增加的磁盘空间,需要在虚拟机中进行分区、格式化等操作后才能使用)qemu-img resize 虚拟磁盘文件名 +|-空间大小
如:对test.img的磁盘进行扩容10Gqemu-img resize test.img +10G
6、虚拟磁盘文件格式转换(变成KVM支持的磁盘文件格式)
注意:格式转换并不会删除原虚拟磁盘文件qemu-img convert -O 转换格式 转换前虚拟磁盘文件名 转换后虚拟磁盘文件名
如:将名为convert.vmdk转换为名为convert.qcow2的磁盘文件qemu-img convert -O qcow2 convert.vmdk convert.qcow2
7、虚拟磁盘文件查错(查找镜像文件的错误)qemu-img check 虚拟磁盘文件名
如:查找win7.qcow2虚拟磁盘文件中的错误qemu-img check win7.qcow2
本文作者: Tjane'Blogs