All namespaces 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:
- A single instance of foundational services is shared by all IBM Cloud Paks in the entire cluster
- You want to upgrade all of its core foundational services operators to the cluster-scope namespace
openshift-operators
without creating new instances.
Note: The AllNamespace migration process can be completed by using a script or manual steps.
Prerequisites
- See supported starting versions in Migrating foundational services v3.x to 4.x.
- Only a single instance of foundational services is deployed and shared by all of the IBM Cloud Paks in the entire cluster
- Download the scripts and go to the
installer_scripts
directory. For more information, see Downloading scripts for additional configuration from specific version CASE bundle. - Create new CatalogSource or update existing CatalogSource to the new 4.x version.
- For online migration, reference the required CatalogSource for the corresponding version.
- For offline migration, reference the upgrade steps to mirror images, and apply the new CatalogSource.
Upgrade by using the script
-
Execute the script
migrate_tenant.sh
with the following options:./migrate_tenant.sh --license-accept --enable-licensing \ --operator-namespace openshift-operators \ --cert-manager-source ibm-cert-manager-catalog \ --licensing-source ibm-licensing-catalog \ -c v4.3 -i Automatic \ -s opencloud-operators -v 1
-
After executing the preceding automation script, IBM Cloud Paks should update all OperandRequests in the IBM Cloud Paks namespaces to only request
ibm-im-operator
andibm-platformui-operator
(for example,tenant1-cp4i-capability-1-namespace
andtenant1-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: ibm-common-services
- All remaining operators must be migrated from
ibm-common-services
toopenshift-operators
namespace. - All the services stay in their original
ibm-common-services
and IBM Cloud Paks namespaces. - IBM NamespaceScope operator in
ibm-common-services
and its corresponding custom resources (CR) will be automatically removed after foundational services 4.x.x upgrade is completed.
- All remaining operators must be migrated from
Upgrade by using manual steps
-
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
- Foundational services operator (typically in the
-
Delete the operandRegistry named
common-service
in theibm-common-services
namespace:oc delete operandregistry common-service -n ibm-common-services
-
Migrate and set up a new singleton service for
Licensing
andCert-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
-
-
Switch the channel (and switch the CatalogSource, if necessary) for
ibm-common-service-operator
in theopenshift-operators
namespace. After theibm-common-service-operator
is upgraded to thev4.x
version:-
ODLM is migrated from the
ibm-common-services
toopenshift-operators
namespace. -
IBM Business Teams Service (BTS) and Events operator are migrated from
ibm-common-services
toopenshift-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 creatingOperandRequests
foribm-iam-operator
andibm-zen-operator
.
-
-
Check the status of the CommonService CR and the OperandRequests.
-
To check the status of the CommonService CR in your operator namespace, run the following command and make sure that the status is
Succeeded
:oc get commonservice common-service -n <foundational-service-operator-namespace> -o jsonpath='{.status.phase}'
-
Make sure that all the OperandRequests in IBM Cloud Paks namespace are in
Running
status before you update these OperandRequests in the next step. Run the following command:oc get operandrequest <IBM Cloud Paks-operandrequest-name> -n <IBM Cloud Paks namespace> -o jsonpath='{.status.phase}'
-
-
IBM Cloud Paks should update all OperandRequests in the IBM Cloud Paks namespaces to only request
ibm-im-operator
andibm-platformui-operator
(for example,tenant1-cp4i-capability-1-namespace
andtenant1-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: ibm-common-services
- All remaining operators should be migrated from the
ibm-common-services
toopenshift-operators
namespace- The IBM NamespaceScope operator is 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.
- The IBM NamespaceScope operator is in
- All the services stay in their original
ibm-common-services
and IBM Cloud Paks namespaces.
- All remaining operators should be migrated from the