Back
Infrastructure ·2026 · Completed
HA Kubernetes cluster on Proxmox
Highly available kubeadm cluster, scalable to N nodes, provisioned with Terraform and bootstrapped with a single command.
Terraform clones N Debian machines from a cloud-init template on Proxmox VE and a single script turns them into a production-shaped Kubernetes cluster.
The control plane sits behind a VIP managed by kube-vip in ARP mode: if a node dies another one takes the IP and the cluster keeps answering, with no external load balancer.
On top of it sit the addons that make a bare-metal cluster actually usable: CNI, LoadBalancer, ingress, metrics and replicated storage.
Highlights
- Default topology of 3 control-plane + 2 workers, fully parameterised
- kube-vip for control-plane HA without an external load balancer
- Calico CNI with NetworkPolicies, MetalLB in L2 mode and ingress-nginx
- Longhorn as the default StorageClass, replicated across nodes
- Debian cloud-init template built by the script itself: zero manual steps
Stack
- Terraform
- Proxmox VE
- Kubernetes
- kubeadm
- kube-vip
- Calico
- MetalLB
- ingress-nginx
- Longhorn
- containerd
- cloud-init
Private repository — Code available on request