QEMU checkpoint(snapshot) 使用


文章目录

  • QEMU checkpoint(snapshot) 使用
  • KVM Snapshots分类
  • QEMU Snapshots类型
  • QEMU 外置快照
  • QEMU checkpoint快照



本文介绍了QEMU checkpoint的现状和使用方法

在操作QEMU之前,先了解一下KVM的快照具体有哪些种类:

KVM Snapshots分类

  • 磁盘快照
  • 根据快照信息的保存位置
  • 内置快照:快照保存在虚拟机磁盘文件中
  • 外置快照:快照保存在内置单独的文件中
  • 根据虚拟机状态
  • 关机快照:关机时执行
  • 运行态快照:需要在虚拟机中安装agent,能够将缓存中的数据写入磁盘,保证数据的一致性
  • 根据磁盘数量
  • 单盘
  • 多盘:原子性,把为虚拟机所有磁盘创建快照的操作当作一个原子操作,要么全部成功,要么全部失败
  • 内存快照
  • 将内存中系统运行的信息进行保存
  • 检查点**(checkpoint)**快照
  • 磁盘快照+内存快照,能够完整的保存虚拟机的状态

QEMU Snapshots类型

QEMU可以实现外置快照(offline状态下使用,用qemu-img命令实现)和检查点快照的功能(在QEMU Monitor中使用)

  • 外置快照
  • 通过qemu-img 命令实现
  • offline 模式
  • 磁盘快照,对磁盘格式有要求:如qcow2格式
  • 不可以用来直接启动QEMU
  • checkpoint快照
  • 在QEMU Monitor 中通过命令创建
  • QEMU运行时创建
  • 保存当前虚拟机的完整状态
  • 可以用快照直接启动QEMU

QEMU 外置快照

  • qemu-img 命令简介

qemu-img 命令安装:
yum install -y qemu-kvm
apt-get install qemu-kvm

  • qemu-img 可以在offline模式下创建、转化和修改镜像。它可以操作QEMU所支持的所有镜像格式:如raw、qcow2、qcow、cow、vdi以及vmdk等
  • qemu-img create
  • create [-q] [-f FMT] [-b BACKING_FILE [-F BACKING_FMT]] [-u] FILENAME [SIZE]
  • 创建名为FILENAME、大小为SIZE的FMT格式镜像
  • 指定BACKING_FILE,只记录镜像与BACKING_FILE的不同,可以通过commit命令获得完整镜像
  • qemu-img convert
  • qemu-img convert –f fmt1 –O fmt2 [current-disk.fmt1] [new-disk.fmt2]
  • 将fmt1格式的current-disk.fmt1转化为fmt2格式的new-disk.fmt2镜像
  • qemu-img snapshot
  • Snapshot [-U] [-q] [-l | -a SNAPSHOT | -c SNAPSHOT | -d SNAPSHOT] FILENAME
  • 列出(l)、应用(a)、创建©和删除(d)镜像FILENAME的快照SNAPSHOT
  • qemu-img snapshot不支持在raw格式的镜像上生成外置快照,所以先将raw格式的镜像转化为常用的QEMU镜像格式,如qcow2
qemu-img convert –f raw –O qcow2 your-disk.img your-disk.qcow2
  • 创建外置快照
qemu-img snapshot -c snapshot-name your-disk.qcow2
  • 查看某镜像快照
qemu-img snapshot -l your-disk.qcow2

qemu check QEMU checkpoint_检查点

  • 删除快照
qemu-img snapshot -d snapshot-name your-disk.qcow2
  • 应用快照,如某镜像拥有s1和s2两个快照,现将s1快照应用到该镜像,则该镜像恢复到s1
qemu-img snapshot -a s1 your-disk.qcow2
  • 使用qemu-img创建的外置快照无法直接用来启动QEMU
qemu […] -hda your-disk.qcow2 -loadvm s1

qemu check QEMU checkpoint_linux_02

QEMU checkpoint快照

  • 通过QEMU Monitor 在QEMU 运行时拆功能键
  • -nographic模式切换QMP窗口
  • 快捷键ctrl+a,再按c (切回QEMU终端相同)
  • 创建checkpoint快照
(qemu) savevm snapshot-name
  • 查看Checkpoint快照
(qemu) info snapshots

qemu check QEMU checkpoint_检查点_03

  • 使用checkpoint快照
(qemu) loadvm snapshot-name
  • 删除checkpoint快照
(qemu) delvm snapshot-name
  • QEMU checkpoint 快照可以用来直接启动QEMU
qemu […] -hda your-disk.qcow2 -loadvm ms2
  • 例如直接进入ms2快照的保存目录