$ oc get clusterversion version -o jsonpath='{.spec.capabilities}{"\n"}{.status.capabilities}{"\n"}'
Cluster administrators can use cluster capabilities to disable one or more optional components prior to installation. Cluster administrators can enable cluster capabilities at anytime after installation.
Cluster administrators cannot disable a cluster capability after it is enabled. |
Optional cluster capabilities are components that can be disabled during the installation process. Cluster administrators can disable optional cluster capabilities to reduce the resources consumed by a cluster. Currently, cluster Operators provide a cluster capability’s features.
If you want to use the features provided by a disabled cluster capability, you can enable the capability after installation. After a cluster capability is enabled, it cannot be disabled.
The Cluster Baremetal Operator provides the features for the baremetal
capability.
The Cluster Baremetal Operator (CBO) deploys all the components necessary to take a bare-metal server to a fully functioning worker node ready to run OKD compute nodes. The CBO ensures that the metal3 deployment, which consists of the Bare Metal Operator (BMO) and Ironic containers, runs on one of the control plane nodes within the OKD cluster. The CBO also listens for OKD updates to resources that it watches and takes appropriate action.
The bare-metal capability is required for installer provisioned installation (IPI) deployments. Disabling the bare-metal capability can result in unexpected problems with IPI deployments.
It is recommended that cluster adminstrators only disable the bare-metal capability during user-provisioned installations (UPI) that do not have any BareMetalHost
resources in the cluster.
If the bare-metal capability is disabled, the cluster cannot provision or manage bare-metal nodes. Only disable the capability if there are no |
The Cluster Samples Operator provides the features for the openshift-samples
capability.
The Cluster Samples Operator manages the sample image streams and templates stored in the openshift
namespace.
On initial start up, the Operator creates the default samples configuration resource to initiate the creation of the image streams and templates. The configuration object is a cluster scoped object with the key cluster
and type configs.samples
.
The image streams are the Fedora CoreOS (FCOS)-based OKD image streams pointing to images on registry.redhat.io
. Similarly, the templates are those categorized as OKD templates.
If you disable the samples capability, users cannot access the image streams, samples, and templates it provides. Depending on your deployment, you might want to disable this component if you do not need it.
The Marketplace Operator provides the features for the marketplace
capability.
The Marketplace Operator simplifies the process for bringing off-cluster Operators to your cluster by using a set of default Operator Lifecycle Manager (OLM) catalogs on the cluster. When the Marketplace Operator is installed, it creates the openshift-marketplace
namespace. OLM ensures catalog sources installed in the openshift-marketplace
namespace are available for all namespaces on the cluster.
If you disable the marketplace
capability, the Marketplace Operator does not create the openshift-marketplace
namespace. Catalog sources can still be configured and managed on the cluster manually, but OLM depends on the openshift-marketplace
namespace in order to make catalogs available to all namespaces on the cluster. Users with elevated permissions to create namespaces prefixed with openshift-
, such as system or cluster administrators, can manually create the openshift-marketplace
namespace.
If you enable the marketplace
capability, you can enable and disable individual catalogs by configuring the Marketplace Operator.
As a cluster administrator, you can view the capabilities by using the clusterversion
resource status.
You have installed the OpenShift CLI (oc
).
To view the status of the cluster capabilities, run the following command:
$ oc get clusterversion version -o jsonpath='{.spec.capabilities}{"\n"}{.status.capabilities}{"\n"}'
{"additionalEnabledCapabilities":["openshift-samples"],"baselineCapabilitySet":"None"}
{"enabledCapabilities":["openshift-samples"],"knownCapabilities":["baremetal","marketplace","openshift-samples"]}
As a cluster administrator, you can enable the capabilities by setting baselineCapabilitySet
.
You have installed the OpenShift CLI (oc
).
To set the baselineCapabilitySet
, run the following command:
$ oc patch clusterversion version --type merge -p '{"spec":{"capabilities":{"baselineCapabilitySet":"vCurrent"}}}' (1)
1 | For baselineCapabilitySet you can specify vCurrent , v4.11 , or None . |
The following table describes the baselineCapabilitySet
values.
Value | Description |
---|---|
|
Specify when you want to automatically add new capabilities as they become recommended. |
|
Specify when you want the capabilities defined in OKD 4.11 and not automatically enable capabilities, which might be introduced in later versions. |
|
Specify when the other sets are too large, and you do not need any capabilities or want to fine-tune via |
As a cluster administrator, you can enable the cluster capabilities by setting additionalEnabledCapabilities
.
You have installed the OpenShift CLI (oc
).
View the additional enabled capabilities by running the following command:
$ oc get clusterversion version -o jsonpath='{.spec.capabilities.additionalEnabledCapabilities}{"\n"}'
["openshift-samples"]
To set the additionalEnabledCapabilities
, run the following command:
$ oc patch clusterversion/version --type merge -p '{"spec":{"capabilities":{"additionalEnabledCapabilities":["openshift-samples", "marketplace"]}}}'
It is not possible to disable a capability which is already enabled in a cluster. The cluster version Operator (CVO) continues to reconcile the capability which is already enabled in the cluster. |
If you try to disable a capability, then CVO shows the divergent spec:
$ oc get clusterversion version -o jsonpath='{.status.conditions[?(@.type=="ImplicitlyEnabledCapabilities")]}{"\n"}'
{"lastTransitionTime":"2022-07-22T03:14:35Z","message":"The following capabilities could not be disabled: openshift-samples","reason":"CapabilitiesImplicitlyEnabled","status":"True","type":"ImplicitlyEnabledCapabilities"}
During the cluster upgrades, it is possible that a given capability could be implicitly enabled. If a resource was already running on the cluster before the upgrade, then any capabilities that is part of the resource will be enabled. For example, during a cluster upgrade, a resource that is already running on the cluster has been changed to be part of the |