您的位置:首页 > 新闻 > 会展 > Qemu虚拟机在线迁移到VMware

Qemu虚拟机在线迁移到VMware

2024/10/11 20:26:59 来源:https://blog.csdn.net/hbuxiaofei/article/details/139843591  浏览:    关键词:Qemu虚拟机在线迁移到VMware

在这里插入图片描述

  • libvirt版本:libvirt-10.0.0
  • qemu版本:qemu-8.2.0

在生产环境中,大多数的场景是 vmware 虚拟机迁移到 qemu 环境,一般是通过关机然后导出、导入磁盘镜像来实现。

如果要将 qemu 环境虚拟机迁移到 vmware 怎么办呢?要求业务中断时间尽可能短。

下面介绍一种思路,来实现类似热迁移的效果(实际并不是热迁移,内存没办法做到热迁移,只是将业务中断时间缩短到很小间隔)。

1. 实现原理

具体思路是通过对 qcow2 做外部快照,然后 convert 外部快照到 vmdk ,重复 n 次外部快照+convert,同时转换后的 vmdk 也保持着完整快照链,最后阶段进行停机,将最后的磁盘 convert 到 vmdk,启动 vmware 虚拟机。

在这里插入图片描述

2. 创建测试虚拟机 testvm

首先创建一个虚拟机 testvm, 此虚拟机有 2 块磁盘:vda 系统盘,vdb 数据盘。下面我们以 vdb 数据盘为目标来做 vmware vmdk磁盘的迁移(vda系统盘类似)。

图片

3. 操作步骤

(1)启动虚拟机
在这里插入图片描述

(2)进入虚拟机,格式化 vdb磁盘,然后挂载,写入文件 1.txt
在这里插入图片描述

(3)在host上,为 vdb 磁盘创建外部快照 snap1

在这里插入图片描述

(4)上一步 data.qcow2 是只读 backing file 磁盘,现在我们可以安全的对这个磁盘进行转换 ( convert ) 操作了

图片

(5)在进入虚拟机 创建 文件 2.txt

在这里插入图片描述

(6)在host上,为 vdb 磁盘创建外部快照 snap2

图片

(7) 对 snap1.qcow2 进行转换 ( convert ) 操作

这里需要指定 backing file 为第4步convert 后的 data.vmdk

图片

(8)至此, 我们 可以重复执行 5、 6、 7 步骤 一直创建 vmdk 的快照链

图片

(9)最后验证我们生成的 vmdk快照链是否可用

通过 qemu-nbd 挂载到本地,然后再 mount 到指定路径下,可以看到我们之前创建的文件及写入文件的内容,经验证 vmdk 磁盘完整可用。

在这里插入图片描述


参考文档:
qemu-img 文档翻译: https://blog.jcix.top/2018-09-28/qemu_img_doc/
迁移原理整理—VMware纳管原理 :https://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=117363

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com