Supporting Long-Lived Pods Using a Simple Kubernetes Webhook
summary
A lightweight Go admission webhook (simple-kubernetes-webhook) injects tolerations for a per-pod lifespan remaining value (user-set up to seven days) and a small node agent taints nodes with days-of-life-left (14‑day model). Cluster autoscaling is adjusted with flags to cluster-autoscaler so new nodes aren’t blocked, and a chaos/rotation tool skips nodes hosting pods whose minimum lifespan isn’t met. Deployed across clusters, the system works for about half a dozen services but lacks production telemetry and still leaves some legacy webhook features unported.
AI-written summary · about
chapters (8)
- 0:00Start
- 0:10Supporting Long-Lived Pods
- 3:28The Problem Long Lived Pods
- 6:55The Solution Minimum Pod Lifespan
- 8:41Node Taint Service
- 15:29Service Config to Pod Tolerations
- 17:26Simple Admission Webhook
- 21:01Min Lifespan not Max Lifespan
related talks
36mHow to make pod assignment to thousands of nodes every day easier
35mAdmission Webhooks: Configuration and Debugging Best Practices
01h 01mKubernetes – going beyond the basics
34mWhere's My Pod, Already? A Tale of Cold-Start Struggles on Kubernetes
21mHow to Not Destroy Your Production Kubernetes Clusters
27mPragmatic Pod Patterns: Leveraging sidecar containers in Kubernetes
40mThe Positive Side of Pending Pods: A Toolkit for App Lifecycle
38mNode Lifecycle WorkingGroup - Getting Started
