snapshot(快照)可以把虚拟机某个时间点的内存、磁盘文件等的状态保存为一个镜像文件。通过这个镜像文件,可以在以后的任何时间来恢复虚拟机在当时创建snapshot的状态,这个在使用虚拟机来做测试的时候很有用。
二、创建快照-KVM:
需注意在虚拟机运行时创建快照不会报错,但会出现一些莫名其妙的问题,像恢复快照失败、快照名为空等,所以在创建快照前要先关闭虚拟机。
2.1创建
//raw格式
kvm虚拟机的raw格式磁盘文件不支持快照功能,在创建快照前需要先转换为qcow或qcow2格式。
[root@kvmserver xp_4_test]# qemu-img info disk.raw
image: disk.raw
file format: raw
virtual size: 100M (104857600 bytes)
disk size: 6.1M
[root@kvmserver xp_4_test]# qemu-imgsnapshot -c s1 disk.raw //raw格式的转换报错
qemu-img: Could not create snapshot'snapshot01': -95 (Operation not supported)
//qcow2格式
[root@kvmserver xp_4_test]# qemu-img info disk.qcow2
image:disk.qcow2
file format: qcow2
virtual size: 100M (104857600 bytes)
disk size: 4M
[root@kvmserver xp_4_test]# qemu-imgsnapshot -c s1 disk.qcow2
[root@kvmserver xp_4_test]# qemu-img infodisk01.qcow2 //可以看到刚新建的快照s1
image: disk.qcow2
file format: qcow2
virtual size: 100M (104857600 bytes)
disk size: 80M
cluster_size: 65536
Snapshot list:
ID TAG VM SIZE DATE VM CLOCK
1 s1 02012-05-10 15:20:40 00:00:00.000
[root@kvmserver xp_4_test]# ls -lh
总用量 7G
-rw-r--r--. 1 qemu qemu 108M 5月 10 15:03 disk.qcow2
-rw-r--r--. 1 qemu qemu 6.5G 5月 10 15:03xp_4_test.img
创建快照后不会有新的镜像文件产生;disk.qcow2镜像文件创建时的大小为100M,这里显示的大小为108M,这是因为快照位于disk.qcow2镜像文件内而没有单独生成一个文件。
2.2列出镜像的所有快照
[root@kvmserver xp_4_test]# qemu-imgsnapshot -l disk.qcow2
Snapshot list:
ID TAG VM SIZE DATE VM CLOCK
1 s1 02012-05-10 15:20:40 00:00:00.000
2 s2 02012-05-10 15:32:37 00:00:00.004
2.3快照恢复
恢复快照同样也需要在关闭虚拟机的情况下进行,下面的恢复会使虚拟机恢复到2012-05-10 15:20:40的状态,在此时间点后对磁盘disk.qcow2的操作将全部失效
[root@kvmserver xp_4_test]# qemu-imgsnapshot -a s1 disk.qcow2
2.4 删除快照
[root@kvmserver xp_4_test]# qemu-imgsnapshot -d s1 disk.qcow2
三、创建快照-convirture:
使用convirture来创建、恢复快照同样需要在关闭虚拟机的情况下进行,但不同的是convirture会将系统状态另外生成一个压缩的镜像文件。
3.1创建快照
//指定快照的保存路径和文件名
3.1恢复快照
//选择需要恢复的快照文件