Scale Kubernetes Service Endpoints 100x
summary
Proposes replacing one giant Endpoints object with many EndpointSlice objects (default ~100 endpoints per slice) and a controller that creates, rebalances and updates slices; object size drops from ~2 MB to ~10 KB, and a cluster example (20k endpoints, 5k nodes) cuts total watch traffic from ~200 TB to under ~100 GB, aiming for 100x scalability. EndpointSlice adds multi-IP support and extensible per-endpoint status; dynamic client-side subsetting is possible later but is deferred for complexity.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 0:51Problem overview
- 3:56How the service works
- 6:20What does it mean
- 9:15Solution
- 15:56Evaluation
- 27:01Questions
- 27:41IPtables updates
- 30:11Recommendations
- 32:08Data Distribution
- 32:34Possible Mitigations
- 41:58Service definition changes
related talks
24mRewiring Cilium: Operator-Driven Scale and Security With CiliumEndpointSlice
27mImproving Network Efficiency with Topology Aware Routing
19mSIG-network: Updates and Future Directions
29mWhy We Ditched Kube-proxy: Scaling 10M Daily Browser Sessions With Kubernetes Endpoi...
50mScale Kubernetes to Manage 60K Nodes Through Architectural Extension
31mSimplifying multi-clusters in Kubernetes using KubeSlice
27mSimplifying Multi-Cluster Networking With Cilium...
28mScale Kubernetes to Support 50,000 Services [I]
