centos7 如何在两台机子间备份还原KVM虚拟机

发布于 2021-04-29 15:31:37

原理

用过docker的小伙伴都知道,只要docker的数据文件和配置还在,就算换了台机子,都可以把容器重新跑起来。
其实KVM也是同样的原理,只要把kvm的配置文件 和 qcow2磁盘文件提前出来,再放到其他宿主机上就可以重新跑起来了。

提取配置文件

首先,我们先列出机子上所有的虚拟机:

virsh list –all

image.png

然后对需要操作的虚拟机进行关机(必须关机)

virsh shutdown Ubuntu18

再看下状态,确保机子已经关机。

 virsh list –all

image.png

好了,现在开始提取配置文件:

virsh dumpxml Ubuntu18 > /MyBackup/Ubuntu18.xml

(保存文件路径自己定义)

备份qcow2磁盘文件

查看虚拟机的磁盘文件路径

 virsh domblklist Ubuntu18

image.png

到这一步,我们已经找到了所有需要备份的文件(其实就两个),这个时候就需要把文件备份或者使用scp传到另一台机子上。

还原虚拟机

如果在新的机子上进行还原,因为宿主机的硬件差异,往往还要修改一下kvm 的配置文件(也就是上面提取的Ubuntu18.xml)。
比如:qcow2磁盘路径、网卡配置等。如果新机子的这些配置怎么办呢,有个小技巧,先按上面的操作,把新宿主机上的某台虚拟机配置导出来做参考。

修改好配置后,导入配置就可以了:

virsh define /MyBackup/Ubuntu18.xml

启动虚拟机:

virsh start Ubuntu18
0 条评论

发布
问题