kvm虚拟机默认使用raw格式的镜像格式,性能最好,速度最快,它的缺点就是不支持一些新的功能,如支持镜像,zlib磁盘压缩,AES加密等。要使用镜像功能,磁盘格式必须为qcow2。下面开始kvm虚拟机快照备份的过程,这里以虚拟机snale 为例。
1、将虚拟机snale 关机:
1 [root@kvm image 10:56:10]#virsh list --all
2 Id 名称 状态
3 ----------------------------------------------------
4 - snale 关闭
5 - snale2 关闭
2、查看snale磁盘镜像格式
1 [root@kvm image 13:44:02]#qemu-img info /kvm/image/snale.img
2 image: /kvm/image/snale.img
3 file format: raw
4 virtual size: 18G (19327352832 bytes)
5 disk size: 1.5G
3、将raw 格式转换成支持 快照备份的 qcow2 格式(友情提示:确保你磁盘有足够的空间):
1 [root@kvm image 13:44:19]# qemu-img convert -f raw -O qcow2 /kvm/image/snale.img /kvm3/snale.qcow2
2 [root@kvm image 13:48:07]#ls /kvm3/
3 snale.qcow2
4 [root@kvm image 13:48:32]#qemu-img info /kvm3/snale.qcow2
5 image: /kvm3/snale.qcow2
6 file format: qcow2
7 virtual size: 18G (19327352832 bytes)
8 disk size: 1.2G
9 cluster_size: 65536
4、修改虚拟机snale 的主配置文件:
1 [root@kvm ~ 13:50:51]#virsh edit snale
找到disk 标签,指定新的类型及磁盘文件。将原来的type = 'raw' 修改成 type = 'qcow2'
1 <driver name='qemu' type='qcow2' cache='none'/>
将原来的 source file='/data/kvm/image/snale.img' 修改成 source file='/kvm3/snale.qcow2' :
1 <source file='/kvm3/snale.qcow2'/>
5、开始创建快照:
1 [root@kvm ~ 13:54:54]#virsh snapshot-create snale
2 Domain snapshot 1475214943 created
创建完成,查看快照版本:
1 [root@kvm ~ 13:56:56]#virsh snapshot-list snale
2 名称 Creation Time 状态
3 ------------------------------------------------------------
4 1475214943 2016-09-30 13:55:43 +0800 shutoff
1 [root@kvm ~ 14:07:42]#virsh snapshot-current snale|grep creationTime
2 <creationTime>1475214943</creationTime>
查看快照的配置文件:
1 [root@kvm ~ 13:57:00]#virsh snapshot-current snale
注:该配置文件在该目录下/var/lib/libvirt/qemu/snapshot :
1 [root@kvm ~ 14:03:43]#ls /var/lib/libvirt/qemu/snapshot/snale/
2 1475214943.xml
再创建一次快照
1 [root@kvm ~ 14:09:03]#virsh snapshot-create snale
2 Domain snapshot 1475215934 created
1 [root@kvm ~ 14:12:15]#virsh snapshot-list snale
2 名称 Creation Time 状态
3 ------------------------------------------------------------
4 1475214943 2016-09-30 13:55:43 +0800 shutoff
5 1475215934 2016-09-30 14:12:14 +0800 shutoff
6、恢复到指定的版本1475214943 ,没有任何输出则代表恢复成功:
1 [root@kvm ~ 14:12:56]#virsh snapshot-revert snale 1475214943
确定是否恢复到了指定版本:
1 [root@kvm ~ 14:16:13]#virsh snapshot-current snale|grep creationTime
2 <creationTime>1475214943</creationTime>
7、删除虚拟机快照。在删除快照之前,先看下快照信息:
1 [root@kvm ~ 14:16:21]#qemu-img info /kvm3/snale.qcow2
2 image: /kvm3/snale.qcow2
3 file format: qcow2
4 virtual size: 18G (19327352832 bytes)
5 disk size: 1.2G
6 cluster_size: 65536
7 Snapshot list:
8 ID TAG VM SIZE DATE VM CLOCK
9 1 1475214943 0 2016-09-30 13:55:43 00:00:00.000
10 2 1475215934 0 2016-09-30 14:12:14 00:00:00.000
删除第一个快照,1475214943
1 [root@kvm ~ 14:19:43]#virsh snapshot-delete snale 1475214943
2 Domain snapshot 1475214943 deleted
3
4 [root@kvm ~ 14:21:17]#qemu-img info /kvm3/snale.qcow2
5 image: /kvm3/snale.qcow2
6 file format: qcow2
7 virtual size: 18G (19327352832 bytes)
8 disk size: 1.2G
9 cluster_size: 65536
10 Snapshot list:
11 ID TAG VM SIZE DATE VM CLOCK
12 2 1475215934 0 2016-09-30 14:12:14 00:00:00.000
删除快照的第一个版本,不会删除该版本后的快照版本!!