1. Kubernetes Official Documentation
"Controllers": In the "Controller pattern" section
it states
"In Kubernetes
controllers are control loops that watch the state of your cluster
then make or request changes where needed. Each controller tries to move the current cluster state closer to the desired state." This directly identifies controllers as the component that watches and reconciles state.
Source: https://kubernetes.io/docs/concepts/architecture/controller/
2. Kubernetes Official Documentation
"Kubernetes Components": The description of the kube-controller-manager explains that it runs controller processes. It notes
"Logically
each controller is a separate process
but to reduce complexity
they are all compiled into a single binary and run in a single process." This confirms that the controller entity is responsible for these loops.
Source: https://kubernetes.io/docs/concepts/overview/components/#kube-controller-manager
3. University of California
Berkeley
EECS Courseware (CS 194): Lecture slides on "Kubernetes Architecture" describe the role of controllers: "Controller: Watches for changes in desired state via API server
and tries to move current state towards desired state." This academic source corroborates the function of controllers in the reconciliation loop.
Source: CS 194-26: Cloud Computing
Lecture 10: Kubernetes Architecture
Slide 21. (e.g.
https://inst.eecs.berkeley.edu/~cs194-26/fa21/lectures/lec10-k8s-arch.pdf)