Middle
Main Kubernetes controllers. What are they?
sobes.tech AI
Answer from AI
In Kubernetes, controllers are responsible for maintaining the desired state of the cluster. Main controllers:
- ReplicationController — ensures the specified number of pod copies are running.
- ReplicaSet — a more modern equivalent of ReplicationController, supports label selectors with more complex logic.
- Deployment — manages updates to ReplicaSets, allows rolling updates and rollbacks.
- StatefulSet — for managing stateful applications with pod identity preservation (e.g., databases).
- DaemonSet — guarantees that a copy of a pod is running on each (or selected) node.
- Job — performs tasks that need to be completed (one-time or parallel).
- CronJob — runs a Job on a schedule.
Each controller monitors to ensure that the number and state of pods match what is described in the manifest.