KubeSwift: Kubernetes-Native VM Orchestration on Cloud Hypervisor
KubeSwift defines VMs as Kubernetes CRDs and runs them on Cloud Hypervisor with GPU passthrough, live migration, and OCI image distribution.
KubeSwift lets teams run virtual machines as native Kubernetes workloads. A VM is declared as a custom resource, reconciled by controllers into a pod, and a component called swiftletd launches the actual hypervisor inside that pod. Cloud Hypervisor handles nearly all cases, while QEMU is kept as a temporary fallback only for HGX SXM multi-GPU NVSwitch topologies, since CUDA's full PCIe hierarchy isn't yet supported by Cloud Hypervisor's flat model.
The project ships a broad feature set: disk and kernel boot paths (including sub-second microVMs), full GPU passthrough via VFIO through either a native SwiftGPU model or Kubernetes DRA, tap/bridge/DHCP networking with Multus, SR-IOV and OVN support, exposing guest ports as Kubernetes Services, disk cloning and snapshotting, OCI-registry-based image and full-state migration, live migration with optional mTLS, and ReplicaSet-style VM fleets via SwiftGuestPool. The API surface spans 13 CRDs, complemented by a swiftctl CLI and built-in Prometheus/Grafana observability.
KubeSwift is still pre-1.0, so its v1alpha1 API may change between releases, and it currently requires x86_64 Linux nodes with KVM support. The codebase is released under AGPL-3.0, making it a notable reference point for engineers looking to unify VM and container workloads under a single Kubernetes control plane.