×

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 in OpenShift Container Platform 4.11

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.

Additional resources

Bare-metal capability

Purpose

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 OpenShift Container Platform 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 OpenShift Container Platform cluster. The CBO also listens for OpenShift Container Platform 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 BareMetalHost resources in your deployment.

OpenShift samples capability

Purpose

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 Red Hat Enterprise Linux CoreOS (RHCOS)-based OpenShift Container Platform image streams pointing to images on registry.redhat.io. Similarly, the templates are those categorized as OpenShift Container Platform 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.

Marketplace capability

Purpose

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.

Additional resources

Viewing the cluster capabilities

As a cluster administrator, you can view the capabilities by using the clusterversion resource status.

Prerequisites
  • You have installed the OpenShift CLI (oc).

Procedure
  • To view the status of the cluster capabilities, run the following command:

    $ oc get clusterversion version -o jsonpath='{.spec.capabilities}{"\n"}{.status.capabilities}{"\n"}'
    Example output
    {"additionalEnabledCapabilities":["openshift-samples"],"baselineCapabilitySet":"None"}
    {"enabledCapabilities":["openshift-samples"],"knownCapabilities":["baremetal","marketplace","openshift-samples"]}

Enabling the cluster capabilities by setting baseline capability set

As a cluster administrator, you can enable the capabilities by setting baselineCapabilitySet.

Prerequisites
  • You have installed the OpenShift CLI (oc).

Procedure
  • 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.

    Table 1. Cluster capabilities baselineCapabilitySet values description
    Value Description

    vCurrent

    Specify when you want to automatically add new capabilities as they become recommended.

    v4.11

    Specify when you want the capabilities defined in OpenShift Container Platform 4.11 and not automatically enable capabilities, which might be introduced in later versions.

    None

    Specify when the other sets are too large, and you do not need any capabilities or want to fine-tune via additionalEnabledCapabilities.

Enabling the cluster capabilities by setting additional enabled capabilities

As a cluster administrator, you can enable the cluster capabilities by setting additionalEnabledCapabilities.

Prerequisites
  • You have installed the OpenShift CLI (oc).

Procedure
  1. View the additional enabled capabilities by running the following command:

    $ oc get clusterversion version -o jsonpath='{.spec.capabilities.additionalEnabledCapabilities}{"\n"}'
    Example output
    ["openshift-samples"]
  2. 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"}'
Example output
{"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 marketplace capability by the system. Even if a cluster administrator does not explicitly enabled the marketplace capability, it is implicitly enabled by the system.