A Kubernetes controller is a control loop that continuously watches the cluster state and works to move it toward the desired state defined by users. Controllers automate tasks such as scaling, healing, and reconciliation. Also known as K8s controllers, they are core to Kubernetes’ self-managing behavior.
Controllers are what make Kubernetes declarative and self-healing. Without controllers, Kubernetes would not be able to automatically recover from failures, scale workloads, or enforce configuration. They remove the need for constant manual intervention.
A controller watches specific resource types, compares their current state with the desired configuration, and performs corrective actions when differences are detected. This reconciliation loop runs continuously to keep the system in the intended state.
BuildPiper leverages Kubernetes controllers indirectly by building workflows on top of Kubernetes’ reconciliation model. It works with native and custom controllers to orchestrate deployments, environments, and policies in a controlled, observable manner.
Examples include the Deployment controller, ReplicaSet controller, Job controller, and custom controllers built using operators.
Operators are a pattern built on top of controllers. While controllers manage basic resources, operators encode higher-level operational knowledge for complex applications.
BuildPiper integrates with existing Kubernetes controllers and operator patterns rather than replacing them, adding governance, visibility, and orchestration on top.