Kubernetes runs a group of controllers that take care of routine tasks to ensure the desired state of the cluster matches the observed state. For example, Replica Sets maintains a correct number of pods running in the cluster. Node Controller looks up the state of servers and responds when servers go down. Basically, each controller is responsible for a particular resource in the Kubernetes world.