Installation of Cloud Pak for Integration

Winton Huang
4 min readMar 18, 2020

--

This is the blog based on my experience installing Cloud Pak for Integration v2019.4 on OKD v3.11

There are 2 methods of installation, using the downloaded package or using the entitled registry. We need to have the registry key in order to be able to use the entitled registry. Obtain a key from here: https://myibm.ibm.com/products-services/containerlibrary (choose Cloud Pak for Integration)

We have to make sure the OKD cluster meets the minimum system requirements to install Cloud Pak for Integration.

https://www.ibm.com/support/knowledgecenter/SSGT7J_19.4/install/sysreqs.html

Step 1 — Prepare your Boot Node

Boot node is any workstation of VM. I use CentOS in this case

1-1 Install Docker

1–2 Install OC cli

Download from https://mirror.openshift.com/pub/openshift-v4/clients/oc/latest/

1–3 Download the ibm-cp-int-2019.4.x-online.tar.gz file from IBM Passport Advantage or IBM Fix Central https://www.ibm.com/support/fixcentral/

Find product Cloud Pak for Integration and download ibm-cp-int-2019.4.x-online.tar.gz

1–4 Extract the downloaded online installer

# tar xvf ibm-cp-int-2019.4.x-online.tar.gz

1–5 Load the docker images

# sudo docker load -i installer_files/cluster/images/icp-inception-3.2.2.tgz

1–6 Update the config.yaml in installer_files/cluster/config.yaml

Update the nodes information to install Cloud Pak nodes, typically we use worker nodes of OCP

cluster_nodes:
master:
- your-openshift-dedicated-node-to-deploy-icp-master-components
proxy:
- your-openshift-dedicated-node-to-deploy-icp-proxy-components
management:
- your-openshift-dedicated-node-to-deploy-icp-management-components

Update the docker key to access the online entitled registry

docker_password: paste-your-entitled-key-here

Update the login information. You may disable the password enforcement rule to

password_rules:
- '(.*)'

Update admin password

default_admin_password: your-admin-password-here

Step 2— Install your Openshift Cluster

Follow the installation guide from OKD website https://docs.okd.io/3.11/install/running_install.html

Step 3— Setup storage for Openshift

3–1 Create an NFS share from a server. Follow this guide

https://www.howtoforge.com/nfs-server-and-client-on-centos-7

3–2 Create PV 20GB

Create file pvnfs.yaml

apiVersion: v1
kind: PersistentVolume
metadata:
name: pv0001
spec:
capacity:
storage: 20Gi
accessModes:
- ReadWriteOnce
nfs:
path: /nfs/share
server: 999.999.999.999
persistentVolumeReclaimPolicy: Recycle
storageClassName: managed-nfs-storage

Create the pv

# oc create -f pvnfs.yaml

Step 4— login to OCP using CLI

4–1 Login to openshift

oc login https://999.999.999.999:8443 -u admin -p your-password

4–2 Copy the kubeconfig

oc config view --minify=true --flatten=true > kubeconfig

Step 5— Run the installation

5–1 cd to the cluster directory

# cd installer_files/cluster

5–2 Run the installation

sudo docker run -t --net=host -e LICENSE=accept -v $(pwd):/installer/cluster:z -v /var/run:/var/run:z -v /etc/docker:/etc/docker:z --security-opt label:disable ibmcom/icp-inception-amd64:3.2.2 addon

After the installation, take note of the URL of the Cloud Pak installed on OpenShift

For installation on OCP 3.11, the installation will fail with the error message of Error: validation failed: unable to recognize “”: no matches for kind “Tuned” in version “tuned.openshift.io/v1

Steps to fix:

  1. Create docker registry secret from cli
# kubectl create secret docker-registry prod-secret --docker-username=cp --docker-password=<entitlement-key> --docker-server=cp.icr.io

2. Login to Cloud Pak using the password you defined in config.

3. Go to Catalog → ibm-icp4i-prod (IBM-entitled-chart)

4. Configure the Helm Chart

Give the chart a name and specify the namespace. Enter prod-secret for image pull secret

Change the mechanism to Daemonset (OpenShift 3.11)

4. Click Install

5. You may see your Helm installation from menu

6. Get the URL of your Cloud Pak for Integration

echo "https://$(kubectl get route icpi -n integration -o jsonpath="{.spec.host}")"

Your Cloud Pak for Integration Navigator is up and running and you can deploy the component you need

--

--