What is an "operator"?
To deploy and maintain software tools, an Engineer needs to possess domain knowledge about intricacies of the tooling itself, infrastructure, architecture and more. Often those manual tasks are repetitive and can be automated. We are enclosing that knowledge into software, an Operator pattern, so that Engineers can focus on complex activities and delegate the tedious work. Operators run control loops that compare the desired and actual state of the system, and carry out the steps needed in order to achieve the desired state.
In the world of Kubernetes, the Operator defines Custom Resources that extend the k8s API and are used to define the desired state. The job of the Operator is to constantly watch for changes, deploy, configure and maintain resources.
Carthago Operator for Jenkins allows to run Jenkins on Kubernetes in its native way.