bhyve (and jails) manageability workstream
Documents
bhyve
There is a collection of desired features for bhyve.
As of 2024/06, priorities are
- create course work / tutorial for EuroBSDCon helping showcase bhyve and its capabilities
- Understanding and identifying community needs that could be grouped into a minimum viable product (MVP)
- figuring out a path forward for state supervision and process handling (UCL, vmstated, bmd, etc.)
- redesign of snapshot and restore functionality as precursor to live migration capability; Vitaly G previously planned to look into options for redesign. Needs update.
There is also some additional tooling to help construct better overall bhyve management tooling
mk-epair.sh helper script for managing epairs (useful for vnet jails)
vmstated released as sysutils/vmstated
Documentation Improvements
We managed to land several updates to the Handbook on the topic of bhyve - big thanks to jrm@ for helping!
There are multiple potential areas for improvements. Some non exhaustive collection:
adding some examples in /usr/share/examples/bhyve or /usr/share/doc/bhyve
- updating handbook to include more complex networking examples and wiring things up with and without bridges
- adding an example on how to get a Linux guest started
Snapshot Redesign
There is a mail thread about redesigning the snapshot file format and there have been numerous approaches to implementing live migration; the current consensus as of 2023/11 appears to be that a redesign of the snapshot file format is required first before moving into migration.
Unless file level issues are not fixed, adding migration functionality would only complicate the matter overall. As of 13.2, snapshot functionality is not enabled by default but requires activating an option in kernel configs, adding src.conf options and then recompiling world and kernel.
My tests as of 2024/02 show, that snapshot features do not yet work on and AMD CPU with 13.2-RELEASE. The attempt crashes when vmm tries to dump VHPET data.
There are also multiple limitations
- snapshot / restore only works on identical systems (snapshot source = system on which resume happens)
- only "one of a kind" of emulated hardware may be attached to the guest
- some hardware is not yet supported, i.e. virtio-blk, nvme and others
ID |
Title |
Status |
Created |
Last Update |
Reviewers |
|||||
bhyve - Snapshot Save and Restore multiple devices |
Needs Review, landed in different revision |
Sep 10 2020, 10:21 AM |
Jun 21 2023, 6:15 AM |
jhb |
||||||
Warm Migration feature for bhyve |
Needs Review |
Jan 21 2021, 2:19 PM |
Jun 30 2021, 9:30 AM |
jhb |
||||||
Bhyve - Using JSON format for saving and restoring the state |
Needs Review |
Mar 14 2021, 5:37 PM |
Jun 21 2023, 6:15 AM |
jhb |
||||||
bhyve: Move the gdb_active check to gdb_cpu_suspend(). |
Closed/Accepted |
Apr 1 2021, 4:47 PM |
Apr 4 2021, 8:53 AM |
- |
||||||
Bhyve - Capsicum integration |
Needs Review, landed in different revision |
May 26 2021, 3:48 PM |
Jun 21 2023, 6:15 AM |
jhb |
||||||
Live Migration feature for bhyve |
Needs Review |
Jun 30 2021, 10:31 AM |
Jul 26 2021, 5:45 PM |
jhb |
||||||
bhyve snapshot fix for AMD CPUs |
Closed/Denied |
Dec 14 2021, 9:22 AM |
Jun 30 2022, 11:15 PM |
- |
||||||
bhyve - snapshot capsicum integration[Part 1] |
Needs Review |
Mar 14 2022, 1:41 PM |
Jun 21 2023, 6:15 AM |
rew |
||||||
Warm Migration feature for bhyve [Part 1] |
Closed/Accepted |
Mar 31 2022, 6:36 AM. |
Jun 19 2023, 6:55 AM |
rew, imp, corvink |
||||||
Warm Migration feature for bhyve [Part 2] |
Needs Revision |
Mar 31 2022, 6:47 AM |
Tue, Nov 7, 7:59 PM |
(no:)afedorov, markj, jhb, rew |
||||||
Warm Migration feature for bhyve [Part 3] |
Needs Review, Changes Requested |
Mar 31 2022, 6:50 AM |
Jun 20 2023, 11:42 AM |
afedorov, (no:)gusev dot vitaliy at gmail.com |
||||||
Warm Migration feature for bhyve [Part 4] |
Needs Review |
Mar 31 2022, 6:53 AM |
Jun 23 2023, 5:34 AM |
corvink |
||||||
Warm Migration feature for bhyve [Part 5] |
Needs Review |
Mar 31 2022, 6:56 AM |
Jun 14 2023, 3:29 PM |
corvink |
||||||
Live Migration feature for bhyve [Part 1] |
Needs Review |
Mar 31 2022, 6:57 AM |
Jun 14 2023, 3:30 PM |
corvink |
||||||
Live Migration feature for bhyve [Part 2] |
Needs Review |
Apr 6 2022, 11:52 PM |
Jun 14 2023, 3:30 PM |
corvink |
||||||
Live Migration feature for bhyve [Part 3] |
Abandoned |
Apr 6 2022, 11:53 PM |
May 18 2023, 10:08 PM |
None |