Extending Kubernetes: CRDs, Controllers and the Operator Pattern, ownerReferences and Finalizers
Extending Kubernetes means defining a new resource type with a CRD and letting a controller that watches it keep turning desired state into reality. With real output: a Campaign CRD for Bookstore, CEL validation, garbage collection via ownerReferences, a controller written in .NET with KubernetesClient, the safe fix for a namespace stuck in Terminating because of a finalizer, and the orphaned resource a forced finalizer removal leaves behind.
15 Nov 2026
·
14 min
·
7