Explore CNCF Sandbox Runtime / Cloud Native Network

Technology Guide

kube-vip

License: Apache-2.0

kube-vip Logo

Field Guide

Complete Guide

kube-vip provides a virtual IP and L4 load balancer for Kubernetes on bare metal, where there is no cloud LB sitting in front of the cluster. It handles two distinct jobs: HA for the control plane (a floating VIP in front of the kube-apiserver) and Service type LoadBalancer implementation for workload traffic.

It runs as a static pod on control plane nodes or a DaemonSet on workers and supports two announcement modes. In ARP/Layer 2 mode, a leader elected via a Kubernetes lease emits gratuitous ARPs for the VIP; on failover the next leader takes over the address, same pattern as keepalived. In BGP mode it peers with your top-of-rack routers (or a route reflector) and announces VIPs as /32 routes, enabling ECMP across nodes and routable failover across L3 boundaries. For Service LoadBalancer it allocates IPs from a configured pool and optionally integrates with kube-vip-cloud-provider to implement the standard LoadBalancer status handshake.

It is the default LB in Kubernetes the Hard Way-style bare-metal installs and in distros like k3s, RKE2, Talos, and Cluster API’s CAPV/CAPBM. The main alternative is MetalLB — kube-vip’s advantage is the combined control-plane VIP + Service LB in one component, whereas MetalLB only handles Services.

CNCF Project

Cloud Native Computing Foundation

Accepted: 2021-06-26

No articles found for kube-vip yet. Check back soon!