Why keelOS
One machine. Nothing has to stop.
Home servers and small offices run everything on one box: the NAS, the router, a Windows desktop, a few Linux servers. keelOS is built for exactly that box. Each point below was measured on real hardware; the linked articles (in Chinese) have the details.
What happens to the VMs when the host restarts
| System | Storage | VMs during a host restart |
|---|---|---|
| Unraid | Host (its own array) | Shut down and started again |
| TrueNAS SCALE | Host (ZFS) | Shut down and started again |
| Proxmox VE | Host (ZFS) or a NAS VM | Shut down and started again; live migration needs several machines and shared storage |
| Hyper-V on Windows | Host (NTFS/ReFS) | Saved and stopped; Windows Update restarts the host regularly |
| ESXi | A VM | Shut down and started again; live migration needs a cluster and a paid edition |
| keelOS | A NAS VM (disk controller passed through) | Paused for about half a minute, then carry on |
Data centres move VMs to a second machine before a host restart. At home there is no second machine.
Host updates do not stop the VMs
A small hypervisor holds guest memory and vCPU state and stays in memory while the FreeBSD host is upgraded and restarted. Guests pause for 24–26 s with TCP connections intact. 100 host restarts in a row without a failure; 17 VMs resumed together after one restart.
Passthrough that survives the restart
The NAS VM gets the whole disk controller or NVMe drive and sees real disks: SMART, write cache, real errors. The hypervisor owns the IOMMU, so DMA keeps working while the host restarts: 14 restarts under full write load, no timeouts, ZFS scrub with zero errors. SR-IOV VFs for the network.
Windows 11 just installs
A virtual TPM 2.0 and Secure Boot pass the installer's check without registry tricks. BitLocker works, and the TPM state survives host restarts.
Memory that is not wasted
On our development host, 49% of 44 GB of guest memory was zero pages after a day. keelOS reclaims them and lends them to the host as disk cache, and gives them back the moment a guest writes. No overcommit: the memory can always be returned.
Clocks that stay right
A pause is invisible to the guest's clock: after dozens of host restarts FreeBSD and Linux guests are within ±0.4 s. Windows Server 2003 no longer runs 3.6% slow.
From Windows XP to Windows 11
keelOS added IDE, PCnet and UHCI devices and SeaBIOS to bhyve, so XP and Server 2003 install with the drivers they ship with. Nothing to add to the guest.
Your router in a VM
OpenWrt, ImmortalWrt, iStoreOS, OPNsense, pfSense CE, VyOS and RouterOS CHR all run, most with an SR-IOV VF of the network card. keelOS stops the classic mistake of bridging the office LAN into a loop.
ZFS underneath
Each VM is one ZFS dataset tree: configuration, firmware variables and disks snapshot together. Moving a VM to another keelOS host with zfs send is the next step (planned).
An assistant can run it
A built-in MCP server lets an AI assistant report on the host, read a console, and start or create VMs, limited by a scoped token and recorded in the audit log.
Light by design
One image that runs from RAM, one management program with no database, a web interface, command line and HTTPS API. RDP straight to any VM's screen, with nothing installed in the guest.