AllNamespaces migration

The AllNamespaces migration migrates a single shared instance of foundational services that is commonly deployed in the openshift-operators namespace.

This migration method is used in the following situations:

Prerequisites

Upgrade by using manual steps

  1. Scale down the original IBM Cloud Pak foundational services instances.

    • Foundational services operator (typically in the openshift-operators namespace) is in a different namespace as the Operand Deployment Lifecycle Manager (ibm-common-services namespace)
    oc scale deployment ibm-common-service-operator -n openshift-operators --replicas=0
    
  2. Delete the operandRegistry named common-service in the ibm-common-services namespace:

    oc delete operandregistry common-service -n ibm-common-services
    
  3. Migrate and set up a new singleton service for Licensing and Cert-Manager.

    • The new singleton service migration and setup is completed by running the setup_singleton.sh script. For more information on scripts, see Installing IBM Cert Manager and Licensing by script.

    • --operator-namespace is the parameter in the script used to locate the namespace for foundational services 3.x.x singleton service, and it will migrate the singleton service to its corresponding namespace.

    • Other parameters can be customized.

    ./setup_singleton.sh --license-accept --enable-licensing --operator-namespace ibm-common-services
    
  4. Switch the channel (and switch the CatalogSource, if necessary) for ibm-common-service-operator in the openshift-operators namespace. After the ibm-common-service-operator is upgraded to the v4.x version:

    • ODLM is migrated from the ibm-common-services to openshift-operators namespace.

    • IBM Business Teams Service (BTS) and Events operator are migrated from ibm-common-services to openshift-operators namespace (if installed)

    • IAM, Zen, and other dependencies (such as management-ingress, MongoDB, and CommonUI) are working still as-is in ibm-common-services namespace, until the IBM Cloud Paks are upgraded and stop creating OperandRequests for ibm-iam-operator and ibm-zen-operator.

  5. IBM Cloud Paks should update all OperandRequests in the IBM Cloud Paks namespaces to only request ibm-im-operator and ibm-platformui-operator (for example, tenant1-cp4i-capability-1-namespace and tenant1-cp4i-capability-2-namespace).

    apiVersion: operator.ibm.com/v1alpha1
    kind: OperandRequest
    metadata:
      name: common-service
      namespace: tenant1-cp4i-capability-1-namespace
    spec:
      requests:
        - operands:
            - name: ibm-im-operator
            - name: ibm-platformui-operator
          registry: common-service
          registryNamespace: tenant1-cp4ba-cs-namespace
    
    • All remaining operators should be migrated from the ibm-common-services to openshift-operators namespace
      • The IBM NamespaceScope operator will be left in ibm-common-services, but it is not used at all. You can remove the IBM NamespaceScope operator and its corresponding CR after IBM Cloud Paks upgrade is done.
    • All the services stay in their original ibm-common-services and IBM Cloud Paks namespaces.