Updated at 2018-12-31 00:49

Kubernetes operator is a method of packaging, deploying and managing a Kubernetes application Kubernetes application is both deployed on Kubernetes and managed using the Kubernetes API (kubectl).

Kubernetes operator is a domain specific Kubernetes controller. The term was introduced by the CoreOS people.

All operators use the controller pattern, but no all controller are operators. Operator has controller pattern and adds new objects to Kubernetes API.

Some Example Operators

etcd-operator: Create and manage etcd clusters on Kubernetes. etcd is a distributed key-value store.

prometheus-operator: Create and manage Prometheus clusters on Kubernetes. Prometheus is monitoring and alerting toolkit.

vault-operator: Create and manage Vault clusters on Kubernetes. Vault stores and distributes secrets such as API tokens and other credentials for your application.

rook-operator: Create and manage Rook clusters on Kubernetes. Rook is a distributed blob storage system.