Conall O’Cofaigh
Advisory Software Engineer, IBM Collaboration Solutions

On 15th October 2018, Component Pack 6.0.0.6 was released to Fix Central and made available free of charge to all IBM Connections customers. 6.0.0.6 is the seventh release of the PINK journey; however, this is the release that many have been waiting for — a simpler, more flexible solution to deploy the Orient Me, Customizer and Elasticsearch offerings for IBM Connections.

The new flexible platform

The main difference between this release and the previous one is that the dependency of the IBM Cloud Private (ICP) platform has now been removed. This is music to many people’s ears, as it now allows customers to choose their preferred Kubernetes platform, as long as it adheres to the specifications in reference implementation (more on this later).

It did, however, cause some eyebrows to be raised, and the question to be asked – How do I deploy Kubernetes now? Well, the good news is that as part of this release, a full re-write of the Component Pack documentation was posted to the IBM Knowledge Center. Included in this documentation is the reference implementation, a zero to hero, step by step guide on how to deploy a Kubernetes platform for the Component Pack to be deployed to. The guide uses a tool called kubeadm and steps are provided to deploy a non-HA as well a HA Kubernetes platform.

In line with the new flexible model, using kubeadm to deploy your Kubernetes platform is optional. You can use any tool or service to deploy your platform as long as it adheres to the specifications in the reference implementation. These specifications include Docker v17.03, Kubernetes v1.11 and Helm v2.11. Customers must be current with the Kubernetes platform reference implementation as well as Component Pack updates for support.

The new deployment model

Previous releases of Component Pack have all included Bash installer scripts that were used to set up the Docker / Kubernetes platform (using IBM Cloud Private), as well as install the Component Pack offerings. Although this method seemed convenient, in actual fact, it turned out to be quite restrictive. Firstly, the scripts could only be supported on a limited number of operating systems (Red Hat and CentOS), and secondly, some customers did not like the idea of running scripts that make operating system changes, as different corporations have different compliance policies. Trying to accommodate every customer’s needs was simply too hard with the old model. With the 6.0.0.6 release, all of the installer Bash scripts have been scrapped, and instead we leverage Helm capabilities in order to provide easier deployment management, reduced overhead, and a more flexible deployment model.

The actual zip now only contains Docker images, Helm charts and a small number of support files. As a prerequisite, a Docker registry is now required to push the images to. Many customers are already using a hosted or private Docker registry within their organization, so the images can simply be pushed to this. However, for anyone who does not have a registry, a local registry can be set up very easily using the steps on the Docker website.

Helm is the underlying technology used to deploy and manage the Component Pack offerings. Helm has actually been used under the hood since the 6.0.0.4 release; however, with 6.0.0.6, a “chart of charts” model has been used to bundle Helm charts together, meaning there are fewer Helm charts to deploy and manage.

Previously, all of the Helm install commands were hard coded into the Bash installer scripts, but since these scripts are no more, the documentation now provides the commands that should be used in order to install the components. This means that installations can be customized to suit the customer’s needs by setting Helm values with the installation commands. For example, your deployment may require different values if you have a strict SSL enabled environment, or a security proxy in play such as ISAM (formerly TAM) or SPNEGO.

This approach also allows customers to only deploy the Helm chart that they require based on the offerings they want to deploy (Orient Me, Customizer, Elasticsearch).

This overall model, along with the move to Kubernetes v1.11, has laid the foundation for zero downtime future upgrades of the Component Pack.

Component Pack Helm Charts

The following table shows what Helm charts are required for each offering.

Helm Chart Orient Me Customizer Elasticsearch
bootstrap
connections-env
infrastructure
mw-proxy
elasticsearch
orientme

 
There are also some optional Helm charts which are included as part of the release:

Helm Chart Description
sanity Provides a dashboard where you can monitor the health of all applications
sanity-watcher Monitors the installed releases and upgrades sanity with the latest list of services to monitor when it detects any helm release has been added or removed.
connections-persistent-storage-nfs Set up and configure the required PV’s using NFS
elasticstack Integrates with the Component Pack Elasticsearch to provide a method to search, analyze, and visualize log data in real time.
esbackuprestore Backup or restore data for Elasticsearch-based components.

What else is new in 6.0.0.6?

The big changes in this release were all around the new platform and flexible deployment model. However, there were several other changes also included in this release such as:

  • Bug Fixes and security updates
  • Stability and performance fixes based on IBM Connections public cloud feedback
  • Improved UI behavior
  • New bootstrap Helm chart used to set up required secrets and certs
  • New Helm chart included to manage persistent volumes using NSF
  • New optional Elastic Stack Helm chart that integrates with the Component Pack Elasticsearch to provide a method to search, analyze, and visualize log data in real time.

The power of Elasticsearch

The Component Pack Elasticsearch offering was included in the 6.0.0.4 release to replace the Cognos solution, which reached end of support in April 2018, to allow organizations to get meaningful metrics from their IBM Connections environment.

Fast forward to 6.0.0.6, and Elasticsearch can now be used for the following features:

  • Metrics for IBM Connections
    In the CR3 release, new filters have been included in Metrics to provide additional insights into usage activity and community health, and Metrics now allows for the import of additional historic data.
  • Type-ahead search for IBM Connections
    Type-ahead remembers where you have been recently, so you can find content faster–for example, recently viewed Files and Communities. Previously, the type-ahead feature was only available by deploying a stand-alone Solr server. Starting with CR3, this feature is available with Elasticsearch instead of Solr, which provides a more enterprise ready solution. For CR3, both Solr and Elasticsearch solutions are supported, however support for type-ahead using Solr will eventually be phased out in a future release.
  • Elastic Stack
    Built on an open source foundation, the Elastic Stack lets you reliably and securely take data from any source, in any format, and search, analyze, and visualize it in real time.

    The Elastic Stack implementation (optional deployment) will integrate with the Component Pack Elasticsearch cluster. Logs collected by Filebeat will be processed by LogStash for storage in ElasticSearch, discoverable by Kibana.
    Log flow diagram

Stand-alone Elasticsearch Offering

There is an alternative way to deploy Elasticsearch that does not require a Kubernetes or Docker platform. This solution is ideal for customers who do not want Orient Me or Customizer but do want Elasticsearch. The IBM Knowledge Center has been updated with a guide on setting up stand-alone Elasticsearch. This offering is considered part of the Metrics solution delivered with CR3 and not part of the Component Pack.

The following table is very handy in determining the best Elasticsearch solution for you.

Elasticsearch solution Valid Deployments Ideal Customer
Component Pack 6.0.0.6
(Docker/Kubernetes)
  • New deployments
  • Existing deployments migrating from Metrics DB
  • Existing deployments already using the ES solution provided in 6.0.0.4/6.0.0.5 (The data will be re-used in 6.0.0.6 – no migration required)
Ideal solution for a customer who also wants Orient Me and/or Customizer as these both need a Docker/Kubernetes cluster to run on.
Stand-alone ES solution
  • New deployments
  • Existing deployments migrating from Metrics DB
  • Existing deployments migrating from Component Pack ES solution
Ideal solution for a customer who does not want Orient Me or Customizer. This solution means they do no need to set up a Docker/Kubernetes cluster to use the features based on Elasticsearch.

Get started with 6.0.0.6

What are you waiting for??

The full deployment guide for Component Pack can be found in the IBM Knowledge Center: https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/install/cp_install_config_intro.html
Or, you can follow the extremely useful “zero to hero” guide that Martti Garden presented at Social Connections in Berlin in October 2018:

Join The Discussion

Your email address will not be published. Required fields are marked *