• The  Operator Lifecycle Manager  manages the release and updates of operators and their CRDs. You can think about it as a kind of “operator operator.” • Operator Metering  enables using reporting for operators. 2 This restriction might be lifted in the future, as there are plans for namespace-only registration of CRDs. 3 SIGs (Special Interest Groups) is the way the Kubernetes community organizes feature areas. You can find a list of current SIGs on the Kubernetes GitHub repository. 196  |  Chapter 23: Operator Metacontroller Kubebuilder We won’t go into much detail here about the Operator SDK, which is still evolving, but the Operator Lifecycle Manager (OLM) provides particularly valuable help when using operators. One issue with CRDs is that these resources can be registered only cluster-wide and hence require cluster-admin permissions. 2  While regular Kubernetes users can typically manage all aspects of the namespaces they have granted access to, they can’t just use operators without interaction with a cluster administrator. To streamline this interaction, the OLM is a cluster service running in the back‐ ground under a service account with permissions to install CRDs. A dedicated CRD called ClusterServiceVersion (CSV) is registered along with the OLM and allows us to specify the Deployment of an operator together with references to the CRD defini‐ tions associated with this operator. As soon as we have created such a CSV, one part of the OLM waits for that CRD and all of its dependent CRDs to be registered. If this is the case, the OLM deploys the operator specified in the CSV. Another part of the OLM can be used to register these CRDs on behalf of a nonprivileged user. This approach is an elegant way to allow regular cluster users to install their operators. Kubebuilder  is a project by the SIG API Machinery with comprehensive documenta‐ tion. 3  Like the Operator SDK, it supports scaffolding of Golang projects and the man‐ agement of multiple CRDs within one project. There is a slight difference from the Operator Framework in that Kubebuilder works directly with the Kubernetes API, whereas the Operator SDK adds some extra abstraction on top of the standard API, which makes it easier to use (but lacks some bells and whistles). The support for installing and managing the lifecycle of an operator is not as sophis‐ ticated as the OLM from the Operator Framework. However, both projects have a sig‐ nificant overlap, they might eventually converge in one way or another. Metacontroller is very different from the other two operator building frameworks as it extends Kubernetes with APIs that encapsulate the common parts of writing cus‐