MetalLB on Hetzner Dedicated with vSwitch
 · 4 min read
When running Kubernetes on Hetzner Dedicated, there is no cloud load balancer. But you can provide public LoadBalancer IPs by attaching a routed IP range to a vSwitch and letting MetalLB announce addresses over L2.
Our setup:
- Calico (VXLAN + WireGuard)
- kube-proxy IPVS with strictARP
- ingress-nginx for ingress traffic