This topic provides a glossary of common terms related to the Operator Framework, including Operator Lifecycle Manager (OLM) and the Operator SDK, for both packaging formats: Package Manifest Format and Bundle Format.
In the Bundle Format, a bundle is a collection of an Operator CSV, manifests, and metadata. Together, they form a unique version of an Operator that can be installed onto the cluster.
In the Bundle Format, a bundle image is a container image that is built from Operator manifests and that contains one bundle. Bundle images are stored and distributed by Open Container Initiative (OCI) spec container registries, such as Quay.io or DockerHub.
A CatalogSource is a repository of CSVs, CRDs, and packages that define an application.
In the Package Manifest Format, a catalog image is a containerized datastore that describes a set of Operator metadata and update metadata that can be installed onto a cluster using OLM.
A channel defines a stream of updates for an Operator and is used to roll out
updates for subscribers. The head points to the latest version of that channel.
For example, a
stable channel would have all stable versions of an Operator
arranged from the earliest to the latest.
An Operator can have several channels, and a Subscription binding to a certain channel would only look for updates in that channel.
A ClusterServiceVersion (CSV) is a YAML manifest created from Operator metadata that assists OLM in running the Operator in a cluster. It is the metadata that accompanies an Operator container image, used to populate user interfaces with information such as its logo, description, and version. It is also a source of technical information that is required to run the Operator, like the RBAC rules it requires and which custom resources (CRs) it manages or depends on.
An Operator may have a dependency on another Operator being present in the cluster. For example, the Vault Operator has a dependency on the etcd Operator for its data persistence layer.
OLM resolves dependencies by ensuring that all specified versions of Operators and CRDs are installed on the cluster during the installation phase. This dependency is resolved by finding and installing an Operator in a Catalog that satisfies the required CRD API, and is not related to packages or bundles.
In the Bundle Format, an index image refers to an image of a database (a
database snapshot) that contains information about Operator bundles including
CSVs and CRDs of all versions. This index can host a history of Operators on a
cluster and be maintained by adding or removing Operators using the
An InstallPlan is a calculated list of resources to be created to automatically install or upgrade a CSV.
An OperatorGroup configures all Operators deployed in the same namespace as the OperatorGroup object to watch for their CR in a list of namespaces or cluster-wide.
In the Bundle Format, a package is a directory that encloses all released history of an Operator with each version. A released version of an Operator is described in a ClusterServiceVersion (CSV) manifest alongside the CustomResourceDefinitions (CRDs).
A registry is a database that stores bundle images of Operators, each with all of its latest and historical versions in all channels.