Prerequisites for Component Pack
Component Pack for IBM Connections uses different technologies from Connections and requires additional software.
The Component Pack for IBM Connections™ consists of Docker images and Helm charts that deploy to an x86_64 Linux Kubernetes platform. The following prerequisites must be met before attempting to install Component Pack services:
- System Requirements
The base system requirements for the current version of Component Pack are described in the topic: Component Pack installation roadmap and requirements.
- Docker
Kubernetes requires Docker to be installed on all servers. Install Docker as described in the Docker documentation.
Component Pack services are known to work well with Docker version 17.03.x and with 18.06.2+ (CE only), configured with devicemapper storage. If you have a license for Docker EE, you can use that with Component Pack (17.03.x only).- If you are a Docker CE customer, it is recommended that you install/upgrade to 18.06.2+. This is due to the runc vulnerability: CVE-2019-5736 .
- If you have a license for Docker EE, you can use that with Component Pack (17.03.x only).
- Kubernetes
Component Pack services require a Linux Kubernetes platform to run on. Component Pack for Connections was tested and is supported on Kubernetes 1.19 using a Docker runtime, and Kubernetes 1.20, 1.21, 1.22, and 1.24 using a containerd runtime.
You can find a reference implementation guide on setting up a Kubernetes cluster using kubeadm in the topic, Kubernetes reference implementation. The Component Pack services have been validated against the implementation described in that topic.
There are many ways to set up a Kubernetes platform. You can choose your preferred method provided it adheres to the specifications in the reference implementation. The best method for you depends on where you plan to deploy. See the following Kubernetes guide, Picking the Right Solution.
Note: All Component Pack services are set up with pod anti affinity, meaning Kubernetes will make every effort not to have pods from the same microservice co-exist on the same node. Since every service's replica count is set to 3 by default, it would be best practice in production to have at least 3 nodes in your cluster that pods can run on. - Helm
Install Helm on your Kubernetes master node(s) as explained in the Helm Quickstart Guide. Version 2.11.0 is the recommended version for Kubernetes v1.11.9.
- Namespace
A Kubernetes namespace must be created for the IBM Connections services to reside in. By default, all of the service Helm charts are set up to deploy to a namespace called connections. Create the connections namespace on your Kubernetes master by running the following command:
kubectl create namespace connections
It is possible to deploy to a different namespace; however an additional parameter must be set when running the helm install commands (see the note at the end of each of the install topics for the exact syntax). All helm releases, except for infrastructure and orientme, simply require
namespace=Namespace_name
to be added to the list of--set
parameters. - Docker Registry
A Docker registry is a storage and content delivery system, holding named Docker images, available in different tagged versions. Install and configure a Docker registry for hosting the Docker images provided for Component Pack. The Docker registry can be local or remote. For more information, see the Docker Registry guide at https://docs.docker.com/registry/deploying/
- ImagePullSecret
An ImagePullSecret called myregkey is required. Create it with the following command:
kubectl create secret docker-registry myregkey -n connections --docker-server=Docker_registry --docker-username=Your_user_name --docker-password=Your_password
Where:
Docker_registry
is your Docker Registry (include port if applicable)Your_user_name
is your Docker user name.Your_password
is your Docker password.