Explore CNCF Incubating App Definition and Development / Application Definition & Image Build

Technology Guide

Operator Framework

License: Apache-2.0

Operator Framework Logo

Field Guide

Complete Guide

The Operator Framework is a toolkit for building, packaging, and distributing Kubernetes Operators — controllers that encode application lifecycle knowledge behind a Custom Resource Definition. It was started by CoreOS (now Red Hat) and is a CNCF incubating project.

It has three main components. The Operator SDK scaffolds new operator projects and supports three flavours: Go operators built on controller-runtime (the same reconciler library used by kubebuilder), Ansible operators that map CR events to playbook runs, and Helm operators that wrap an existing chart so each CR instance becomes a Helm release. The Operator Lifecycle Manager (OLM) is a controller you install into the cluster; it handles installing operators from catalogs, resolving their dependencies, managing subscription channels, and performing upgrades through ClusterServiceVersion and Subscription CRs. OperatorHub.io is the community catalog that OLM consumes by default. Operator authors publish bundle images — OCI artifacts containing CSVs, CRDs, and metadata — and OLM knows how to pull and install them.

Operator Framework shares the controller-runtime foundation with kubebuilder; the two are closely related and the SDK exposes kubebuilder’s scaffolding plus the additional Ansible, Helm, OLM bundle, and scorecard testing tooling. It is Apache-2.0, used heavily inside OpenShift (where OLM is the default app-installation mechanism), and remains the canonical path for distributing a Kubernetes operator through a catalog rather than a raw Helm chart.

CNCF Project

Cloud Native Computing Foundation

Accepted: 2020-07-09
Incubating: 2020-07-09

Community

Join the conversation

No articles found for Operator Framework yet. Check back soon!