Skip to content

Platform prerequisites

Install these before virtfoundry-operator and virtfoundry. VirtFoundry does not bundle hypervisor or CNI operators — pin versions to match your Kubernetes distro.

Recommended order: Kubernetes → storage → KubeVirt → Multus → CDI → (optional) MetalLB / snapshot CRDs → virtfoundry-operator → virtfoundry.

Required

Component Docs Verify
Kubernetes 1.28+ kubernetes.io/docs/setup kubectl version
KubeVirt Quickstart · User guide kubectl get pods -n kubevirt · kubectl get crd virtualmachines.kubevirt.io
Multus CNI Installation · How to use kubectl get pods -n kube-system -l app=multus · kubectl get crd network-attachment-definitions.k8s.cni.cncf.io
CDI (ISO/import templates) Installing CDI · KubeVirt lab kubectl get pods -n cdi · kubectl get crd datavolumes.cdi.kubevirt.io
StorageClass (Longhorn recommended) Longhorn install kubectl get sc
virtfoundry-operator Installation kubectl get crd tenants.virtfoundry.io
Component Docs When
CSI external-snapshotter Installation Volume snapshots (Longhorn includes snapshot class)
MetalLB Installation Bare-metal LoadBalancer Services / tenant L4 VIPs
Ingress or Gateway API Ingress-NGINX · Gateway API guides Expose UI + API on a hostname

Not used

VirtFoundry does not require MySQL, Vitess, or an async worker. Platform state is stored in virtfoundry.io CRDs (store.driver=kubernetes).

Laptop / CI

Path Guide
Kind (no VLAN) Kind
Under 30 min Quickstart
Production-style homelab Topologies

Upstream version pins (reference)

Check upstream release notes before upgrading. Homelab has been validated with:

  • Kubernetes 1.28+
  • KubeVirt 1.4.x / 1.5.x
  • Multus 4.x (thin plugin deployment)
  • CDI 1.61+
  • Longhorn 1.6+

After prerequisites are green, continue with Installation.