[x] qcow2不支持缩小镜像的操作
#实操 [root@localhost vm]# qemu-img info LNMP-disk1.qcow2 image: LNMP-disk1.qcow2 file format: qcow2 virtual size: 20G (21474836480 bytes) #磁盘原始尺寸 disk size: 2.5G cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: false [root@localhost vm]# qemu-img resize LNMP-disk1.qcow2 +10G #增加10G尺寸 Image resized. [root@localhost vm]# qemu-img info LNMP-disk1.qcow2 image: LNMP-disk1.qcow2 file format: qcow2 virtual size: 30G (32212254720 bytes) #扩大了10G disk size: 2.5G cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: false 5.3 快照管理 5.3.1 快照/检查点概述[x] 磁盘快照
对磁盘数据进行快照
主要用于虚拟机备份等场合
[x] 内存快照
对虚拟机的内存/设备信息进行保存
该机制同时用于休眠恢复,迁移等场景
主要使用virsh save(qemu migrate to file)实现,只能对运行的虚拟机进行
[x] 检查点快照
同时保存虚拟机的磁盘快照和内存快照
用于将虚拟机恢复到某个时间点
可以保证数据的一致性
[x] 按快照信息保存分为:
内置快照:快照数据和base磁盘数据放在一个qcow2文件中
外置快照:快照数据单独的qcow2文件存放
[x] 按虚拟机状态可以分为:
关机态快照:数据可以保持一致性
运行态快照:数据无法保持一致性,类似与系统crash后的磁盘数据。使用是可能需要fsck等操作。
[x] 按磁盘数量可以分为:
单盘:单盘快照不涉及原子性
多盘:涉及原子性。主要分两个方面:1,是所有盘快照点相同 2,所有盘要么都快照成功,要么都快照失败。主要依赖于qemu的transaction实现
5.3.3 管理磁盘快照语法格式:
[root@localhost ~]# qemu-img --help | grep snapshot snapshot [-q] [-l | -a snapshot | -c snapshot | -d snapshot] filename Parameters to snapshot subcommand: \'snapshot\' is the name of the snapshot to create, apply or delete \'-a\' applies a snapshot (revert disk to saved state) #快照回滚 \'-c\' creates a snapshot #创建快照 \'-d\' deletes a snapshot #删除快照 \'-l\' lists all snapshots in the given image #显示快照列表快照管理之磁盘快照实操:
#创建磁盘快照 [root@localhost vm]# qemu-img snapshot -l /vm/Base_CentOS6.5.qcow2 [root@localhost vm]# qemu-img snapshot -c s1 /vm/Base_CentOS6.5.qcow2 #创建磁盘快照 [root@localhost vm]# qemu-img snapshot -l /vm/Base_CentOS6.5.qcow2 Snapshot list: ID TAG VM SIZE DATE VM CLOCK 1 s1 0 2018-05-06 13:33:16 00:00:00.000 #关闭虚拟机回滚磁盘快照 #在虚拟机里删除一个文件然后进行磁盘回滚 [root@localhost vm]# qemu-img snapshot -a s1 /vm/Base_CentOS6.5.qcow2需要注意的是,进行磁盘快照回滚时需要关闭虚拟机,回滚后,我们发现数据已经恢复
qemu-img方式的磁盘快照只能支持原生态的qcow2格式,不支持从raw格式转换而来的qcow2不然会出现问题。
[x] Libvirt可以以存储池的形式对存储进行统一管理,简化操作
[x] 对于虚拟机操作来说,存储池和卷并不是必须的
[x] 支持以下存储池
dir:Filesystem Directory
disk:Physical Disk Device
fs:Pre-Formatted Block Device
gluster:Gluster FileSystem
iscsi:iSCSI Target
logical:LVM Volume Group
mpath:Multipath Device Enumerator
netfs:Network Export Directory
rbd:RADOS Block Device/Ceph
scsi:SCSI Host Adapter
sheepdog:Sheepdog Filesystem
virsh中的存储池相关命令