Disable Copied CSVs to reduce etcd usage

Disable Copied ClusterServiceVersions (CSVs) to reduce etcd storage usage, OLM memory consumption, and network bandwidth in clusters with many namespaces and cluster-wide Operators.

Before you begin

About this task

When an Operator is installed by the Operator Lifecycle Manager (OLM), a stripped-down copy of its ClusterServiceVersion (CSV) is created in every namespace the Operator watches. In clusters with many namespaces and cluster-wide Operators, Copied CSVs increase etcd storage usage, OLM memory consumption, and network bandwidth. Disabling Copied CSVs reduces the data stored in etcd and the memory footprint of OLM.

Procedure

Configure the OLMConfig object to disable Copied CSVs:
apiVersion: operators.coreos.com/v1
kind: OLMConfig
metadata:
  name: cluster
spec:
  features:
    disableCopiedCSVs: true

Results

  • Verify that Copied CSVs are no longer created in user namespaces:
    oc get csv -n <user_namespace>

    The command should return no Copied CSVs for namespaces that do not have their own Operator subscriptions.