Installing IBM Edge Computing Manager shared components
Follow these installation steps to configure and enable the use of IBM Edge Computing Manager shared components. This installation supports both IBM Edge Computing Manager for Clusters and IBM Edge Computing Manager for Devices.
Prerequisites
Ensure that you have appropriately sized your cluster for OpenShift Container Platform 4.2.
- Docker 1.13+
- OpenShift client CLI (oc) 4.2
Installation process
-
Download the ibm-cp4mcm-core and ibm-ecm bundles for IBM Edge Computing Manager for Clusters or IBM Edge Computing Manager for Devices from IBM Passport Advantage to your installation environment, depending on which product was purchased.
-
Prepare the directory to be used by the installation, and unpack the license zip file to be accepted as part of the installation:
mkdir -p /opt/ibm-multicloud-manager-1.2 && \ tar -C /opt/ibm-multicloud-manager-1.2 -zxvf ibm-ecm-4.0.0-x86_64.tar.gz ibm-ecm-4.0.0-x86_64/ibm-ecm-licenses-4.0.zip
-
Ensure the Docker service is running and unpack/load the docker images from the installation tarball:
tar -zvxf ibm-cp4mcm-core-1.2-x86_64.tar.gz -O | sudo docker load
-
Prepare for and extract the installation configuration:
cd /opt/ibm-multicloud-manager-1.2 && \ sudo docker run --rm -v $(pwd):/data:z -e LICENSE=accept -v $(pwd)/ibm-ecm-4.0.0-x86_64:/installer/cfc-files/license:z --security-opt label:disable ibmcom/mcm-inception-amd64:3.2.3 cp -r cluster /data
-
Specify a fresh KUBECONFIG location, and Fill in the appropriate cluster information in the oc login command below (obtained from the OpenShift cluster installation), and copy the $KUBECONFIG file to the installation configuration directory:
export KUBECONFIG=$(pwd)/myclusterconfig
oc login https://<API_ENDPOINT_HOST>:<PORT> -u <ADMIN_USER> -p <ADMIN_PASSWORD> --insecure-skip-tls-verify=true && \ cp $KUBECONFIG /opt/ibm-multicloud-manager-1.2/cluster/kubeconfig && \ cd cluster
-
Update the config.yaml file:
-
Determine which nodes you wish to configure IBM Edge Computing Manager shared components services to be scheduled on. It is highly recommended to avoid using the master nodes:
# oc get nodes NAME STATUS ROLES AGE VERSION master0.test.com Ready master 8h v1.14.6+c07e432da master1.test.com Ready master 8h v1.14.6+c07e432da master2.test.com Ready master 8h v1.14.6+c07e432da worker0.test.com Ready worker 8h v1.14.6+c07e432da worker1.test.com Ready worker 8h v1.14.6+c07e432da worker2.test.com Ready worker 8h v1.14.6+c07e432da
Inside the cluster/config.yaml (master here refers to a specific set of services that are a part of IBM Edge Computing Manager for Clusters and is not referring to the master node role):
# A list of OpenShift nodes that used to run services components cluster_nodes: master: - worker0.test.com proxy: - worker0.test.com management: - worker0.test.com
Note: The value of the master, proxy, and management parameters is an array and can have multiple nodes; and the same node can be used for each parameter. The configuration above is for a minimal installation, for a production installation, include three worker nodes for each parameter.
-
Choose your preferred storage_class for persistent data:
# oc get storageclass NAME PROVISIONER AGE rook-ceph-block-internal rook-ceph.rbd.csi.ceph.com 8h rook-ceph-cephfs-internal rook-ceph.cephfs.csi.ceph.com 8h rook-ceph-delete-bucket-internal ceph.rook.io/bucket 8h
Inside the cluster/config.yaml:
# Storage Class storage_class: rook-ceph-cephfs-internal
-
Define a 32+ character alphanumeric default_admin_password:
# default_admin_password: # password_rules: # - '^([a-zA-Z0-9\-]{32,})$' default_admin_password: <YOUR-32-CHARACTER-OR-LONGER-ADMIN-PASSWORD>
-
Add a line defining cluster_name to uniquely identify the cluster:
cluster_name: <INSERT_YOUR_UNIQUE_CLUSTER_NAME>
Note: Without this definition a default of mycluster name will be chosen. If you will also be installing IBM Edge Computing Manager for Devices, this is an important step to appropriately name your cluster. The cluster_name will be used to define several components for that product.
-
-
Open the default route to the internal OpenShift image registry:
oc patch configs.imageregistry.operator.openshift.io/cluster --type merge -p '{"spec":{"defaultRoute":true}}'
-
Install IBM Edge Computing Manager shared components:
sudo docker run -t --net=host -e LICENSE=accept -v $(pwd)/../ibm-ecm-4.0.0-x86_64:/installer/cfc-files/license:z -v $(pwd):/installer/cluster:z -v /var/run:/var/run:z -v /etc/docker:/etc/docker:z --security-opt label:disable ibmcom/mcm-inception-amd64:3.2.3 install-with-openshift
Importing a cluster to be managed
There is a known issue with importing clusters, we are working on providing functional documentation steps for this process.
Next steps
If this installation was done as part of a prerequisite for IBM Edge Computing Manager for Devices, return to continue that installation.