开发者生态
morning
FreeBSD 和 bhyve 即将推出实时迁移支持
摘要
This project presents a first working state for live migration of bhyve guests on FreeBSD 15.1. A running amd64 guest can move between two hosts over TCP while continuing to run; it is paused only for...
the
and
migration
for
bhyve
live
FreeBSD
can
The
with
2026-11-14
1 阅读
约5分钟阅读
JohnDohnBohn
字号:
该项目展示了 FreeBSD 15.1 上 bhyve 来宾实时迁移的第一个工作状态。正在运行的 amd64 guest 可以通过 TCP 在两个主机之间移动,同时继续运行;仅在最后的停止和复制阶段暂停。这项工作建立在 bhyve 的实验性快照支持之上,并在 vmm 内核模块中添加脏页跟踪以及 bhyve 和 bhyvectl 中的迁移协议。使用 bhyve 在 FreeBSD 中实时迁移 VM 我之前在关于 FreeBSD 和 VM 实时迁移的文章 bhyve – Quo vadis? 中讨论了 bhyve 实时迁移的状态、其历史发展、现有局限性以及为什么它对 FreeBSD 虚拟化的未来很重要。 。我们的目标是刻意实用的:使测试、讨论和改进实际实现成为可能,而不是仅抽象地讨论实时迁移。当前的代码和测试工具正在作为 WIP RFC 发布,以便可以公开制定后续步骤。可以在我的 YouTube 频道上观看实时迁移虚拟机的更详细演示。为什么这很重要 实时迁移是企业虚拟化的重要组成部分。它支持主机维护、硬件更换、负载平衡和故障域管理,同时对工作负载的干扰要少得多。它也是 Sylve 项目的核心,该项目旨在为 FreeBSD 提供类似 Proxmox 的虚拟化解决方案。在这种平台上,迁移并不是一种可选的便利;而是一种选择。它是使集群操作变得实用的功能之一。这对于 BoxyBSD 同样重要,我向个人提供免费的基于 BSD 的 VPS 实例。如果没有可靠的迁移路径,日常主机工作可能需要访客中断。这使得实时迁移成为该项目当前的阻碍,也是这项工作被推向可测试、可审查状态的原因。当前实现的工作原理源代码从预复制阶段开始。它发送填充的来宾内存,然后重复获取自上次扫描以来更改的页面的位图,并仅发送这些页面。一旦剩余的脏集符合配置的停机时间目标、停止收缩或达到配置的回合限制,bhyve 就会暂停来宾及其设备。然后,它发送最终的脏页以及 vCPU、内核状态和模拟设备的现有快照状态。目标端验证基本的虚拟机几何结构、接收内存和状态、恢复它并报告它已准备就绪。只有这样源才会发送 GO,即提交点。在 GO 之前,失败的迁移可以恢复源 guest 虚拟机。如果目标端没有收到该提交消息,则不会启动 guest 虚拟机。还可以使用热停止和复制模式,这既可以作为后备,也可以作为比较基线。今天实现了什么 预复制和热迁移:实时预复制可配置停机时间和最大轮次控制;还支持显式停止和复制迁移。多 vCPU 协议支持:迁移握手携带来宾 vCPU 计数,目标拒绝计数不匹配,并且作为迁移的一部分,所有来宾 vCPU 都会暂停和恢复。已发布的测试床主要测试了单 vCPU 来宾,因此在做出更广泛的声明之前仍需要进行多 vCPU 压力和竞争测试。内存一致性检查:脏页跟踪通过页脏状态覆盖来宾和映射模拟写入,而 vmm 写入保持则单独记录。测试工作负载重写并验证来宾内存,并将任何丢失或过时的页面报告为不匹配。已使用重复的乒乓迁移来检查工作负载是否继续且没有错误。磁盘写入验证:来宾端工作负载重复写入和同步文件、验证校验和,并在冷启动后再次检查。这是为了练习设备暂停、耗尽和恢复路径。失败处理:目标拒绝、目标不可达以及目标在预复制和停止复制过程中消失均经过测试。在提交之前,源旨在在失败后恢复暂停的来宾。基本目标检查:在数据传输之前检查协议版本、页面大小、内存布局和 vCPU 计数。迁移套接字由 bhyvectl 打开并传递给 bhyve,以便 bhyve 可以保留在其 Capsicum 沙箱内。支持的范围:仅限 amd64,并且取决于实验性 BHYVE_SNAPSHOT 支持。它依赖于具有快照功能的模拟设备; PCI 直通目前还不可迁移。观察结果 在当前的两台主机测试环境中,重复的实时迁移、内存重写工作负载和 fsync 密集型磁盘工作负载已成功完成。对于缓慢脏污的 512 MiB 来宾,观察到的停机时间约为 138-171 毫秒。快速脏乱的来宾可能不会在预复制期间收敛,但仍然会以较长的暂停时间回退到正确的停止和复制完成。这些是令人鼓舞的工程成果,而不是生产支持承诺或承诺
这篇文章对您有帮助吗?
订阅66必读
每日精选科技资讯,直达你的邮箱