Cloud Native Load Balancing From Scratch
summary
Builds a working L4 balancer with plain Bash, using ipvs net/direct/tunnel modes plus dummy interfaces and ipip encapsulation to move beyond L2, and runs GoBGP to advertise a VIP for GoBGP+ECMP across two balancer instances. Implements nodePort/clusterIP behavior, health checks that add/remove backends, and shows direct-server-return to avoid hairpinning. Demo runs ~1k curl requests, survives VM shutdowns with no client disruption, and the repo contains the scripts to reproduce the setup.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 0:30Overview
- 4:22Importance
- 5:36Lifecycle Package
- 6:25Client Side
- 8:35Middleware
- 12:26Kubernetes
- 13:49L4 Load Balancing
- 14:27ipvs
- 15:22demo
- 19:41direct routing
- 22:42tunnel mode
related talks
33mCloud Native Load Balancing From Scratch
18mDeveloping a Custom Load Balancer to serve traffic at scale
24mCloud Native Promises, On-Premises: Bump Your Load Balancing To V2 With Cilium
27mExtending Kubernetes - Lessons Learned From an L4 Ingress Implementation
37mBuilding the Multi-Cluster L7 Load Balancer
23mDemystifying Load Balancing in Istio
30mKeeping the Balance: Internet-Scale Loadbalancing Demystified
23mBuilding Unified Global Load Balancing for the Edge With k8gb
