Migrating from the IBM Operator Catalog

Starting with Refresh 3 of Version 4.0, it is strongly recommended that you create catalog sources that pull specific versions of images from the IBM® Entitled Registry rather than using the IBM Operator Catalog. You can migrate your existing installation from the IBM Operator Catalog if you decide to implement this recommendation. After you migrate your existing installation, you can remove all references to the IBM Operator Catalog from your cluster to ensure that your cluster uses the correct images.

Remember: Using the IBM Operator Catalog is not recommended in environments where predictability and stability are important, such as production environments. The IBM Operator Catalog is recommended only for short-term installations, such as proof-of-concept deployments.
Permissions you need for this task
You must be a cluster administrator.
When you need to complete this task
Complete this task only if the following statements are true:

Procedure

1. Get the list of catalog sources

Remember: You must complete Updating catalog sources that pull specific versions of images from the IBM Entitled Registry (Upgrading from Version 4.0.x) before you migrate from the IBM Operator Catalog.

If you do not complete this prerequisite task, the list of catalog sources will be incomplete.

When you created catalog sources that pull specific versions of images from the IBM Entitled Registry, the command created all of the catalogs that are needed for each service to run.

  1. Run the following command to get a list of all of the catalog sources in the openshift-marketplace project:
    oc get catsrc --namespace openshift-marketplace
  2. Save the output to a file that you can refer to in subsequent steps.

2. Updating operator subscriptions

You must update your existing operator subscriptions to replace references to the ibm-operator-catalog with the appropriate catalog names.

  1. Run the following command to determine the list of operators that you need to update:
    Express installations

    With this installation architecture, all of the operators are in a single project, typically the ibm-common-services project.

    Run the following command to list the operators that are installed in the ibm-common-services project:

    oc get subscriptions --namespace ibm-common-services

    Specialized installations

    With this installation architecture, the Cloud Pak for Data operators and the IBM Cloud Pak® foundational services operators are installed in separate projects.

    Typically, the IBM Cloud Pak foundational services are installed in the ibm-common-services project and the Cloud Pak for Data operators are installed in the cpd-operators project.

    1. Run the following command to get a list of the operators that are installed in the ibm-common-services project:
      oc get subscriptions --namespace ibm-common-services
    2. Run the following command to get a list of the operators that are installed in the cpd-operators project:
      oc get subscriptions --namespace cpd-operators

  2. For each IBM Cloud Pak foundational services operator, update the operator subscription to use the correct catalog source name from 1. Get the list of catalog sources.

    Follow the guidance in Installing IBM Cloud Pak foundational services. Ensure that you use the command that is listed under IBM Entitled Registry with catalog sources that pull specific versions of images.

  3. For each Cloud Pak for Data, update the operator subscription to use the correct catalog source name from 1. Get the list of catalog sources.

    Follow the guidance in Creating operator subscriptions. Ensure that you use the command that is listed under IBM Entitled Registry with catalog sources that pull specific versions of images.

    Important: Creating operator subscriptions does not include information on how to update all dependencies. If you have other IBM operators in your environment that aren't listed in Creating operator subscriptions, contact IBM Software Support if you need assistance updating the subscriptions to point to the correct catalog.

3. Updating operand registries

You must update your existing operand registries to replace references to the ibm-operator-catalog with the appropriate catalog names.

  1. Run the following command to determine the location of all of the operand registries on the cluster:
    oc get operandRegistry -A
    The command returns output with the following format:
    Express installations
    NAMESPACE             NAME                            AGE   PHASE     CREATED AT
    ibm-common-services   common-service                  37d   Running   2021-10-15T05:17:36Z
    ibm-common-services   ibm-cpd-ccs-registry            29d   Running   2021-10-23T16:25:06Z
    ibm-common-services   ibm-cpd-datarefinery-registry   28d   Running   2021-10-24T00:35:59Z
    ibm-common-services   ibm-cpd-ws-runtimes-registry    28d   Running   2021-10-24T00:46:30Z

    Specialized installations
    NAMESPACE             NAME                            AGE   PHASE     CREATED AT
    ibm-common-services   common-service                  37d   Running   2021-10-15T05:17:36Z
    cpd-operators         ibm-cpd-ccs-registry            29d   Running   2021-10-23T16:25:06Z
    cpd-operators         ibm-cpd-datarefinery-registry   28d   Running   2021-10-24T00:35:59Z
    cpd-operators         ibm-cpd-ws-runtimes-registry    28d   Running   2021-10-24T00:46:30Z

  2. Run the appropriate commands based on your environment:
    Express installations
    1. Edit the operand registries in the ibm-common-services project:
      oc edit operandRegistry -n ibm-common-services
    2. Search for instances of sourceName: ibm-operator-catalog and replace each instance with the appropriate catalog name based on the information from 1. Get the list of catalog sources.

      If you are unsure of which catalog to use, contact IBM Software Support.

    3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.

    Specialized installations
    1. Edit the operand registries in the ibm-common-services project:
      oc edit operandRegistry -n ibm-common-services
    2. Search for instances of sourceName: ibm-operator-catalog and replace each instance with the appropriate catalog name based on the information from 1. Get the list of catalog sources.

      If you are unsure of which catalog to use, contact IBM Software Support.

    3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    4. Edit the operand registries in the cpd-operators project:
      oc edit operandRegistry -n cpd-operators
    5. Search for instances of sourceName: ibm-operator-catalog and replace each instance with the appropriate catalog name based on the information from 1. Get the list of catalog sources.

      If you are unsure of which catalog to use, contact IBM Software Support.

    6. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.

4. Validating your changes

Before you remove the IBM Operator Catalog, ensure that there are no references to the IBM Operator Catalog in your operator subscriptions.

  1. Run the following command to get a list of all of the operator subscriptions on the cluster:
    oc get subscriptions -A
  2. Review the output to confirm that there are no references to the ibm-operator-catalog in the SOURCE column.

5. Removing the IBM Operator Catalog

After you validate that the changes were successful, you can remove the IBM Operator Catalog by deleting the catalog source.

Run the following command to remove the catalog source for the IBM Operator Catalog:

oc delete catsrc -n openshift-marketplace ibm-operator-catalog