Self-managing functionality with Kubernetes operators
No discussion of Kubernetes operators would be possible without first discussing the Operator Framework. A common misconception is that operators are specifically built via the Operator Framework. The Operator Framework is an open source framework originally created by Red Hat to make it easy to write Kubernetes operators.
In reality, an operator is simply a custom controller that interfaces with Kubernetes and acts on resources. The Operator Framework is one opinionated way to make Kubernetes operators, but there are many other open source frameworks you can use – or, you can make one from scratch!
When building an operator using frameworks, two of the most popular options are the aforementioned Operator Framework and Kubebuilder.
Both of these projects have a lot in common. They both make use of controller-tools
and controller-runtime
, which are two libraries for building Kubernetes controllers that are officially...