Beyond the Primary CR: The Design Choice of What and What Not To Watc...
summary
Custom operator example deploys an AI log analyzer that owns a deployment and merely watches security backend pods, and the session shows concrete design rules: use label and field selectors and predicates to limit cache contents and events, or a 1,000-statefulset test (500 labeled) causes a divergence of ~250k extra cached objects and ballooning heap; each added watch spawns ~10 goroutines, GC creates sawtooth drops, leaking client connections causes unbounded goroutine growth, and protection uses validating admission webhooks or CEL policies.
AI-written summary · about
chapters (7)
- 0:00Kubernetes operators intro
- 3:55Custom operator with AI log analyzer
- 7:49Caching and filtering in operators
- 15:49Performance impact of unfiltered watching
- 19:22Go routines and resource management
- 22:06Security for secondary resources
- 25:40Key takeaways
related talks
37mOne Operator To Rule Them All? CRD Management Strategies for Cloud Native Apps!
55mIntroduction to Kubernetes Operators
25mDesign Patterns for Extendable, Scalable K8s Extensions
32mMinimalist Best Practices in Kubernetes Operators
36mEssential Patterns For Designing And Implementing Your Operator
46mOperators Live in the Past: Designing Reliable Kubernetes Controllers
34mReading 100+ Kubernetes Post-Mortems - lessons learned
32mMinimalist Best Practices in Kubernetes Operators
