Skip to content

Kubernetes Architecture

The Kubernetes cluster is designed for High Availability and resilience.

Nodes

The lucy, makise, and quinn profiles are specifically dedicated to hosting the baremetal Kubernetes cluster that forms the foundation for OpenStack. The control plane consists of three specific nodes defined in the Hephaestus repository:

NodeProfileIP AddressRole
Lucyprofiles/lucy10.0.0.2Control Plane / Bootstrap Node
Makiseprofiles/makise10.0.0.3Control Plane
Quinnprofiles/quinn10.0.0.4Control Plane

High Availability

API Server VIP

  • Virtual IP: 10.0.0.5
  • Implementation: kube-vip runs as a static pod on all control plane nodes.

Configuration

The kubeadm configuration is pre-generated by NixOS at /etc/kubernetes/kubeadm/bootstrap.yaml.

Key Settings

  • Cluster Name: openstack
  • Kubernetes Version: v1.35.0
  • Pod CIDR: 10.244.0.0/16
  • Service CIDR: 10.96.0.0/20
  • Taints: None (Control plane nodes can schedule workloads).
  • Proxy: kube-proxy is disabled (skip phases), hinting at a replacement CNI like Cilium.

Open source infrastructure documentation