Hypervisor Cluster
Status: sketch — the dedicated cluster is not implemented. Carried over in raw form from the original C5C3 architecture document. What exists is the node layer: this repository has
NovaCompute,OVNChassisandNeutronMetadataAgent, and the Quick Start (metal-stack) runs them on every worker of the control-plane cluster, beside a containerized libvirt DaemonSet and the upstream openstack-hypervisor-operator and kvm-node-agent. TheirHypervisorCRs belong to the API groupkvm.cloud.sap, not to the sketchedhypervisor.c5c3.io.
The original document plans a dedicated bare-metal Kubernetes cluster for compute virtualization: IronCore provisions the servers and installs GardenLinux, Gardener manages the resulting cluster, and the control plane reaches it through the Nova and Neutron APIs and the OVN southbound database.
In the multi-cluster target picture this cluster is the one labelled OpenStack Compute.
Sketched components
- Hypervisor Operator — watches Kubernetes Nodes and manages
HypervisorCRs (API grouphypervisor.c5c3.io), with controllers for onboarding, maintenance mode, eviction and evacuation, decommissioning, and OpenStack aggregate and trait synchronization. Companion CRDs:Eviction,Migration. - Node agents as DaemonSets on every hypervisor node:
- Hypervisor Node Agent: LibVirt introspection that updates
Hypervisorstatus (versions, capabilities, running instances) and includes the HA agent subscribing to LibVirt domain events. - OVS Agent: Open vSwitch introspection into an
OVSNodeCR (API groupovs.c5c3.io) covering bridges, bonds, flow statistics, and health conditions. - ovn-controller: programs OVS flows from the OVN southbound database.
- Nova Compute Agent: VM lifecycle and resource reporting to Nova.
- Hypervisor Node Agent: LibVirt introspection that updates
- Virtualization layer: LibVirt with a QEMU/KVM or Cloud Hypervisor backend, either provided by the GardenLinux image or deployed as a containerized DaemonSet.
Open questions
A hypervisor cluster is a registered target cluster (Target Clusters). nova-compute runs there as a NovaCompute pool, beside openstack-hypervisor-operator and kvm-node-agent, whose upstream charts CobaltCore runs with images it builds from pinned commits and its own patches. The Nova and Neutron control planes this cluster presumes are onboarded, and the OVN operator projects ovs and ovn-controller onto labelled nodes. What such a cluster reads from the control plane, and what it has to provide in return, is written down in Connect a Compute Cluster. The dedicated bare-metal cluster of the original document, provisioned by IronCore and managed by Gardener, stays a sketch.
The figure shows the node layer as the Quick Start (metal-stack) builds it today: on the workers of the control-plane cluster, without a dedicated compute cluster.