~patmaddox

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

bhyve explorations

FreeBSD has a virtualization hypervisor called bhyve. I don't know how to use it. I want to find out.

  • [x] start a guest
  • [x] guest network access out
  • [x] use interface name other than tap0
  • [ ] configure host with UCL
  • [x] mount disk on host, modify before boot
  • [ ] figure out correct rc.conf settings to name an interface
  • [ ] nfs mount guest?
  • [ ] share host file system with guest?
  • [ ] headless / exit out of terminal
  • [ ] EFI boot (bhyveload can have security concerns)
  • [ ] use a zvol backend instead of file

Obstacles

  • still need NAT - I thought I could use a bridge and routing
  • wasn’t able to ping router - probably because router didn’t have a route back to that IP? In which case would need NAT.

Notes

  • wireless needs to NAT

References

Additional:

32 check-ins related to "bhyve"
2023-11-08
17:54
merge bhyve

- use a makefile
- UEFI boot instead of bhyveload
- support rebooting
- support CURRENT check-in: cef3e91bc3 user: patmaddox tags: trunk

17:49
bhyve: UEFI boot instead of using bhyveload Closed-Leaf check-in: 8ce3666331 user: patmaddox tags: bhyve
17:48
bhyve: making the VM does not require an iface, only booting does check-in: 0561e4111d user: patmaddox tags: bhyve
17:48
bhyve: fix defaultrouter in VM check-in: 3cd62905fa user: patmaddox tags: bhyve
17:47
bhyve: do not error when the VM does not yet have an /etc/rc.conf - it will not exist at first check-in: 34cf7600ad user: patmaddox tags: bhyve
17:46
bhyve: support CURRENT check-in: 90c66b0b36 user: patmaddox tags: bhyve
2023-10-26
15:14
bhyve: support rebooting (wish I didn't have to sleep 10 for it to work check-in: 6adee108f7 user: patmaddox tags: bhyve
14:46
bhyve: make command to destroy a vm check-in: 892f7b7438 user: patmaddox tags: bhyve
13:31
bhyve: configure the VM with rc.conf check-in: 7287566c21 user: patmaddox tags: bhyve
13:07
bhyve: build bridge, interface, and vm with a makefile check-in: dc281110d0 user: patmaddox tags: bhyve
05:40
bhyve: configure version when making a new image check-in: 212ef252ec user: patmaddox tags: bhyve
03:12
merge bhyve - much cleaner setup

- name resources after VM
- build new VMs cleanly
- mount VM image to allow file system modification check-in: cf2b10e6ae user: patmaddox tags: trunk

03:09
bhyve: command to mount the image check-in: d8b77405df user: patmaddox tags: bhyve
02:44
bhyve: cleaner new image build check-in: 19d0a35f08 user: patmaddox tags: bhyve
02:17
bhyve: name resources based on vm check-in: b0be0dcb53 user: patmaddox tags: bhyve
02:01
merge bhyve - it's still a bit rough, but a nice MVP check-in: 8d4771ed1b user: patmaddox tags: trunk
02:01
bhyve: configure a new image entirely using built-in freebsd commands

No reason to run the installer. check-in: 628952bb3a user: patmaddox tags: bhyve

2023-10-25
23:42
bhyve: simplify boot script; move file fetching to a Makefile check-in: 91b06cf197 user: patmaddox tags: bhyve
2023-08-06
06:16
bhyve: notes on preparing a new image check-in: d53f527b15 user: patmaddox tags: bhyve
05:26
bhyve: notes on how to modify a VM's zpool check-in: 81f052048c user: patmaddox tags: bhyve
04:46
bhyve: call the bhyve commands directly instead of vmrun.sh

It's still a bit janky in that the installation doesn't complete cleanly.
I get a running VM though. check-in: 00013c422f user: patmaddox tags: bhyve

02:49
bhyve: check for files in install script instead of using Makefile check-in: fe70cf488b user: patmaddox tags: bhyve
01:19
merge bhyve - script to install and boot a bhyve FreeBSD guest check-in: 6582f23b16 user: patmaddox tags: trunk
00:39
bhyve: fix Makefile to fetch files check-in: 8f9a1b2297 user: patmaddox tags: bhyve
2023-05-19
10:19
bhyve: use host-configured bridge network and NAT check-in: 8902c0d156 user: patmaddox tags: bhyve
2023-05-14
04:02
bhyve: use em0 interface for now; this works with the bridge as long as the firewall allows it; wlan0 does not work with DHCP over bridge check-in: a755b61725 user: patmaddox tags: bhyve
04:01
bhyve: clean up & fix ISO fetch check-in: 3cc4040d00 user: patmaddox tags: bhyve
02:34
bhyve: download full installer; (attempt to) configure networking better check-in: 6ddfa796b5 user: patmaddox tags: bhyve
01:54
bhyve: fix device name being passed to guest check-in: 842e95ddd2 user: patmaddox tags: bhyve
00:26
bhyve: script + make to (attempt to) start a guest check-in: 86bd91134c user: patmaddox tags: bhyve
2023-05-13
22:44
bhyve: start a script that just loads `vmm.ko` on demand check-in: cf96a69cb4 user: patmaddox tags: bhyve
2023-05-12
22:48
fossil: `just branch` to make / switch to a branch checkout check-in: 0b669eb036 user: patmaddox tags: trunk