中文日本語

Docs · 1.0

Hardware requirements

Check this page before you install: CPU, firmware settings, memory, disks and network cards. The complete machines and parts we have tested are listed on the hardware compatibility page.

CPU

  • An Intel 64-bit CPU with VT-x. Every virtual machine needs it.
  • VT-d (IOMMU) for passthrough. You need it to hand a graphics card, disk controller or network card to a virtual machine; see Device passthrough.
  • We have tested Xeon Gold 6144, Xeon Gold 5122 (Skylake-SP) and Core i5-10500T (Comet Lake). Newer Intel desktop and server CPUs should generally be fine too.

Note: AMD CPU support has only just begun (from keelos-37d6fbc virtual machines run on SVM; tested on one Ryzen mini PC). Not yet available on AMD: virtual machines staying up while the host restarts, PCIe passthrough and SR-IOV, and integrated graphics. This page will be updated when they are done.

Firmware (BIOS/UEFI) settings

Go into the BIOS setup before installing and check these:

Setting Required Why
Boot mode UEFI only, turn off CSM / Legacy keelOS's ISO and boot disk only boot via UEFI
Secure Boot Off keel's hypervisor is not signed yet
Intel VT-x (Virtualization Technology) On Needed by virtual machines
Intel VT-d On Needed for passthrough; recommended even if you do not use passthrough

Vendors name these differently; they are usually under Advanced → CPU Configuration or Security. If you cannot see the USB stick in the boot menu (F12) of a Lenovo machine, go to Startup → Primary Boot Sequence and check whether it is in the Excluded from boot order list.

Memory

  • The host system itself runs from memory and takes about 0.5 GB; the rest of the memory goes to virtual machines and the ZFS cache.
  • The smallest configuration we have tested is 8 GB (Lenovo P340 Tiny), which runs a few small virtual machines. If you plan to run a Windows or NAS virtual machine, add up the memory each virtual machine needs and leave a few GB for the host and ZFS.
  • If ECC memory on a server reports errors, the Overview page of the web interface warns you; see Troubleshooting.

Disks

  • Boot disk: the disk keelOS is installed on. It starts with a 2 GiB boot partition (holding slots A and B; see Upgrade and restart); the rest of the disk can be used for a storage pool.
  • Storage pool: virtual machine disks, snapshots and ISOs all live in a ZFS storage pool. On a machine with a single disk, the space left on the boot disk is enough; with several disks you can set some aside for a mirror or raidz. See Storage.
  • SATA, NVMe and SAS all work. 4Kn disks (4096-byte sectors) can be used as the boot disk and for pools.
  • If you want to hand whole disks or a whole disk controller to a NAS virtual machine, do not use those disks for a storage pool.

Network cards

keelOS ships drivers for these network cards:

  • Intel: the common gigabit and 10-gigabit cards, including I210, I219, I350, X540, X550, X710 and X722. I350, X540, X550 and X710 support SR-IOV; see Device passthrough.
  • Realtek: the RTL8111/8168 series (using Realtek's own driver).
  • Aquantia / Marvell: AQtion 2.5G, 5G and 10G cards.

During installation the wizard has you pick a port as the management port (the web page, SSH and the API use it). Virtual machines can share a port with the management port, so even a mini PC with a single port works; see Network.

Other

  • Monitor: not required. With a monitor attached you can see the host console and each virtual machine's screen directly on the host; see Console and remote desktop.
  • Remote management: the IPMI / BMC of a server can be used as usual to install remotely and see the screen. For machines without IPMI, use keelOS's keelRM management port.
  • Supermicro X10 boards (X10DRU, X10SRM and so on): the BMC card showing "IPv6: not detected" is intentional. The BMC firmware of this generation (3.94) has a defect: after the host has read its IPv6 settings over in-band IPMI a few hundred times, the IPMI interface inside the host hangs, the hardware page cannot read the sensors, and only restarting the BMC recovers it (the BMC's own web page and network port are not affected). So on X10 boards keelOS neither reads nor changes the BMC's IPv6; if you need IPv6, set it on the BMC's own web page. X11 and newer boards are not affected. If the BMC has already hung, click "Restart BMC..." on the BMC card of the hardware page and choose a cold restart (the host and virtual machines are not affected).
  • USB stick for installing: 1 GB or more is enough; see Installation.