Andrew Mercer
on this page

11.1 Minimums vs. reality

Testing minimum Production recommendation
CPU x86_64 with VT-x/AMD-V, 8 cores 16+ cores per node (VMs need room)
RAM 32 GB 64 GB+ (128–512 GB typical)
Boot/OS disk 250 GB SSD 250–500 GB SSD/NVMe, separate from data
Data disks Can share OS disk in tests Dedicated NVMe/SSD, multiple per node
Network 1 GbE 2× 10/25 GbE bonded; separate mgmt/VM/storage if possible
Nodes 1 (no HA) 3+ (or 2 + witness)

ARM64 support has arrived in recent releases as a technical preview — check the release notes before planning ARM hardware.

11.2 Things that bite

  • Disk performance: HDDs are explicitly not recommended. Longhorn + etcd on spinning rust leads to etcd latency warnings and VM I/O stalls.
  • etcd on the OS disk: the OS disk hosts etcd for control-plane nodes; NVMe here matters more than people expect.
  • RAM headroom: Harvester's own system pods (Rancher, Longhorn, KubeVirt, monitoring) consume a meaningful amount of memory per node — budget ~16–20 GB of overhead on each management node before VMs.
  • Uniformity: mixed CPU generations work, but live migration needs compatible CPU models — use a common CPU model in VM specs or node labelling (host-model ties VMs to similar hosts).
  • NIC naming: install with the final NIC layout; renaming/re-cabling later means editing network configs.
  • BIOS/UEFI: enable virtualization extensions, IOMMU (VT-d/AMD-Vi) for passthrough, and SR-IOV if needed. Disable Secure Boot only if your version doesn't support it.

11.3 Node roles

  • Management (control-plane) nodes: the first three nodes become control plane + etcd automatically. Additional nodes join as workers, and Harvester promotes workers if a management node is lost (configurable).
  • Witness node (since 1.3): runs only etcd to give a 2-node cluster quorum. Cheap hardware is fine, but it must be reliable and low-latency to the others.
  • Worker-only nodes: can be explicitly installed as worker role.
  • Single node: supported for edge/test; no HA, Longhorn replica count must be 1.

← Harvester: overview and architecture · Index · Installing Harvester →