kvm虚拟机默认使用raw格式的镜像格式,性能最好,速度最快,它的缺点就是不支持一些新的功能,如支持镜像,zlib磁盘压缩,AES加密等。要使用镜像功能,磁盘格式必须为qcow2。下面开始kvm虚拟机快照备份的过程,这里以虚拟机snale 为例。

1、将虚拟机snale 关机:

 [root@kvm image ::]#virsh list --all
Id 名称 状态
----------------------------------------------------
- snale 关闭
- snale2 关闭

2、查看snale磁盘镜像格式

 [root@kvm image ::]#qemu-img info /kvm/image/snale.img
image: /kvm/image/snale.img
file format: raw
virtual size: 18G ( bytes)
disk size: .5G

3、将raw 格式转换成支持 快照备份的 qcow2 格式(友情提示:确保你磁盘有足够的空间):

 [root@kvm image ::]# qemu-img convert -f raw -O qcow2 /kvm/image/snale.img /kvm3/snale.qcow2
[root@kvm image ::]#ls /kvm3/
snale.qcow2
[root@kvm image ::]#qemu-img info /kvm3/snale.qcow2
image: /kvm3/snale.qcow2
file format: qcow2
virtual size: 18G ( bytes)
disk size: .2G
cluster_size:

4、修改虚拟机snale 的主配置文件:

 [root@kvm ~ ::]#virsh edit snale

找到disk 标签,指定新的类型及磁盘文件。将原来的type = 'raw' 修改成 type = 'qcow2'

 <driver name='qemu' type='qcow2' cache='none'/>

将原来的 source file='/data/kvm/image/snale.img' 修改成 source file='/kvm3/snale.qcow2' :

 <source file='/kvm3/snale.qcow2'/>

5、开始创建快照:

 [root@kvm ~ ::]#virsh snapshot-create snale
Domain snapshot created

创建完成,查看快照版本:

 [root@kvm ~ ::]#virsh snapshot-list snale
名称 Creation Time 状态
------------------------------------------------------------
-- :: + shutoff
 [root@kvm ~ ::]#virsh snapshot-current snale|grep creationTime
<creationTime></creationTime>

查看快照的配置文件:

 [root@kvm ~ ::]#virsh snapshot-current snale

注:该配置文件在该目录下/var/lib/libvirt/qemu/snapshot :

 [root@kvm ~ ::]#ls /var/lib/libvirt/qemu/snapshot/snale/
.xml

再创建一次快照

 [root@kvm ~ ::]#virsh snapshot-create snale
Domain snapshot created
 [root@kvm ~ ::]#virsh snapshot-list snale
名称 Creation Time 状态
------------------------------------------------------------
-- :: + shutoff
-- :: + shutoff

6、恢复到指定的版本1475214943 ,没有任何输出则代表恢复成功:

 [root@kvm ~ ::]#virsh snapshot-revert snale 

确定是否恢复到了指定版本:

 [root@kvm ~ ::]#virsh snapshot-current snale|grep creationTime
<creationTime></creationTime>

7、删除虚拟机快照。在删除快照之前,先看下快照信息:

 [root@kvm ~ ::]#qemu-img info /kvm3/snale.qcow2
image: /kvm3/snale.qcow2
file format: qcow2
virtual size: 18G ( bytes)
disk size: .2G
cluster_size:
Snapshot list:
ID TAG VM SIZE DATE VM CLOCK
-- :: ::00.000
-- :: ::00.000

删除第一个快照,1475214943

 [root@kvm ~ ::]#virsh snapshot-delete snale
Domain snapshot deleted [root@kvm ~ ::]#qemu-img info /kvm3/snale.qcow2
image: /kvm3/snale.qcow2
file format: qcow2
virtual size: 18G ( bytes)
disk size: .2G
cluster_size:
Snapshot list:
ID TAG VM SIZE DATE VM CLOCK
-- :: ::00.000

删除快照的第一个版本,不会删除该版本后的快照版本!!

KVM之八:快照创建、恢复与删除的更多相关文章

  1. CentOS 6.9下KVM虚拟机快照创建、删除、恢复(转)

    使用文件快照的方式实现文件备份,但单说快照(snapshot)的话,他是某一时间点(版本)你能看到的该时间点备份文件状态的全貌,通过文件的快照(全貌)你能恢复到特定时间点(版本)的文件状态. 创建虚拟 ...

  2. KVM虚拟机快照链创建,合并,删除及回滚研究

    1 QEMU,KVM,libvirt关系 QEMU QEMU提供了一个开源的服务器全虚拟化解决方案,它可以使你在特定平台的物理机上模拟出其它平台的处理器,比如在X86 CPU上虚拟出Power的CPU ...

  3. CEPH集群RBD快照创建、恢复、删除、克隆(转)

    Ceph支持一个非常好的特性,以COW(写时复制)的方式从RBD快照创建克隆,在Ceph中被称为快照分层.分层特性允许用户创建多个CEPH RBD克隆实例.这些特性应用于OpenStack等云平台中 ...

  4. centos7命令行模式安装&&配置_br0+kvm+虚拟机+添加硬盘+快照及恢复

    KVM创建虚拟机步骤 Submitted by zhaoley on October 18, 2016 - 10:43am 测试环境: 1: 43.243.130.89, CentOS Linux r ...

  5. 使用virsh命令创建KVM虚拟机快照

    查看虚拟机所在主机和虚拟机名称:[root@node-1 ~]# nova show a88dcf5d-c8b2-46a5-af27-a176d8235c9d|grep hyper| OS-EXT-S ...

  6. KVM克隆 快照

    原创博文安装配置KVM http://www.cnblogs.com/elvi/p/7718574.htmlweb管理kvm http://www.cnblogs.com/elvi/p/7718582 ...

  7. kvm虚拟化之kvm虚拟机快照备份

    kvm虚拟机默认使用raw格式的镜像格式,性能最好,速度最快,它的缺点就是不支持一些新的功能,如支持镜像,zlib磁盘压缩,AES加密等.   要使用镜像功能,磁盘格式必须为qcow2.下面开始kvm ...

  8. KVM虚拟机快照备份

    KVM 快照的定义:快照就是将虚机在某一个时间点上的磁盘.内存和设备状态保存一下,以备将来之用.它包括以下几类: (1)磁盘快照:磁盘的内容(可能是虚机的全部磁盘或者部分磁盘)在某个时间点上被保存,然 ...

  9. Elasticsearch 快照和恢复

    摘要: 在Elasticsearch中的可以创建快照,它创建单个索引或整个群集到一个远程的存储库中.在以前的版本中,系统只支持共享存储的快照创建,最新的版本可以通过插件支持更多的方式.在执行快照操作前 ...

随机推荐

  1. dojo单柱状图

    dojo单柱状图 1.dojo单柱状图源码 column.html: <!DOCTYPE HTML> <html lang="en"> <head&g ...

  2. Struts2实现文件上传报错(三)

    1.具体错误如下 usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { -he ...

  3. linux c语言 select函数用法

    linux c语言 select函数用法 表头文件 #i nclude<sys/time.h> #i nclude<sys/types.h> #i nclude<unis ...

  4. Linux以列表格式显示块设备

    Linux以列表格式显示块设备 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ lsblk -l NAME MAJ:MIN RM SIZE RO TYPE MO ...

  5. java.sql.SQLException:No suitable driver found for http://localhost:3306/school

    1.错误描述 java.sql.SQLException:No suitable driver found for http://localhost:3306/school 2.错误原因 Class. ...

  6. mybatis中动态update中的isNotEmpty和isNotNull标签

    一,简介 在iBATIS中isNull用于判断参数是否为Null,isNotNull相反isEmpty判断参数是否为Null或者空,满足其中一个条件则其trueisNotEmpty相反,当参数既不为N ...

  7. 由js深拷贝引起的对内存空间的一些思考

    数据类型 js常用数据类型分为基本类型和引用类型 基本类型:null.undefined.数值型.字符串型.布尔型 引用类型:数组.对象 内存空间 var a = [1, 2, 3]; var b = ...

  8. C#多线程编程(1)--线程,线程池和Task

    新开了一个多线程编程系列,该系列主要讲解C#中的多线程编程.    利用多线程的目的有2个: 一是防止UI线程被耗时的程序占用,导致界面卡顿:二是能够利用多核CPU的资源,提高运行效率. 我没有进行很 ...

  9. iOS逆向工程,(狗神)沙梓社大咖免费技术分享。

    序言 简介:本文针对于广大iOS开发者,作为一名开发者,仅仅专注于一门语言可能已经不适用现在的市场需求,曾经因高薪和需求量巨大,而火爆一时的移动端开发者(Android,ios),如今的路却是不再那么 ...

  10. handsontable 合并单元格

    <!DOCTYPE html> <html> <head> <title>handsontable demo</title> <met ...