Installing Cloud Pak Platform operator

Prerequisites

1. Deploying the Cloud Pak Platform Operator

  1. Create a namespace for the Cloud Pak Platform instance. Note that the Cloud Pak Platform operator will be installed in the common services namespace only.

    Important: In the sections that follow, the namespace is set as ibm-common-services. If you chose a custom namespace for foundational services, use the custom namespace that you created in the operand request and custom resource. Otherwise, you can simply use the ibm-common-services namespace. For more information on custom namespace, see Installing IBM Cloud Pak foundational services in a custom namespace.

  2. Create a operand-request.yaml file with the following definition:

    apiVersion: operator.ibm.com/v1alpha1
    kind: OperandRequest
    metadata:
      name: cpp-operand-request
      namespace: ibm-common-services  # If you chose a custom namespace for foundational services, use the custom namespace
    spec:
      requests:
        - operands:
            - name: ibm-zen-cpp-operator
          registry: common-service
          registryNamespace: ibm-common-services
    
  3. Create the OperandRequest instance.

    oc apply -f operand-request.yaml
    

2. Installing the Cloud Pak Platform instance

  1. Create a custom resource that is appropriate for your cluster environment.

    Note: Currently supported values for storageVendor are nfs, ocs, and portworx.

    If your cluster uses NFS storage, use the following command:

    cat <<EOF |oc apply -f -
    apiVersion: zen.ibm.com/v1
    kind: ZenCPP
    metadata:
      name: zencpp-cr
      namespace: ibm-common-services  # If you chose a custom namespace for foundational services, use the custom namespace
    spec:
      storageClass: RWX-storage-class  # Replace with the name of a RWX storage class, such as managed-nfs-storage
    EOF
    

    If your cluster uses Red Hat OpenShift Container Storage (ocs), use the following command:

    cat <<EOF |oc apply -f -
    apiVersion: zen.ibm.com/v1
    kind: ZenCPP
    metadata:
      name: zencpp-cr
      namespace: ibm-common-services  # If you chose a custom namespace for foundational services, use the custom namespace
    spec:
      storageVendor: ocs
    EOF
    

    If your cluster uses Portworx storage, use the following command:

    cat <<EOF |oc apply -f -
    apiVersion: zen.ibm.com/v1
    kind: ZenCPP
    metadata:
      name: zencpp-cr
      namespace: ibm-common-services  # If you chose a custom namespace for foundational services, use the custom namespace
    spec:
      storageVendor: portworx
    EOF
    

    If your cluster uses IBM Spectrum Scale Container Native storage, use the following command:

    cat <<EOF |oc apply -f -
    apiVersion: zen.ibm.com/v1
    kind: ZenCPP
    metadata:
      name: zencpp-cr
      namespace: ibm-common-services  # If you chose a custom namespace for foundational services, use the custom namespace
    spec:
      storageClass: ibm-spectrum-scale-sc
    EOF
    

    If your cluster uses custom storage classes, use the following command:

    cat <<EOF |oc apply -f -
    apiVersion: zen.ibm.com/v1
    kind: ZenCPP
    metadata:
      name: zencpp-cr
      namespace: ibm-common-services  # If you chose a custom namespace for foundational services, use the custom namespace
    spec:
      storageClass: RWX-storage-class                     # Replace with the name of a RWX storage class
      zenCoreMetadbStorageClass: RWO-storage-class        # Replace with the name of a RWO storage class that points to block storage
    EOF
    

    Important: If your cluster uses storage class names other than those described in Storage options, you must configure metadata storage for {{site.data.keyword.cloud_pak_data_notm}} by specifying a storage class for the zenCoreMetadbStorageClass setting.

  2. Platform UI (zen) will be created in the ibm-common-services namespace. Wait until Platform UI components are up and running. Platform UI is ready when the command returns Completed:

    oc get ZenService lite-cr -n ibm-common-services -o jsonpath="{.status.zenStatus}{'\n'}"
    Completed
    
  3. Verify the status of Cloud Pak Platform after installing. The command should return Completed when installation is complete.

    oc get ZenCPP zencpp-cr -n ibm-common-services -o jsonpath="{.status.controlPlaneStatus}{'\n'}"
    Completed
    

Accessing the Cloud Pak Platform experience

To access the Cloud Pak Platform experience, run the following command:

oc get ZenService lite-cr -n ibm-common-services -o jsonpath="{.status.url}{'\n'}"