Creating operator subscriptions

An operator subscription tells the cluster where to install a given operator and gives information about the operator to Operator Lifecycle Manager (OLM).

When you create an operator subscription, OLM gets the cluster service version (CSV) for the operator. The CSV describes the operator, and OLM uses the CSV to:
  • Introduce the custom resource definition (CRD) if it doesn't exist
  • Set up the operator's service accounts
  • Start up the operator deployment

For an in-depth description of operators, see the Red Hat® OpenShift®: Operators Framework video from Red Hat.

Before you begin

Best practice: You can run the commands in this task exactly as written if you set up environment variables for your installation. For instructions, see Best practice: Setting up install variables.

Ensure that you run the environment variable script before you run the commands in this task.

Procedure

Complete the following tasks to create the relevant operator subscriptions on your cluster:

1. Creating an operator subscription for the scheduling service

If you don't plan to install the scheduling service, you can skip this step.

Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


Private container registry
  1. Create the following operator subscription.

    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: ibm-cpd-scheduling-catalog-subscription
      namespace: ${PROJECT_CPFS_OPS}
    spec:
      channel: v1.3
      installPlanApproval: ${APPROVAL_TYPE}
      name: ibm-cpd-scheduling-operator
      source: ibm-cpd-scheduling-catalog
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
  2. Validate that the operator was successfully created.
    1. Run the following command to confirm that the subscription was triggered:
      oc get sub -n ${PROJECT_CPFS_OPS} ibm-cpd-scheduling-catalog-subscription \
      -o jsonpath='{.status.installedCSV} {"\n"}'

      Verify that the command returns ibm-cpd-scheduling-operator.v1.3.5.

    2. Run the following command to confirm that the cluster service version (CSV) is ready:
      oc get csv -n ${PROJECT_CPFS_OPS} ibm-cpd-scheduling-operator.v1.3.5 \
      -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

      Verify that the command returns Succeeded : install strategy completed with no errors.

    3. Run the following command to confirm that the operator is ready:
      oc get deployments -n ${PROJECT_CPFS_OPS} -l olm.owner="ibm-cpd-scheduling-operator.v1.3.5" \
      -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

      Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

Remember: If you created the scheduling service operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-scheduling-operator.

IBM Entitled Registry with catalog sources that pull specific versions of images
  1. Create the following operator subscription.

    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: ibm-cpd-scheduling-catalog-subscription
      namespace: ${PROJECT_CPFS_OPS}
    spec:
      channel: v1.3
      installPlanApproval: ${APPROVAL_TYPE}
      name: ibm-cpd-scheduling-operator
      source: ibm-cpd-scheduling-catalog
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
  2. Validate that the operator was successfully created.
    1. Run the following command to confirm that the subscription was triggered:
      oc get sub -n ${PROJECT_CPFS_OPS} ibm-cpd-scheduling-catalog-subscription \
      -o jsonpath='{.status.installedCSV} {"\n"}'

      Verify that the command returns ibm-cpd-scheduling-operator.v1.3.5.

    2. Run the following command to confirm that the cluster service version (CSV) is ready:
      oc get csv -n ${PROJECT_CPFS_OPS} ibm-cpd-scheduling-operator.v1.3.5 \
      -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

      Verify that the command returns Succeeded : install strategy completed with no errors.

    3. Run the following command to confirm that the operator is ready:
      oc get deployments -n ${PROJECT_CPFS_OPS} -l olm.owner="ibm-cpd-scheduling-operator.v1.3.5" \
      -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

      Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

Remember: If you created the scheduling service operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-scheduling-operator.

IBM Entitled Registry with a catalog source for the IBM Operator Catalog
  1. Create the following operator subscription.

    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: ibm-cpd-scheduling-catalog-subscription
      namespace: ${PROJECT_CPFS_OPS}
    spec:
      channel: v1.3
      installPlanApproval: ${APPROVAL_TYPE}
      name: ibm-cpd-scheduling-operator
      source: ibm-operator-catalog
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
  2. Validate that the operator was successfully created.
    1. Run the following command to confirm that the subscription was triggered:
      oc get sub -n ${PROJECT_CPFS_OPS} ibm-cpd-scheduling-catalog-subscription \
      -o jsonpath='{.status.installedCSV} {"\n"}'

      Verify that the command returns ibm-cpd-scheduling-operator.v1.3.5.

    2. Run the following command to confirm that the cluster service version (CSV) is ready:
      oc get csv -n ${PROJECT_CPFS_OPS} ibm-cpd-scheduling-operator.v1.3.5 \
      -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

      Verify that the command returns Succeeded : install strategy completed with no errors.

    3. Run the following command to confirm that the operator is ready:
      oc get deployments -n ${PROJECT_CPFS_OPS} -l olm.owner="ibm-cpd-scheduling-operator.v1.3.5" \
      -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

      Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

Remember: If you created the scheduling service operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-scheduling-operator.

2. Creating an operator subscription for the IBM Cloud Pak for Data platform operator

Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


Private container registry
  1. Create the following operator subscription.
    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: cpd-operator
      namespace: ${PROJECT_CPD_OPS}
    spec:
      channel: v2.0
      installPlanApproval: ${APPROVAL_TYPE}
      name: cpd-platform-operator
      source: cpd-platform
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
  2. Validate that the operator was successfully created.
    1. Run the following command to confirm that the subscription was triggered:
      oc get sub -n ${PROJECT_CPD_OPS} cpd-operator \
      -o jsonpath='{.status.installedCSV} {"\n"}'

      Verify that the command returns cpd-platform-operator.v2.0.8.

    2. Run the following command to confirm that the cluster service version (CSV) is ready:
      oc get csv -n ${PROJECT_CPD_OPS} cpd-platform-operator.v2.0.8 \
      -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

      Verify that the command returns Succeeded : install strategy completed with no errors.

    3. Run the following command to confirm that the operator is ready:
      oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="cpd-platform-operator.v2.0.8" \
      -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

      Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

  3. If you are running a specialized installation (installing the IBM Cloud Pak® for Data platform operator and the IBM Cloud Pak foundational services in separate projects), create an operator subscription for the IBM NamespaceScope Operator in the ${PROJECT_CPD_OPS} project:
    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: ibm-namespace-scope-operator
      namespace: ${PROJECT_CPD_OPS}
    spec:
      channel: v3
      installPlanApproval: ${APPROVAL_TYPE}
      name: ibm-namespace-scope-operator
      source: opencloud-operators
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
Important: If you created the IBM Cloud Pak for Data platform operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
  • cpd-platform-operator
  • ibm-cert-manager-operator *
  • ibm-common-service-operator *
  • ibm-namespace-scope-operator *
  • ibm-zen-operator *
  • operand-deployment-lifecycle-manager *

* An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


IBM Entitled Registry with catalog sources that pull specific versions of images
  1. Create the following operator subscription.
    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: cpd-operator
      namespace: ${PROJECT_CPD_OPS}
    spec:
      channel: v2.0
      installPlanApproval: ${APPROVAL_TYPE}
      name: cpd-platform-operator
      source: cpd-platform
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
  2. Validate that the operator was successfully created.
    1. Run the following command to confirm that the subscription was triggered:
      oc get sub -n ${PROJECT_CPD_OPS} cpd-operator \
      -o jsonpath='{.status.installedCSV} {"\n"}'

      Verify that the command returns cpd-platform-operator.v2.0.8.

    2. Run the following command to confirm that the cluster service version (CSV) is ready:
      oc get csv -n ${PROJECT_CPD_OPS} cpd-platform-operator.v2.0.8 \
      -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

      Verify that the command returns Succeeded : install strategy completed with no errors.

    3. Run the following command to confirm that the operator is ready:
      oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="cpd-platform-operator.v2.0.8" \
      -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

      Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

  3. If you are running a specialized installation (installing the IBM Cloud Pak for Data platform operator and the IBM Cloud Pak foundational services in separate projects), create an operator subscription for the IBM NamespaceScope Operator in the ${PROJECT_CPD_OPS} project:
    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: ibm-namespace-scope-operator
      namespace: ${PROJECT_CPD_OPS}
    spec:
      channel: v3
      installPlanApproval: ${APPROVAL_TYPE}
      name: ibm-namespace-scope-operator
      source: opencloud-operators
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
Important: If you created the IBM Cloud Pak for Data platform operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
  • cpd-platform-operator
  • ibm-cert-manager-operator *
  • ibm-common-service-operator *
  • ibm-namespace-scope-operator *
  • ibm-zen-operator *
  • operand-deployment-lifecycle-manager *

* An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


IBM Entitled Registry with a catalog source for the IBM Operator Catalog
  1. Create the following operator subscription.
    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: cpd-operator
      namespace: ${PROJECT_CPD_OPS}
    spec:
      channel: v2.0
      installPlanApproval: ${APPROVAL_TYPE}
      name: cpd-platform-operator
      source: ibm-operator-catalog
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
  2. Validate that the operator was successfully created.
    1. Run the following command to confirm that the subscription was triggered:
      oc get sub -n ${PROJECT_CPD_OPS} cpd-operator \
      -o jsonpath='{.status.installedCSV} {"\n"}'

      Verify that the command returns cpd-platform-operator.v2.0.8.

    2. Run the following command to confirm that the cluster service version (CSV) is ready:
      oc get csv -n ${PROJECT_CPD_OPS} cpd-platform-operator.v2.0.8 \
      -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

      Verify that the command returns Succeeded : install strategy completed with no errors.

    3. Run the following command to confirm that the operator is ready:
      oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="cpd-platform-operator.v2.0.8" \
      -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

      Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

  3. If you are running a specialized installation (installing the IBM Cloud Pak for Data platform operator and the IBM Cloud Pak foundational services in separate projects), create an operator subscription for the IBM NamespaceScope Operator in the ${PROJECT_CPD_OPS} project:
    cat <<EOF |oc apply -f -
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: ibm-namespace-scope-operator
      namespace: ${PROJECT_CPD_OPS}
    spec:
      channel: v3
      installPlanApproval: ${APPROVAL_TYPE}
      name: ibm-namespace-scope-operator
      source: ibm-operator-catalog
      sourceNamespace: ${PROJECT_CATSRC}
    EOF
Important: If you created the IBM Cloud Pak for Data platform operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
  • cpd-platform-operator
  • ibm-cert-manager-operator *
  • ibm-common-service-operator *
  • ibm-namespace-scope-operator *
  • ibm-zen-operator *
  • operand-deployment-lifecycle-manager *

* An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


3. Enabling services to use namespace scoping with third-party operators

Some services have dependencies on third-party operators, such as open source operators. By default, the service has no control over the namespace scope of these third-party operators.

However, you can enable the csvInjector option in the IBM NamespaceScope Operator to ensure that the required third-party operators use the same namespace scope as the service that requires them. (Setting the csvInjector option enables a service to augment the cluster service version (CSV) of a third-party operator.)

To ensure that the service can update the CSV, you must enable the csvInjector option before you create the operator subscription for the service.

This setting is required for the following services:
  • Data Virtualization
  • Db2® Data Management Console
  • IBM Match 360 with Watson™
  • Watson Assistant
  • Watson Assistant for Voice Interaction
  • Watson Discovery
  • Watson Speech to Text
  • Watson Text to Speech

To update the IBM NamespaceScope Operator, run the appropriate command for your environment:


Express installations
Run the following command to update the IBM NamespaceScope Operator in the ibm-common-services project:
oc patch NamespaceScope common-service \
-n ${PROJECT_CPFS_OPS} \
--type=merge \
--patch='{"spec": {"csvInjector": {"enable": true} } }'

Specialized installations
Important: Ensure that you created the operator subscription for the IBM NamespaceScope Operator in the ${PROJECT_CPD_OPS} project. For details, see 2. Creating an operator subscription for the IBM Cloud Pak for Data platform operator.
  1. Check whether there is already a NamespaceScope object named cpd-operators in the ${PROJECT_CPD_OPS} project:
    oc get NamespaceScope -n ${PROJECT_CPD_OPS}
  2. Complete the appropriate step for your environment:
    The command returns No resources found in the cpd-operators namespace
    Run the following command to create the NamespaceScope object:
    cat <<EOF |oc apply -f -
    apiVersion: operator.ibm.com/v1
    kind: NamespaceScope
    metadata:
      name: cpd-operators
      namespace: ${PROJECT_CPD_OPS} 
    spec:
      csvInjector:                    
        enable: true
      namespaceMembers:
      - ${PROJECT_CPD_OPS}
    EOF
    The command returns information about the NamespaceScope object
    Run the following command to update the NamespaceScope object in the cpd-operators project:
    oc patch NamespaceScope cpd-operators \
    -n ${PROJECT_CPD_OPS} \
    --type=merge \
    --patch='{"spec": {"csvInjector": {"enable": true} } }'

4. Creating an operator subscription for services

Create the operator subscription for each service that you plan to install.

  • Anaconda Repository for IBM Cloud Pak for Data

    Not applicable. For details, see Installing Anaconda Repository for IBM Cloud Pak for Data.

  • Analytics Engine Powered by Apache Spark

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-ae-operator-subscription
          app.kubernetes.io/managed-by: ibm-cpd-ae-operator
          app.kubernetes.io/name: ibm-cpd-ae-operator-subscription
        name: ibm-cpd-ae-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: stable-v1
          installPlanApproval: ${APPROVAL_TYPE}
          name: analyticsengine-operator
          source: ibm-cpd-ae-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-ae-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-ae.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-ae.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-ae.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Analytics Engine Powered by Apache Spark operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for analyticsengine-operator.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-ae-operator-subscription
          app.kubernetes.io/managed-by: ibm-cpd-ae-operator
          app.kubernetes.io/name: ibm-cpd-ae-operator-subscription
        name: ibm-cpd-ae-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: stable-v1
          installPlanApproval: ${APPROVAL_TYPE}
          name: analyticsengine-operator
          source: ibm-cpd-ae-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-ae-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-ae.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-ae.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-ae.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Analytics Engine Powered by Apache Spark operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for analyticsengine-operator.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-ae-operator-subscription
          app.kubernetes.io/managed-by: ibm-cpd-ae-operator
          app.kubernetes.io/name: ibm-cpd-ae-operator-subscription
        name: ibm-cpd-ae-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: stable-v1
          installPlanApproval: ${APPROVAL_TYPE}
          name: analyticsengine-operator
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-ae-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-ae.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-ae.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-ae.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Analytics Engine Powered by Apache Spark operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for analyticsengine-operator.

  • Cognos® Analytics

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-ca-operator-catalog-subscription
        labels:
          app.kubernetes.io/instance: ibm-ca-operator
          app.kubernetes.io/managed-by: ibm-ca-operator
          app.kubernetes.io/name: ibm-ca-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-ca-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-ca-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-ca-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-ca-operator.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-ca-operator.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-ca-operator.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Cognos Analytics operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-ca-operator
    • ibm-cpd-ccs-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-ca-operator-catalog-subscription
        labels:
          app.kubernetes.io/instance: ibm-ca-operator
          app.kubernetes.io/managed-by: ibm-ca-operator
          app.kubernetes.io/name: ibm-ca-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-ca-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-ca-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-ca-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-ca-operator.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-ca-operator.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-ca-operator.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Cognos Analytics operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-ca-operator
    • ibm-cpd-ccs-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-ca-operator-catalog-subscription
        labels:
          app.kubernetes.io/instance: ibm-ca-operator
          app.kubernetes.io/managed-by: ibm-ca-operator
          app.kubernetes.io/name: ibm-ca-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-ca-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-ca-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-ca-operator.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-ca-operator.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-ca-operator.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Cognos Analytics operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-ca-operator
    • ibm-cpd-ccs-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Cognos Dashboards

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cde-operator-subscription
          app.kubernetes.io/managed-by: ibm-cde-operator
          app.kubernetes.io/name: ibm-cde-operator-subscription
        name: ibm-cde-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cde-operator
        source: ibm-cde-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cde-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-cde.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-cde.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-cde.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Cognos Dashboards operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cde-operator
    • ibm-cpd-ccs-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cde-operator-subscription
          app.kubernetes.io/managed-by: ibm-cde-operator
          app.kubernetes.io/name: ibm-cde-operator-subscription
        name: ibm-cde-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cde-operator
        source: ibm-cde-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cde-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-cde.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-cde.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-cde.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Cognos Dashboards operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cde-operator
    • ibm-cpd-ccs-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cde-operator-subscription
          app.kubernetes.io/managed-by: ibm-cde-operator
          app.kubernetes.io/name: ibm-cde-operator-subscription
        name: ibm-cde-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cde-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cde-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-cde.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-cde.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-cde.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Cognos Dashboards operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cde-operator
    • ibm-cpd-ccs-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Data Privacy

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance:  ibm-cpd-dp-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-dp-operator
          app.kubernetes.io/name:  ibm-cpd-dp-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
        name: ibm-cpd-dp-operator-catalog-subscription
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-dp
          source: ibm-cpd-dp-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-dp-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-dp.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-dp.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-dp.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Data Privacy operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • analyticsengine-operator *
    • ibm-cpd-dp

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance:  ibm-cpd-dp-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-dp-operator
          app.kubernetes.io/name:  ibm-cpd-dp-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
        name: ibm-cpd-dp-operator-catalog-subscription
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-dp
          source: ibm-cpd-dp-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-dp-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-dp.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-dp.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-dp.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Data Privacy operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • analyticsengine-operator *
    • ibm-cpd-dp

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance:  ibm-cpd-dp-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-dp-operator
          app.kubernetes.io/name:  ibm-cpd-dp-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
        name: ibm-cpd-dp-operator-catalog-subscription
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-dp
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-dp-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-dp.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-dp.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-dp.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Data Privacy operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • analyticsengine-operator *
    • ibm-cpd-dp

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Data Refinery

    The operator subscription for Data Refinery is automatically created when you create the operator subscription for either Watson Knowledge Catalog or Watson Studio.

  • Data Virtualization

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the Db2U operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2u-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        name: db2u-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2uoperator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2u-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns db2u-operator.v1.1.13.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} db2u-operator.v1.1.13 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="db2u-operator.v1.1.13" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the Data Virtualization operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-dv-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.7
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-dv-operator
        source: ibm-dv-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-dv-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-dv-operator.v1.7.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-dv-operator.v1.7.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-dv-operator.v1.7.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Data Virtualization with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-cpd-ccs-operator *
    • ibm-dmc-operator *
    • ibm-dv-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the Db2U operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2u-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        name: db2u-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2uoperator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2u-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns db2u-operator.v1.1.13.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} db2u-operator.v1.1.13 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="db2u-operator.v1.1.13" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the Data Virtualization operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-dv-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.7
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-dv-operator
        source: ibm-dv-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-dv-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-dv-operator.v1.7.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-dv-operator.v1.7.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-dv-operator.v1.7.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Data Virtualization with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-cpd-ccs-operator *
    • ibm-dmc-operator *
    • ibm-dv-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the Db2U operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2u-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        name: db2u-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2u-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns db2u-operator.v1.1.13.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} db2u-operator.v1.1.13 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="db2u-operator.v1.1.13" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the Data Virtualization operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-dv-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.7
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-dv-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-dv-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-dv-operator.v1.7.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-dv-operator.v1.7.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-dv-operator.v1.7.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Data Virtualization with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-cpd-ccs-operator *
    • ibm-dmc-operator *
    • ibm-dv-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • DataStage®

    The operator subscription is the same for DataStage Enterprise or DataStage Enterprise Plus.

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata: 
        name: ibm-cpd-datastage-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec: 
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE} 
        name: ibm-cpd-datastage-operator
        source: ibm-cpd-datastage-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-datastage-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-datastage-operator.v1.0.7.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-datastage-operator.v1.0.7 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-datastage-operator.v1.0.7" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the DataStage operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datastage-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata: 
        name: ibm-cpd-datastage-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec: 
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE} 
        name: ibm-cpd-datastage-operator
        source: ibm-cpd-datastage-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-datastage-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-datastage-operator.v1.0.7.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-datastage-operator.v1.0.7 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-datastage-operator.v1.0.7" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the DataStage operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datastage-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata: 
        name: ibm-cpd-datastage-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec: 
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE} 
        name: ibm-cpd-datastage-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-datastage-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-datastage-operator.v1.0.7.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-datastage-operator.v1.0.7 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-datastage-operator.v1.0.7" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the DataStage operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datastage-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Db2

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2oltp-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-db2oltp-cp4d-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2oltp-cp4d-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2oltp-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-db2oltp-cp4d-operator.v1.0.10.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-db2oltp-cp4d-operator.v1.0.10 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-db2oltp-cp4d-operator.v1.0.10" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created preceding operators for Db2 with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2oltp-cp4d-operator

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2oltp-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-db2oltp-cp4d-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2oltp-cp4d-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2oltp-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-db2oltp-cp4d-operator.v1.0.10.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-db2oltp-cp4d-operator.v1.0.10 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-db2oltp-cp4d-operator.v1.0.10" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created preceding operators for Db2 with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2oltp-cp4d-operator

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2oltp-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-db2oltp-cp4d-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2oltp-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-db2oltp-cp4d-operator.v1.0.10.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-db2oltp-cp4d-operator.v1.0.10 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-db2oltp-cp4d-operator.v1.0.10" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created preceding operators for Db2 with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2oltp-cp4d-operator

  • Db2 Big SQL

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the Db2U operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2u-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        name: db2u-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2uoperator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2u-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns db2u-operator.v1.1.13.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} db2u-operator.v1.1.13 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="db2u-operator.v1.1.13" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the Db2 Big SQL operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-bigsql-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:   
        channel: v7.2
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-bigsql-operator
        source: ibm-bigsql-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-bigsql-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-bigsql-operator.v7.2.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-bigsql-operator.v7.2.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-bigsql-operator.v7.2.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Db2 Big SQL with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-bigsql-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the Db2U operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2u-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        name: db2u-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2uoperator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2u-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns db2u-operator.v1.1.13.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} db2u-operator.v1.1.13 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="db2u-operator.v1.1.13" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the Db2 Big SQL operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-bigsql-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:   
        channel: v7.2
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-bigsql-operator
        source: ibm-bigsql-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-bigsql-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-bigsql-operator.v7.2.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-bigsql-operator.v7.2.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-bigsql-operator.v7.2.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Db2 Big SQL with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-bigsql-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the Db2U operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2u-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        name: db2u-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2u-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns db2u-operator.v1.1.13.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} db2u-operator.v1.1.13 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="db2u-operator.v1.1.13" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the Db2 Big SQL operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-bigsql-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:   
        channel: v7.2
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-bigsql-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-bigsql-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-bigsql-operator.v7.2.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-bigsql-operator.v7.2.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-bigsql-operator.v7.2.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Db2 Big SQL with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-bigsql-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Db2 Data Gate

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-datagate-operator-subscription
          app.kubernetes.io/managed-by: ibm-datagate-operator
          app.kubernetes.io/name: ibm-datagate-operator-subscription
        name: ibm-datagate-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v2.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-datagate-operator
          source: ibm-datagate-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-datagate-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-datagate-operator.v2.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-datagate-operator.v2.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-datagate-operator.v2.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Db2 Data Gate operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-datagate-operator.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-datagate-operator-subscription
          app.kubernetes.io/managed-by: ibm-datagate-operator
          app.kubernetes.io/name: ibm-datagate-operator-subscription
        name: ibm-datagate-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v2.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-datagate-operator
          source: ibm-datagate-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-datagate-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-datagate-operator.v2.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-datagate-operator.v2.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-datagate-operator.v2.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Db2 Data Gate operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-datagate-operator.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-datagate-operator-subscription
          app.kubernetes.io/managed-by: ibm-datagate-operator
          app.kubernetes.io/name: ibm-datagate-operator-subscription
        name: ibm-datagate-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v2.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-datagate-operator
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-datagate-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-datagate-operator.v2.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-datagate-operator.v2.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-datagate-operator.v2.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Db2 Data Gate operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-datagate-operator.

  • Db2 Data Management Console

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.

    Important: Data Virtualization automatically creates the Db2 Data Management Console operator subscription.
    If you already installed Data Virtualization, run the following command to determine whether the Db2 Data Management Console operator subscription exists:
    oc get sub -n ${PROJECT_CPD_OPS} | grep dmc

    If the command returns ibm-databases-dmc-operator-subscription, do not attempt create the Db2 Data Management Console operator subscription again.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-dmc-operator-subscription 
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-dmc-operator
        source: ibm-dmc-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-dmc-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-databases-dmc.v1.0.7.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-databases-dmc.v1.0.7 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-databases-dmc.v1.0.7" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Db2 Data Management Console operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-dmc-operator
    • ibm-cloud-databases-redis-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-dmc-operator-subscription 
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-dmc-operator
        source: ibm-dmc-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-dmc-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-databases-dmc.v1.0.7.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-databases-dmc.v1.0.7 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-databases-dmc.v1.0.7" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Db2 Data Management Console operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-dmc-operator
    • ibm-cloud-databases-redis-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-dmc-operator-subscription 
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-dmc-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-dmc-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-databases-dmc.v1.0.7.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-databases-dmc.v1.0.7 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-databases-dmc.v1.0.7" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Db2 Data Management Console operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-dmc-operator
    • ibm-cloud-databases-redis-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Db2 Event Store

    Not applicable. Contact IBM Software support if you plan to install this service.

  • Db2 Warehouse

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2wh-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-db2wh-cp4d-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2wh-cp4d-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2wh-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-db2wh-cp4d-operator.v1.0.10.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-db2wh-cp4d-operator.v1.0.10 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-db2wh-cp4d-operator.v1.0.10" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created preceding operators for Db2 Warehouse with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2wh-cp4d-operator

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2wh-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-db2wh-cp4d-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-db2wh-cp4d-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2wh-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-db2wh-cp4d-operator.v1.0.10.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-db2wh-cp4d-operator.v1.0.10 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-db2wh-cp4d-operator.v1.0.10" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created preceding operators for Db2 Warehouse with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2wh-cp4d-operator

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-db2wh-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-db2wh-cp4d-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-db2wh-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-db2wh-cp4d-operator.v1.0.10.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-db2wh-cp4d-operator.v1.0.10 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-db2wh-cp4d-operator.v1.0.10" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created preceding operators for Db2 Warehouse with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2wh-cp4d-operator

  • Decision Optimization

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-dods-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-dods-operator
          app.kubernetes.io/name: ibm-cpd-dods-operator-catalog-subscription
        name: ibm-cpd-dods-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v4.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-dods
          source: ibm-cpd-dods-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-dods-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-dods.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-dods.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-dods.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Decision Optimization operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-dods
    • ibm-cpd-wml-operator *
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-dods-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-dods-operator
          app.kubernetes.io/name: ibm-cpd-dods-operator-catalog-subscription
        name: ibm-cpd-dods-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v4.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-dods
          source: ibm-cpd-dods-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-dods-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-dods.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-dods.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-dods.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Decision Optimization operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-dods
    • ibm-cpd-wml-operator *
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-dods-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-dods-operator
          app.kubernetes.io/name: ibm-cpd-dods-operator-catalog-subscription
        name: ibm-cpd-dods-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v4.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-dods
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-dods-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-dods.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-dods.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-dods.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Decision Optimization operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-dods
    • ibm-cpd-wml-operator *
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • EDB Postgres

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the EDB Postgres operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-edb-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        installPlanApproval: ${APPROVAL_TYPE}
        channel: v4.0
        name: ibm-cpd-edb
        source: ibm-cpd-edb-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-edb-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-edb.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-edb.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-edb.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for EDB Postgres with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-cpd-edb

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the EDB Postgres operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-edb-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        installPlanApproval: ${APPROVAL_TYPE}
        channel: v4.0
        name: ibm-cpd-edb
        source: ibm-cpd-edb-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-edb-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-edb.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-edb.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-edb.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for EDB Postgres with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-cpd-edb

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the EDB Postgres operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-edb-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        installPlanApproval: ${APPROVAL_TYPE}
        channel: v4.0
        name: ibm-cpd-edb
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-edb-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-edb.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-edb.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-edb.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for EDB Postgres with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-cpd-edb

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Execution Engine for Apache Hadoop

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-hadoop-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-hadoop-operator
          app.kubernetes.io/name: ibm-cpd-hadoop-operator-catalog-subscription
        name: ibm-cpd-hadoop-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-hadoop
          source: ibm-cpd-hadoop-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-hadoop-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-hadoop.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-hadoop.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-hadoop.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Execution Engine for Apache Hadoop operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-hadoop
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-hadoop-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-hadoop-operator
          app.kubernetes.io/name: ibm-cpd-hadoop-operator-catalog-subscription
        name: ibm-cpd-hadoop-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-hadoop
          source: ibm-cpd-hadoop-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-hadoop-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-hadoop.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-hadoop.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-hadoop.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Execution Engine for Apache Hadoop operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-hadoop
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-hadoop-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-hadoop-operator
          app.kubernetes.io/name: ibm-cpd-hadoop-operator-catalog-subscription
        name: ibm-cpd-hadoop-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-hadoop
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-hadoop-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-hadoop.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-hadoop.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-hadoop.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Execution Engine for Apache Hadoop operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-hadoop
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Financial Services Workbench

    Not applicable. For details, see the Financial Services Workbench documentation.

  • Guardium® External S-TAP®

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-estap-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-estap
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-estap-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-estap-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-estap.v1.0.0.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-estap.v1.0.0 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-estap.v1.0.0" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Guardium External S-TAP operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-estap-operator.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-estap-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-estap
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-estap-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-estap-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-estap.v1.0.0.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-estap.v1.0.0 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-estap.v1.0.0" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Guardium External S-TAP operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-estap-operator.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-estap-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-estap
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-estap-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-estap.v1.0.0.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-estap.v1.0.0 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-estap.v1.0.0" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Guardium External S-TAP operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-estap-operator.

  • IBM Match 360 with Watson

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-mdm-operator-subscription
          app.kubernetes.io/managed-by: ibm-mdm-operator
          app.kubernetes.io/name: ibm-mdm-operator-subscription
        name: ibm-mdm-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-mdm
        source: ibm-mdm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-mdm-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-mdm.v1.1.278.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-mdm.v1.1.278 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-mdm.v1.1.278" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the IBM Match 360 with Watson operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • fdb-kubernetes-operator *
    • ibm-cloud-databases-redis-operator *
    • ibm-cpd-ccs-operator *
    • ibm-elasticsearch-operator *
    • ibm-mdm
    • ibm-opencontent-foundationdb *
    • ibm-rabbitmq-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-mdm-operator-subscription
          app.kubernetes.io/managed-by: ibm-mdm-operator
          app.kubernetes.io/name: ibm-mdm-operator-subscription
        name: ibm-mdm-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-mdm
        source: ibm-mdm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-mdm-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-mdm.v1.1.278.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-mdm.v1.1.278 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-mdm.v1.1.278" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the IBM Match 360 with Watson operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • fdb-kubernetes-operator *
    • ibm-cloud-databases-redis-operator *
    • ibm-cpd-ccs-operator *
    • ibm-elasticsearch-operator *
    • ibm-mdm
    • ibm-opencontent-foundationdb *
    • ibm-rabbitmq-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-mdm-operator-subscription
          app.kubernetes.io/managed-by: ibm-mdm-operator
          app.kubernetes.io/name: ibm-mdm-operator-subscription
        name: ibm-mdm-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.1
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-mdm
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-mdm-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-mdm.v1.1.278.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-mdm.v1.1.278 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-mdm.v1.1.278" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the IBM Match 360 with Watson operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • fdb-kubernetes-operator *
    • ibm-cloud-databases-redis-operator *
    • ibm-cpd-ccs-operator *
    • ibm-elasticsearch-operator *
    • ibm-mdm
    • ibm-opencontent-foundationdb *
    • ibm-rabbitmq-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Informix®

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription for the install operator.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-informix-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-informix-operator
        source: ibm-informix-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the install operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-informix-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-informix-operator.v4.1.1.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-informix-operator.v4.1.1 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-informix-operator.v4.1.1" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the following operator subscription for the deployment operator.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-informix-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-informix-cp4d-operator
        source: ibm-informix-cp4d-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the deployment operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-informix-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-informix-cp4d-operator.v4.1.1.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-informix-cp4d-operator.v4.1.1 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-informix-cp4d-operator.v4.1.1" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Informix with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-informix-operator
    • ibm-informix-cp4d-operator

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription for the install operator.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-informix-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-informix-operator
        source: ibm-informix-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the install operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-informix-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-informix-operator.v4.1.1.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-informix-operator.v4.1.1 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-informix-operator.v4.1.1" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the following operator subscription for the deployment operator.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-informix-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-informix-cp4d-operator
        source: ibm-informix-cp4d-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the deployment operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-informix-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-informix-cp4d-operator.v4.1.1.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-informix-cp4d-operator.v4.1.1 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-informix-cp4d-operator.v4.1.1" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Informix with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-informix-operator
    • ibm-informix-cp4d-operator

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription for the install operator.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-informix-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-informix-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the install operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-informix-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-informix-operator.v4.1.1.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-informix-operator.v4.1.1 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-informix-operator.v4.1.1" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the following operator subscription for the deployment operator.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-informix-cp4d-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-informix-cp4d-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the deployment operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-informix-cp4d-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-informix-cp4d-operator.v4.1.1.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-informix-cp4d-operator.v4.1.1 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-informix-cp4d-operator.v4.1.1" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Informix with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-informix-operator
    • ibm-informix-cp4d-operator

  • MongoDB

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the MongoDB Enterprise (third-party) operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-mongodb-enterprise-catalog-subscription
        namespace: ${PROJECT_CPD_OPS} 
      spec:
        channel: stable
        name: mongodb-enterprise
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-mongodb-enterprise-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-mongodb-enterprise-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns mongodb-enterprise.v1.15.2.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} mongodb-enterprise.v1.15.2 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="mongodb-enterprise.v1.15.2" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the MongoDB (Cloud Pak for Data) operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-mongodb-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-cpd-mongodb
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-cpd-mongodb-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-mongodb-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-mongodb.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-mongodb.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-mongodb.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for MongoDB with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • mongodb-enterprise
    • ibm-cpd-mongodb

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the MongoDB Enterprise (third-party) operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-mongodb-enterprise-catalog-subscription
        namespace: ${PROJECT_CPD_OPS} 
      spec:
        channel: stable
        name: mongodb-enterprise
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-mongodb-enterprise-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-mongodb-enterprise-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns mongodb-enterprise.v1.15.2.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} mongodb-enterprise.v1.15.2 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="mongodb-enterprise.v1.15.2" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the MongoDB (Cloud Pak for Data) operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-mongodb-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-cpd-mongodb
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-cpd-mongodb-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-mongodb-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-mongodb.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-mongodb.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-mongodb.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for MongoDB with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • mongodb-enterprise
    • ibm-cpd-mongodb

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the MongoDB Enterprise (third-party) operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-mongodb-enterprise-catalog-subscription
        namespace: ${PROJECT_CPD_OPS} 
      spec:
        channel: stable
        name: mongodb-enterprise
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-mongodb-enterprise-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns mongodb-enterprise.v1.15.2.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} mongodb-enterprise.v1.15.2 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="mongodb-enterprise.v1.15.2" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    3. Create the MongoDB (Cloud Pak for Data) operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-mongodb-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-cpd-mongodb
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-mongodb-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-mongodb.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-mongodb.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-mongodb.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for MongoDB with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • mongodb-enterprise
    • ibm-cpd-mongodb

  • Open Data for Industries

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: osdu-ibm-operator
        namespace: ${PROJECT_CPD_OPS}  
      spec:
        channel: v1.0
        name: osdu-ibm-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-osdu-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} osdu-ibm-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns osdu-ibm-operator.v3.0.0.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} osdu-ibm-operator.v3.0.0 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="osdu-ibm-operator.v3.0.0" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Open Data for Industries operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for osdu-ibm-operator.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: osdu-ibm-operator
        namespace: ${PROJECT_CPD_OPS}  
      spec:
        channel: v1.0
        name: osdu-ibm-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-osdu-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} osdu-ibm-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns osdu-ibm-operator.v3.0.0.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} osdu-ibm-operator.v3.0.0 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="osdu-ibm-operator.v3.0.0" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Open Data for Industries operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for osdu-ibm-operator.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: osdu-ibm-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: osdu-ibm-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} osdu-ibm-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns osdu-ibm-operator.v3.0.0.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} osdu-ibm-operator.v3.0.0 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="osdu-ibm-operator.v3.0.0" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Open Data for Industries operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for osdu-ibm-operator.

  • OpenPages®

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-openpages-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-openpages-operator
        source: ibm-cpd-openpages-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-openpages-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-openpages-operator.v8.204.5.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-openpages-operator.v8.204.5 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-openpages-operator.v8.204.5" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the OpenPages operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2aaservice-cp4d-operator *
    • db2u-operator *
    • ibm-cpd-openpages-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-openpages-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-openpages-operator
        source: ibm-cpd-openpages-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-openpages-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-openpages-operator.v8.204.5.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-openpages-operator.v8.204.5 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-openpages-operator.v8.204.5" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the OpenPages operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2aaservice-cp4d-operator *
    • db2u-operator *
    • ibm-cpd-openpages-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-openpages-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-openpages-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-openpages-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-openpages-operator.v8.204.5.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-openpages-operator.v8.204.5 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-openpages-operator.v8.204.5" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the OpenPages operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-db2aaservice-cp4d-operator *
    • db2u-operator *
    • ibm-cpd-openpages-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Planning Analytics

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-planning-analytics-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-planning-analytics-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-planning-analytics-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-planning-analytics-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-planning-analytics-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-planning-analytics-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-planning-analytics-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Planning Analytics operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-planning-analytics-operator.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-planning-analytics-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-planning-analytics-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-planning-analytics-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-planning-analytics-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-planning-analytics-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-planning-analytics-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-planning-analytics-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Planning Analytics operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-planning-analytics-operator.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-planning-analytics-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-planning-analytics-operator
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-planning-analytics-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-planning-analytics-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-planning-analytics-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-planning-analytics-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Planning Analytics operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-planning-analytics-operator.

  • Product Master

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-productmaster-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-cpd-productmaster
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-productmaster-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub --namespace ${PROJECT_CPD_OPS} ibm-productmaster-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-productmaster.v1.0.4.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-productmaster.v1.0.4 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-productmaster.v1.0.4" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Product Master operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-productmaster.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-productmaster-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-cpd-productmaster
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-productmaster-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub --namespace ${PROJECT_CPD_OPS} ibm-productmaster-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-productmaster.v1.0.4.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-productmaster.v1.0.4 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-productmaster.v1.0.4" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Product Master operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-productmaster.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-productmaster-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-cpd-productmaster
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub --namespace ${PROJECT_CPD_OPS} ibm-productmaster-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-productmaster.v1.0.4.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-productmaster.v1.0.4 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-productmaster.v1.0.4" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Product Master operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-productmaster.

  • RStudio® Server with R 3.6

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-rstudio-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-rstudio-operator
          app.kubernetes.io/name: ibm-cpd-rstudio-operator-catalog-subscription
        name: ibm-cpd-rstudio-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-rstudio
          source: ibm-cpd-rstudio-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-rstudio-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-rstudio.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-rstudio.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-rstudio.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the RStudio Server with R 3.6 operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-rstudio

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-rstudio-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-rstudio-operator
          app.kubernetes.io/name: ibm-cpd-rstudio-operator-catalog-subscription
        name: ibm-cpd-rstudio-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-rstudio
          source: ibm-cpd-rstudio-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-rstudio-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-rstudio.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-rstudio.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-rstudio.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the RStudio Server with R 3.6 operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-rstudio

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-rstudio-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-rstudio-operator
          app.kubernetes.io/name: ibm-cpd-rstudio-operator-catalog-subscription
        name: ibm-cpd-rstudio-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-rstudio
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-rstudio-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-rstudio.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-rstudio.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-rstudio.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the RStudio Server with R 3.6 operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-rstudio

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • SPSS® Modeler

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-spss-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-spss-operator
          app.kubernetes.io/name: ibm-cpd-spss-operator-catalog-subscription
        name: ibm-cpd-spss-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-spss
          source: ibm-cpd-spss-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-spss-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-spss.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-spss.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-spss.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the SPSS Modeler operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-spss
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-spss-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-spss-operator
          app.kubernetes.io/name: ibm-cpd-spss-operator-catalog-subscription
        name: ibm-cpd-spss-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-spss
          source: ibm-cpd-spss-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-spss-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-spss.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-spss.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-spss.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the SPSS Modeler operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-spss
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-spss-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-spss-operator
          app.kubernetes.io/name: ibm-cpd-spss-operator-catalog-subscription
        name: ibm-cpd-spss-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-spss
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-spss-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-spss.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-spss.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-spss.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the SPSS Modeler operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-spss
    • ibm-cpd-wsl *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Virtual Data Pipeline

    Not applicable. For details, see Installing Virtual Data Pipeline for Cloud Pak for Data.

  • Voice Gateway

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-voice-gateway-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-voice-gateway-operator
        source: ibm-voice-gateway-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-voice-gateway-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-voice-gateway-operator.v1.0.6.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-voice-gateway-operator.v1.0.6 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-voice-gateway-operator.v1.0.6" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Voice Gateway operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-voice-gateway-operator.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-voice-gateway-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-voice-gateway-operator
        source: ibm-voice-gateway-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-voice-gateway-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-voice-gateway-operator.v1.0.6.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-voice-gateway-operator.v1.0.6 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-voice-gateway-operator.v1.0.6" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Voice Gateway operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-voice-gateway-operator.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-voice-gateway-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.0
        name: ibm-voice-gateway-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-voice-gateway-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-voice-gateway-operator.v1.0.6.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-voice-gateway-operator.v1.0.6 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-voice-gateway-operator.v1.0.6" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Voice Gateway operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-voice-gateway-operator.

  • Watson Assistant

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-assistant-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-assistant-operator
        source: ibm-watson-assistant-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-assistant-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-assistant-operator.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-assistant-operator.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-assistant-operator.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Assistant with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • cp4d-audit-webhook-operator
    • ibm-cert-manager-operator*
    • ibm-cloud-databases-redis-operator *
    • ibm-elasticsearch-operator *
    • ibm-etcd-operator *
    • ibm-events-operator*
    • ibm-licensing-operator*
    • ibm-minio-operator *
    • ibm-model-train-dwf-operator
    • ibm-rabbitmq-operator *
    • ibm-watson-assistant-operator
    • ibm-watson-gateway-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-assistant-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-assistant-operator
        source: ibm-watson-assistant-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-assistant-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-assistant-operator.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-assistant-operator.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-assistant-operator.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Assistant with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • cp4d-audit-webhook-operator
    • ibm-cert-manager-operator*
    • ibm-cloud-databases-redis-operator *
    • ibm-elasticsearch-operator *
    • ibm-etcd-operator *
    • ibm-events-operator*
    • ibm-licensing-operator*
    • ibm-minio-operator *
    • ibm-model-train-dwf-operator
    • ibm-rabbitmq-operator *
    • ibm-watson-assistant-operator
    • ibm-watson-gateway-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-assistant-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-assistant-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-assistant-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-assistant-operator.v4.0.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-assistant-operator.v4.0.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-assistant-operator.v4.0.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Assistant with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • cp4d-audit-webhook-operator
    • ibm-cert-manager-operator*
    • ibm-cloud-databases-redis-operator *
    • ibm-elasticsearch-operator *
    • ibm-etcd-operator *
    • ibm-events-operator*
    • ibm-licensing-operator*
    • ibm-minio-operator *
    • ibm-model-train-dwf-operator
    • ibm-rabbitmq-operator *
    • ibm-watson-assistant-operator
    • ibm-watson-gateway-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Watson Assistant for Voice Interaction

    Watson Assistant for Voice Interaction is comprised of the following services:
    • Voice Gateway
    • Watson Assistant
    • Watson Speech to Text
    • Watson Text to Speech
  • Watson Discovery

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-watson-discovery-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-discovery-operator
          app.kubernetes.io/name: ibm-watson-discovery-operator-subscription
        name: ibm-watson-discovery-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-discovery-operator
        source: ibm-watson-discovery-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-discovery-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-discovery-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-discovery-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-discovery-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Discovery with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-elasticsearch-operator *
    • ibm-etcd-operator *
    • ibm-minio-operator *
    • ibm-model-train-classic-operator
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-discovery-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-watson-discovery-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-discovery-operator
          app.kubernetes.io/name: ibm-watson-discovery-operator-subscription
        name: ibm-watson-discovery-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-discovery-operator
        source: ibm-watson-discovery-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-discovery-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-discovery-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-discovery-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-discovery-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Discovery with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-elasticsearch-operator *
    • ibm-etcd-operator *
    • ibm-minio-operator *
    • ibm-model-train-classic-operator
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-discovery-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-watson-discovery-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-discovery-operator
          app.kubernetes.io/name: ibm-watson-discovery-operator-subscription
        name: ibm-watson-discovery-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-discovery-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-discovery-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-discovery-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-discovery-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-discovery-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Discovery with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-elasticsearch-operator *
    • ibm-etcd-operator *
    • ibm-minio-operator *
    • ibm-model-train-classic-operator
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-discovery-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Watson Knowledge Catalog

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the Watson Knowledge Catalog operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance:  ibm-cpd-wkc-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-wkc-operator
          app.kubernetes.io/name:  ibm-cpd-wkc-operator-catalog-subscription
        name: ibm-cpd-wkc-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-wkc
          source: ibm-cpd-wkc-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wkc-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wkc.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wkc.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wkc.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Knowledge Catalog with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datarefinery-operator
    • ibm-db2aaservice-cp4d-operator *
    • ibm-cpd-iis-operator
    • ibm-cpd-wkc

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the Watson Knowledge Catalog operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance:  ibm-cpd-wkc-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-wkc-operator
          app.kubernetes.io/name:  ibm-cpd-wkc-operator-catalog-subscription
        name: ibm-cpd-wkc-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-wkc
          source: ibm-cpd-wkc-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wkc-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wkc.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wkc.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wkc.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Knowledge Catalog with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datarefinery-operator
    • ibm-db2aaservice-cp4d-operator *
    • ibm-cpd-iis-operator
    • ibm-cpd-wkc

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Specialized installations only. By default, IBM Cloud Pak foundational services expects that the Db2U operator (ibm-db2u-operator) is installed in the ${PROJECT_CPFS_OPS} project. However, if you are using the specialized installation architecture (where the IBM Cloud Pak foundational services operators and Cloud Pak for Data operators are in separate OpenShift projects), you must edit the IBM Cloud Pak foundational services operand registry to point to the project where the Cloud Pak for Data operators are installed:
      1. Run the following command to edit the IBM Cloud Pak foundational services operand registry.
        oc edit operandRegistry common-service \
        --namespace ${PROJECT_CPFS_OPS}
      2. Change the value of the namespace entry for the ibm-db2u-operator. Specify the OpenShift project where the Cloud Pak for Data operators are installed, for example, cpd-operators:
         - channel: v1.1
            installPlanApproval: Automatic
            name: ibm-db2u-operator
            namespace: cpd-operators
            packageName: db2u-operator
            scope: public
            sourceName: ibm-db2uoperator-catalog
            sourceNamespace: openshift-marketplace
      3. Save your changes and exit. For example, if you are using vi, hit esc and enter :wq.
    2. Create the Watson Knowledge Catalog operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance:  ibm-cpd-wkc-operator-catalog-subscription
          app.kubernetes.io/managed-by: ibm-cpd-wkc-operator
          app.kubernetes.io/name:  ibm-cpd-wkc-operator-catalog-subscription
        name: ibm-cpd-wkc-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.0
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-wkc
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    3. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wkc-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wkc.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wkc.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wkc.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Knowledge Catalog with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • db2u-operator *
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datarefinery-operator
    • ibm-db2aaservice-cp4d-operator *
    • ibm-cpd-iis-operator
    • ibm-cpd-wkc

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Watson Knowledge Studio

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-watson-ks-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-ks-operator
          app.kubernetes.io/name: ibm-watson-ks-operator-subscription
        name: ibm-watson-ks-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-ks-operator
        source: ibm-watson-ks-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-ks-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-ks-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-ks-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-ks-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Knowledge Studio with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql
    • ibm-etcd-operator *
    • ibm-minio-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-ks-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-watson-ks-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-ks-operator
          app.kubernetes.io/name: ibm-watson-ks-operator-subscription
        name: ibm-watson-ks-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-ks-operator
        source: ibm-watson-ks-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-ks-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-ks-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-ks-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-ks-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Knowledge Studio with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql
    • ibm-etcd-operator *
    • ibm-minio-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-ks-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-watson-ks-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-ks-operator
          app.kubernetes.io/name: ibm-watson-ks-operator-subscription
        name: ibm-watson-ks-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-ks-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-ks-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-ks-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-ks-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-ks-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for Watson Knowledge Studio with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql
    • ibm-etcd-operator *
    • ibm-minio-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-ks-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Watson Machine Learning

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-wml-operator-subscription
          app.kubernetes.io/managed-by: ibm-cpd-wml-operator
          app.kubernetes.io/name: ibm-cpd-wml-operator-subscription
        name: ibm-cpd-wml-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.1
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-wml-operator
          source: ibm-cpd-wml-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wml-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wml-operator.v1.1.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wml-operator.v1.1.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wml-operator.v1.1.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Watson Machine Learning operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-wml-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-wml-operator-subscription
          app.kubernetes.io/managed-by: ibm-cpd-wml-operator
          app.kubernetes.io/name: ibm-cpd-wml-operator-subscription
        name: ibm-cpd-wml-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.1
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-wml-operator
          source: ibm-cpd-wml-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wml-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wml-operator.v1.1.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wml-operator.v1.1.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wml-operator.v1.1.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Watson Machine Learning operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-wml-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          app.kubernetes.io/instance: ibm-cpd-wml-operator-subscription
          app.kubernetes.io/managed-by: ibm-cpd-wml-operator
          app.kubernetes.io/name: ibm-cpd-wml-operator-subscription
        name: ibm-cpd-wml-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
          channel: v1.1
          installPlanApproval: ${APPROVAL_TYPE}
          name: ibm-cpd-wml-operator
          source: ibm-operator-catalog
          sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wml-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wml-operator.v1.1.8.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wml-operator.v1.1.8 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wml-operator.v1.1.8" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Watson Machine Learning operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-wml-operator *

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Watson Machine Learning Accelerator

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-wml-accelerator-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        name: ibm-cpd-wml-accelerator-operator
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-cpd-wml-accelerator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wml-accelerator-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wml-accelerator.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wml-accelerator.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wml-accelerator.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Watson Machine Learning Accelerator operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-wml-accelerator-operator.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-wml-accelerator-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        name: ibm-cpd-wml-accelerator-operator
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-cpd-wml-accelerator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wml-accelerator-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wml-accelerator.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wml-accelerator.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wml-accelerator.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Watson Machine Learning Accelerator operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-wml-accelerator-operator.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-cpd-wml-accelerator-operator
        namespace: ${PROJECT_CPD_OPS}
      spec:
        name: ibm-cpd-wml-accelerator-operator
        channel: v1.0
        installPlanApproval: ${APPROVAL_TYPE}
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-wml-accelerator-operator \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wml-accelerator.v1.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wml-accelerator.v1.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wml-accelerator.v1.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Watson Machine Learning Accelerator operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-wml-accelerator-operator.

  • Watson OpenScale

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-openscale-operator-subscription
        labels:
          app.kubernetes.io/instance: ibm-watson-openscale-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-openscale-operator
          app.kubernetes.io/name: ibm-watson-openscale-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.5
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-wos
        source: ibm-openscale-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-openscale-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wos.v1.5.4.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wos.v1.5.4 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wos.v1.5.4" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Watson OpenScale operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-wos.

    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-openscale-operator-subscription
        labels:
          app.kubernetes.io/instance: ibm-watson-openscale-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-openscale-operator
          app.kubernetes.io/name: ibm-watson-openscale-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.5
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-wos
        source: ibm-openscale-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-openscale-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wos.v1.5.4.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wos.v1.5.4 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wos.v1.5.4" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Watson OpenScale operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-wos.

    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-openscale-operator-subscription
        labels:
          app.kubernetes.io/instance: ibm-watson-openscale-operator-subscription
          app.kubernetes.io/managed-by: ibm-watson-openscale-operator
          app.kubernetes.io/name: ibm-watson-openscale-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v1.5
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-wos
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-openscale-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wos.v1.5.4.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wos.v1.5.4 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wos.v1.5.4" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Remember: If you created the Watson OpenScale operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve the update request for ibm-cpd-wos.

  • Watson Speech to Text

    Important: The same operator subscription is used for Watson Speech to Text and Watson Text to Speech. If you plan to install both services, you only need to create the subscription once.

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-speech-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-speech-operator
        source: ibm-watson-speech-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-speech-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-speech-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for the Watson Speech services with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-minio-operator *
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-speech-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-speech-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-speech-operator
        source: ibm-watson-speech-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-speech-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-speech-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for the Watson Speech services with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-minio-operator *
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-speech-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-speech-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-speech-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-speech-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-speech-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for the Watson Speech services with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-minio-operator *
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-speech-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Watson Studio

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        annotations:
        name: ibm-cpd-ws-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v2.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-wsl
        source: ibm-cpd-ws-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-ws-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wsl.v2.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wsl.v2.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wsl.v2.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Watson Studio operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datarefinery-operator *
    • ibm-cpd-wsl *
    • ibm-cpd-ws-runtimes

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        annotations:
        name: ibm-cpd-ws-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v2.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-wsl
        source: ibm-cpd-ws-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-ws-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wsl.v2.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wsl.v2.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wsl.v2.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Watson Studio operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datarefinery-operator *
    • ibm-cpd-wsl *
    • ibm-cpd-ws-runtimes

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        annotations:
        name: ibm-cpd-ws-operator-catalog-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v2.0
        installPlanApproval: ${APPROVAL_TYPE}
        name: ibm-cpd-wsl
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
      EOF
    2. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-cpd-ws-operator-catalog-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-cpd-wsl.v2.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-cpd-wsl.v2.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-cpd-wsl.v2.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the Watson Studio operator with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • ibm-cpd-ccs-operator *
    • ibm-cpd-datarefinery-operator *
    • ibm-cpd-wsl *
    • ibm-cpd-ws-runtimes

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


  • Watson Studio Runtimes

    The operator subscription for Watson Studio Runtimes is automatically created when you create the operator subscription for Watson Studio.

  • Watson Text to Speech

    Important: The same operator subscription is used for Watson Speech to Text and Watson Text to Speech. If you plan to install both services, you only need to create the subscription once.

    Create the appropriate operator subscription for your environment. The catalog that the operator subscription points to depends on the type of catalog source that you created and the location from which the cluster pulls images.


    Private container registry
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-speech-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-speech-operator
        source: ibm-watson-speech-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-speech-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-speech-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for the Watson Speech services with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-minio-operator *
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-speech-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with catalog sources that pull specific versions of images
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-speech-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-speech-operator
        source: ibm-watson-speech-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-speech-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-speech-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for the Watson Speech services with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-minio-operator *
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-speech-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.


    IBM Entitled Registry with a catalog source for the IBM Operator Catalog
    1. Submit the following operand request to install the Cloud Native PostgreSQL operator in the ${PROJECT_CPFS_OPS} project.
      Important: If you installed the Cloud Native PostgreSQL operator as a cluster-scoped operator for use outside of Cloud Pak for Data, you can skip this step.
      cat <<EOF |oc apply -f -
      apiVersion: operator.ibm.com/v1alpha1
      kind: OperandRequest
      metadata:
        name: common-service-edb
        namespace: ${PROJECT_CPFS_OPS}
      spec:
        requests:
          - operands:
              - name: cloud-native-postgresql
            registry: common-service
      EOF
    2. Validate that the operator was successfully installed.
      1. Run the following command to confirm that the operand request was created:
        oc get opreq common-service-edb -n ${PROJECT_CPFS_OPS} \
        -o jsonpath='{.status.phase}  {"\n"}'

        Verify that the command returns Running. If the command returns Initialized or Installing, wait several minutes and run the command again.

      2. Run the following command to confirm that the operator is installed:
        oc get pod -n ${PROJECT_CPFS_OPS} -l app.kubernetes.io/name=cloud-native-postgresql \
        -o jsonpath='{.items[0].status.phase} {"\n"}'

        Verify that the command returns Running.

    3. Create the following operator subscription.
      cat <<EOF |oc apply -f -
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: ibm-watson-speech-operator-subscription
        namespace: ${PROJECT_CPD_OPS}
      spec:
        channel: v4.0
        name: ibm-watson-speech-operator
        source: ibm-operator-catalog
        sourceNamespace: ${PROJECT_CATSRC}
        installPlanApproval: ${APPROVAL_TYPE}
      EOF
    4. Validate that the operator was successfully created.
      1. Run the following command to confirm that the subscription was triggered:
        oc get sub -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator-subscription \
        -o jsonpath='{.status.installedCSV} {"\n"}'

        Verify that the command returns ibm-watson-speech-operator.v4.0.9.

      2. Run the following command to confirm that the cluster service version (CSV) is ready:
        oc get csv -n ${PROJECT_CPD_OPS} ibm-watson-speech-operator.v4.0.9 \
        -o jsonpath='{ .status.phase } : { .status.message} {"\n"}'

        Verify that the command returns Succeeded : install strategy completed with no errors.

      3. Run the following command to confirm that the operator is ready:
        oc get deployments -n ${PROJECT_CPD_OPS} -l olm.owner="ibm-watson-speech-operator.v4.0.9" \
        -o jsonpath="{.items[0].status.availableReplicas} {'\n'}"

        Verify that the command returns an integer greater than or equal to 1. If the command returns 0, wait for the deployment to become available.

    Important: If you created the preceding operators for the Watson Speech services with the manual install plan (installPlanApproval: Manual), a cluster administrator must approve any pending update requests for the following operators:
    • cloud-native-postgresql *
    • ibm-minio-operator *
    • ibm-rabbitmq-operator *
    • ibm-watson-gateway-operator *
    • ibm-watson-speech-operator

    * An asterisk indicates that the operator is used by multiple services. If you do not see an update request for this operator, it might have been approved as part of the approval for another service.