Moving to specific catalog sources for each operator
If you have an online installation from a previous release, and you are using the IBM Operator Catalog, follow these steps to begin using specific catalog sources for each operator. Applying individual catalog sources is the most effective way to fully control software versioning on a cluster.
You must use the CLI for this procedure.
The following procedure moves the installation from the IBM Operator Catalog so that you can use specific catalog sources for each operator. For more details about the advantages of using specific catalog sources, see Adding catalog sources to a cluster.
Add the specific catalog sources for each operator that you need by following the instructions under "Adding specific catalog sources for each operator" in Adding catalog sources to a cluster. Doing so adds multiple catalog sources on the cluster.
To confirm that the previous step completed successfully, run:
oc get catalogsources -n openshift-marketplace
oc get catalogsources -n openshift-marketplace NAME DISPLAY TYPE PUBLISHER AGE appconnect-operator-catalogsource ibm-appconnect-5.0.0-catalog-source grpc IBM 20s ibm-integration-platform-navigator-catalog ibm-integration-platform-navigator-1.7.1-catalog-source grpc IBM 5m31s ibm-operator-catalog IBM Operator Catalog grpc IBM 58m opencloud-operators ibm-cp-common-services-1.15.3-catalog-source grpc IBM 35d
Delete the IBM Operator Catalog source:
oc delete catalogsource ibm-operator-catalog -n openshift-marketplace
The operators that were using the catalog source now change their status to
CatalogSource not found. This behavior is expected.
ibm-common-service-operatorpods in your cluster. Get all the pods by running:
oc get pods -A | grep ibm-common-service-operator
oc get pods -A | grep ibm-common-service-operator openshift-operators ibm-common-service-operator-858c74b844-9fn9h 1/1 Running 0 63d integration ibm-common-service-operator-8851585455-68431 1/1 Running 0 63d ibm-common-services ibm-common-service-operator-4565465554-76472 1/1 Running 0 63d
Now delete the pods:
oc delete pod <pod name 1> <pod name 2> -n <namespace>
Change the configuration of Cloud Pak foundational services so that it uses the specific catalog source rather than the IBM Operator Catalog.
Open the YAML that contains this configuration:
oc edit operandregistry common-service -n ibm-common-services
spec.operatorsarray, change all
opencloud-operators. There are between 10 and 20 fields in which to change this value. For example, this is the original array:
spec: operators: - channel: v3 installPlanApproval: Automatic . . . sourceName: ibm-operator-catalog sourceNamespace: openshift-marketplace
This is the updated array:
spec: operators: - channel: v3 installPlanApproval: Automatic . . . sourceName: opencloud-operators sourceNamespace: openshift-marketplace
Save the changes.
Change the subscriptions of each Cloud Pak for Integration operator which was using the IBM Operator Catalog so that it points at the new specific catalog source for that operator.
First, confirm which subscriptions were using that catalog. Replace
openshift-operatorsor a specific namespace:
oc get subscriptions -n <operators-namespace>
Review the values in the
NAME PACKAGE SOURCE CHANNEL ibm-appconnect ibm-appconnect ibm-operator-catalog v5.0-lts ibm-common-service-operator ibm-common-service-operator opencloud-operators v3 ibm-integration-platform-navigator ibm-integration-platform-navigator ibm-operator-catalog v6.0
Open the editor for the subscription. Replace
<subscription-name>with the a value from the
NAMEcolumn in the previous sub-step, and
openshift-operatorsor a specific namespace:
oc edit subscription <subscription-name> -n <operators-namespace>
oc edit subscription ibm-integration-platform-navigator -n openshift-operators
ibm-operator-catalogto the name of the catalog source created in step 1, for example:
spec: channel: v6.0 installPlanApproval: Automatic name: ibm-integration-platform-navigator source: ibm-operator-catalog --> ibm-integration-platform-navigator-catalog sourceNamespace: openshift-marketplace startingCSV: ibm-integration-platform-navigator.v6.0.1
Save these changes. The operator installation now points at the new catalog source, and the operator status changes back from
CatalogSource not foundto
Repeat these sub-steps for all the Cloud Pak for Integration operators installed in the namespace.
Now that you are move to specific catalog sources, going forward, you will upgrade the operator for each capability independently by first updating the specific catalog source for that operator, and then upgrading the operator subscription. This gives you full control over when to upgrade and what to upgrade.