Hardware
Hardware we run keelOS on
Requirements
- 64-bit Intel CPU with VT-x and EPT; VT-d for passthrough. AMD is not supported yet.
- UEFI boot.
- Memory: 8 GB is enough for a few VMs (tested with 8 GB to 192 GB).
- SR-IOV networking needs a card with SR-IOV (Intel X710 or I350 so far) and a board that enables it.
Branded servers
| Vendor | Model | Board · CPU · memory | What was tested |
|---|---|---|---|
| Supermicro | SYS-6029U-E1CR4T | X11DPU · 2 × Xeon Gold 6144 · 192 GB | Host restarts with 17 VMs running; whole-NVMe passthrough across host restarts under load; SR-IOV VFs of the onboard X710; onboard SATA controller passed through; Windows, Linux, FreeBSD and router guests. |
| Supermicro | SYS-5019P-WTR | X11SPW · Xeon Gold 5122 · 16 GB | Installed from the ISO; 16 GB memory layout; SR-IOV on an Intel I350-T2; both onboard SATA controllers passed through with a disk (ZFS pool, checksums, scrub); Windows XP guest. |
| Lenovo | ThinkStation P340 Tiny | Core i5-10500T · 8 GB | Installed from a USB stick; upgrade from the web page with host restart; VMs on the onboard network port. |
Self-built: board, CPU and cards by chip
CPU
| Model | What was tested |
|---|---|
| Intel Xeon Gold 6144 (Skylake-SP) | Host, VMs, APICv, VT-d |
| Intel Xeon Gold 5122 (Skylake-SP) | Host, VMs, APICv, VT-d |
| Intel Core i5-10500T (Comet Lake) | Host, VMs |
Motherboard
| Model | What was tested |
|---|---|
| Supermicro X11DPU | UEFI boot, BMC with Redfish and serial over LAN |
| Supermicro X11SPW | UEFI boot, install from ISO, BMC |
Network cards
| Model | What was tested |
|---|---|
| Intel X710 / X557-AT (onboard X11DPU) | Host network; SR-IOV VFs to VMs |
| Intel I350-T2 | SR-IOV VFs to VMs (keelOS's own driver), line rate on both ports |
| Intel X722 (onboard X11SPW) | Host network |
| Intel I219 (onboard P340 Tiny) | Management and VM network on one port |
Storage
| Model | What was tested |
|---|---|
| Intel SSD DC P3600 (NVMe) | Passed through whole; the VM keeps writing across host restarts |
| Intel C620 series (Lewisburg) onboard SATA / AHCI | Passed through with disks attached |
| Samsung PM963, PM1725a (NVMe) | Host storage for VM disks |
| Samsung PM961 (NVMe) | Boot disk |
Common hardware we have not tested yet
What we expect from parts many home servers use, and why. If you try one, tell us on GitHub Issues and it moves into the lists above.
| Model | What we expect |
|---|---|
| Intel N100 / N305 (Alder Lake-N) mini PCs | Should run: VT-x, EPT and VT-d. Check that VT-d is enabled in the firmware; many boxes ship with it off. |
| Intel I225 / I226 (2.5 GbE) | Host network: FreeBSD's igc driver is in the image. Can be passed whole to a VM. No SR-IOV on these chips. |
| Realtek RTL8125 (2.5 GbE) | Host network: Realtek's re driver (realtek-re-kmod) is in the image. No SR-IOV. |
| Consumer NVMe drives | Host storage and whole-drive passthrough. The keelOS boot disk needs 512-byte sectors. |
| ASMedia ASM1166, JMicron JMB585 (SATA cards) | Standard AHCI: host storage, or passed through to a NAS VM like the onboard SATA controllers we tested. |
| LSI / Broadcom SAS HBAs (SAS2008, SAS2308, SAS3008) | Passthrough to a NAS VM is the usual setup; FreeBSD's mps and mpr drivers cover them on the host too. |
Next: GPU passthrough of the P340 Tiny's integrated graphics (UHD 630).