如何使用 virsh 命令创建、还原和删除 KVM 虚拟机快照
2018-05-07 22:19
946 查看
在虚拟化平台上进行系统管理工作时,经常需要在开始重大操作比如部署补丁和代码前先设置一个虚拟机快照snapshot。
虚拟机快照是特定时间点的虚拟机磁盘的副本。换句话说,快照保存了给定的时间点虚拟机的状态和数据。
注意:我们只能对磁盘格式为 Qcow2 的虚拟机的进行快照,并且 kvm 的
语法:
语法:
虚拟机快照是特定时间点的虚拟机磁盘的副本。换句话说,快照保存了给定的时间点虚拟机的状态和数据。
我们可以在哪里使用虚拟机快照?
如果你在使用基于 KVM 的虚拟机管理程序(hypervisor),那么可以使用virsh命令获取虚拟机或域快照。快照在一种情况下变得非常有用,当你已经在虚拟机上安装或应用了最新的补丁,但是由于某些原因,虚拟机上的程序变得不稳定,开发团队想要还原所有的更改和补丁。如果你在应用补丁之前设置了虚拟机的快照,那么可以使用快照将虚拟机恢复到之前的状态。
注意:我们只能对磁盘格式为 Qcow2 的虚拟机的进行快照,并且 kvm 的
virsh命令不支持 raw 磁盘格式,请使用以下命令将原始磁盘格式转换为 qcow2。
# qemu-img convert -f raw -O qcow2 image-name.img image-name.qcow2
创建 KVM 虚拟机(域)快照
我假设 KVM 管理程序已经在 CentOS 7 / RHEL 7 机器上配置好了,并且有虚拟机正在运行。我们可以使用下面的virsh命令列出虚拟机管理程序中的所有虚拟机,
假设我们想创建 webserver 虚拟机的快照,运行下面的命令,[root@kvm-hypervisor ~]# virsh list --all Id Name State---------------------------------------------------- 94 centos7.0 running 101 overcloud-controller running 102 overcloud-compute2 running 103 overcloud-compute1 running 114 webserver running 115 Test-MTN running
语法:
# virsh snapshot-create-as –domain {vm_name} –name {snapshot_name} –description “enter description here”
创建快照后,我们可以使用下面的命令列出与虚拟机相关的快照:[root@kvm-hypervisor ~]# virsh snapshot-create-as --domain webserver --name webserver_snap --description "snap before patch on 4Feb2018"Domain snapshot webserver_snap created
要列出虚拟机快照的详细信息,请运行下面的[root@kvm-hypervisor ~]# virsh snapshot-list webserver Name Creation Time State------------------------------------------------------------ webserver_snap 2018-02-04 15:05:05 +0530 running[root@kvm-hypervisor ~]#
virsh命令:
我们可以使用下面的[root@kvm-hypervisor ~]# virsh snapshot-info --domain webserver --snapshotname webserver_snapName: webserver_snapDomain: webserverCurrent: yesState: runningLocation: internalParent: -Children: 0Descendants: 0Metadata: yes
qemu-img命令查看快照的大小:
[root@kvm-hypervisor ~]# qemu-img info /var/lib/libvirt/images/snaptestvm.img
还原 KVM 虚拟机快照
假设我们想要将 webserver 虚拟机还原到我们在上述步骤中创建的快照。使用下面的virsh命令将 Webserver 虚拟机恢复到其快照 webserver_snap 时。
语法:
# virsh snapshot-revert {vm_name} {snapshot_name}
[root@kvm-hypervisor ~]# virsh snapshot-revert webserver webserver_snap
删除 KVM 虚拟机快照
要删除 KVM 虚拟机快照,首先使用virsh snapshot-list命令获取虚拟机的快照详细信息,然后使用
virsh snapshot-delete命令删除快照。如下示例所示:
这就是本文的全部内容,我希望你们能够了解如何使用[root@kvm-hypervisor ~]# virsh snapshot-list --domain webserver Name Creation Time State------------------------------------------------------------ webserver_snap 2018-02-04 15:05:05 +0530 running[root@kvm-hypervisor ~]# virsh snapshot-delete --domain webserver --snapshotname webserver_snapDomain snapshot webserver_snap deleted
virsh命令来管理 KVM 虚拟机快照。请分享你的反馈,并不要犹豫地分享给你的技术朋友
相关文章推荐
- kvm-libvirt的使用:创建虚拟机与快照
- [zz]kvm-libvirt的使用:创建虚拟机与快照
- kvm-libvirt的使用:创建虚拟机与快照
- 在XenCenter中使用命令删除XenServer虚拟机快照
- kvm-libvirt的使用:创建虚拟机与快照
- 如何在Openstack的控制节点使用命令手动创建一个虚拟机
- 如何在Openstack的控制节点使用命令手动创建一个虚拟机
- KVM 虚拟机在 IBM System x 上应用 - 如何使用 SLES11 自带的 KVM 虚拟软件在 IBM Ssystem x 上创建虚拟机
- 使用virsh命令创建KVM虚拟机快照
- [zz]kvm-libvirt的使用:创建虚拟机与快照
- 使用qemu-img管理虚拟机磁盘镜像(创建虚拟机,虚拟机快照)
- RHEL5.4下如何创建yum源,如何使用yum命令
- Hyper-V的虚拟机创建和还原虚拟机快照
- 使用Qemu-img管理虚拟机磁盘镜像(创建虚拟机,虚拟机快照)
- 如何使用 trash-cli 逃出 rm 命令误删除重要文件的阴影 – 周丕中的生活技术博客
- 使用qmeu-img管理虚拟机磁盘镜像(创建虚拟机,虚拟机快照)
- 在PL/SQL中使用命令创建和删除表空间
- kvm与virsh两种创建虚拟机方式的一些问题
- KVM 虚拟机快照创建
- [zz]kvm环境使用libvirt创建虚拟机