Getting started with HCL Compass Helm Chart

Learn how to install, configure, and launch the HCL Compass Helm chart in your own Kubernetes environment.

Before you begin

In order to install HCL Compass helm chart, you must have the following:
  • You must setup your environment by installing Kubernetes and Helm. For more information about how to get started with Kubernetes and Helm, see Getting started with Kubernetes and Getting Started with Helm. Setup the environment with Kubernetes 1.16.0 and higher, the kubectl CLI, and Helm 3.
  • You must have the details of the HCL Flexnet license server that contains your entitlements to run HCL Compass.

About this task

This quick start guide shows you how to download HCL Compass Helm and install it in your own Kubernetes environment.

Procedure

  1. Add the HCL Compass helm chart repository to the local client:
    1. helm repo add compass https://hclcr.io/chartrepo/compass

      Tip: Get the name and chart version of the hcl-compass helm chart using helm search repo compass.

    2. You can access the Compass helm chart readme file using the helm inspect command:
      helm inspect readme compass/hcl-compass > README.md
  2. Create a namespace for your solution and create a pull secret in the solution namespace.
    1. Optionally, create a namespace for your solution.
      kubectl create namespace [name]
  3. Managing databases.
    HCL Compass requires a supported database, such as PostgreSQL, Oracle, SQL Server, or DB2. The database may run in your cluster or on hardware that resides outside of your cluster and must be configured as described in Managing Databases before installing HCL Compass. The values that are used to connect to the database are required when installing HCL Compass.

    You can create, delete, and update HCL Compass supported databases only on a Windows system by using either the Maintenance Tool or the Designer Tool.

    You can use one of the following options to access the HCL Compass Windows install repository to install Compass Development tools via Installation Manager on Windows:
    • Install Compass Development tools before helm install: Deploy hcl-compass-win-install container to create persistence volume mounted folder c:\hcl-compass-win-install\ and access to the HCL Compass Windows install repository.
       docker run --rm -d --name hcl-compass-win-install \
          -v c:\hcl-compass-win-install:/ccm/win-install \
          hclcr.io/compass/hcl-compass-win-install:2.2.3

      Then, install Compass Development Tools by adding the HCL Compass Windows install repository path c:\hcl-compass-win-install\repository.config file to the Installation Manager Preferences Repositories dialog and install HCL Compass for Windows.

    • Install Compass Development tools after helm install: Follow the instructions for Get started with HCL Compass Designer Tools from the HCL Compass login page.
      Note: By default, HCL Compass is installed with an internal PostgreSQL database running in a container. If you plan to install or upgrade the HCL Compass Helm charts with your own database, you must set service.enabled.postgresql to false and set your external database settings as described in Updating the HCL Compass Helm chart to create new database connections.
    Note: Persistent Volumes that will hold the hcl-compass data, config, and logs folders for HCL Compass are required. If your cluster supports default StorageClass (SC) and dynamic volume provisioning, you will not need to create an SC and PersistentVolume (PV) before installing HCL Compass. If your cluster does not support default SC and dynamic volume provisioning, you must either ensure an SC and a PV is available or disable the persistent volume by setting persistence.enabled to false before installing HCL Compass. For more information, see HCL Compass Persistent Volumes.
  4. Install the solution chart using the helm install command:
     $ helm install [release-name] compass/hcl-compass \
                    --namespace [solution namespace] \
                    --set hclFlexnetURL=[flexnet-url] \
                    --set hclFlexnetID=[flexnet-id]
    release-name
    A release name that you choose
    file-name
    The HCL Compass solution chart in .tgz file format.
    solution namespace
    The namespace that you created in step 2a.
    flexnet-url
    Your HCL FlexNet license server URL.
    flexnet-id
    Your HCL FlexNet license ID.
    Installing the HCL Compass Helm Chart that is installed with this solution chart creates the following services:
    • hcl-compass service for RESTful applications with a two database connection set.
    • hcl-compass-analytics service for the HCL Compass Analytics feature.
    • hcl-compass-search-app1 service for the Search application for the first database connection set.
    • hcl-compass-search-app2 service for the Search application for the second database connection set.
    • hcl-compass-nginx, hcl-compass-dashboards, and hcl-compass-opensearch services for the Dashboards feature.
    • hcl-compass-logstash service for the logging information.
  5. Access the HCL Compass home page.
    1. Run kubectl get pods to make sure that all pods are in the running state and READY set to 1/1. It may take 5-7 minutes for all of the pods to reach the running state and READY set to 1/1.
      $ kubectl get pods –-namespace [namespace_name]
    2. Run kubectl get services to get EXTERNAL-IP address from the LoadBalancer service type.
      $ kubectl get services –-namespace [namespace_name]
    3. Start the HCL Compass home page in your browser by using https://hcl-compass-IP:30102.
    4. When you are finished with your helm chart release, you can use the helm delete command to uninstall it.
      $ helm delete {release-name} --namespace [namespace_name]
  6. If you install the hcl-compass helm chart on Kubernetes Cluster in Cloud, such as Google Kubernetes Engine and Azura Kubernetes Service, you must upgrade the helm chart after the install and set nginx.urlMapping, analytics.urlMapping, and service.urlMapping in order for the Analytics and dashboard features to work.
    1. Run kubectl get services to get the hcl-compass-nginx, hcl-compass-analytics and hcl-compass services EXTERNAL-IP addresses.
    2. Run helm upgrade with -set nginx.urlMapping=https://[EXTERNAL-IP]:5602, analytics.urlMapping=https://[EXTERNAL-IP]:8290, service.urlMapping=https://[EXTERNAL-IP]:8190.
    3. Start the HCL Compass home page in your browser by using hcl-compass service EXTERNAL-IP address:
      https://[EXTERNAL IP]:8190
      The username is admin and the password is "".
      $ helm upgrade [release-name]  compass/hcl-compass\
      	         --namespace [solution namespace] \
      	         --set hclFlexnetURL=[flexnet-url] \
                     --set hclFlexnetID=[flexnet-id] \
                     --set nginx.urlMapping=https://[EXTERNAL-IP]:5602
                     --set analytics.urlMapping=https://[EXTERNAL-IP]:8290
                     --set service.urlMapping=https://[EXTERNAL-IP]:8190
      
  7. Enable the Keycloak Single Sign On feature.
    The Keycloak Single Sign On feature is disabled by default. You can enable the Keycloak Single Sign On feature to install and deploy the Keycloak service with the hcl-compass helm chart or you by using an external Keycloak instance that is installed outside of the hcl-compass helm chart. For more information, see Enabling the Keycloak Single Sign On feature.
  8. HCL Compass install with Customize parameters settings.
    1. Get a copy of the values.yaml file from the helm chart so that you can update it with customzied values used by the install.
      $ helm inspect values compass/hcl-compass > my_values.yaml
    2. Edit the my_values.yaml file to specify the parameter values to use when isntalling the HCL Compass instance. The configuation section lists the parameters values that can be set.
      $ helm install hcl-compass \
        compass/hcl-compass \
        --namespace default \
        --values my_values.yaml
    3. To install the chart into namespace default with release name hcl-compass and to use the values from my_values.yaml.
  9. Set a Feedback Email address.
    To use the Feedback feature, you must set a feedback.to.emailaddress and a feedback.from.emailaddress during Helm chart installation or upgrade.
    feedback:
      toEmailaddress: [TO_EMAIL_ADDRESS]
      fromEmailaddress: [FROM_EMAIL_ADDRESS]
  10. Resource management for Pods and Containers.
    Default settings specify how much of each resource a container needs. These resources specify CPU and RAM for the Server-API-Server and search containers. The admin can update these settings as necessary.
    The default settings for the Server-API-Server container:
    ccm:
      resources:
        limits:
          memory: 5000Mi
        requests:
          cpu: "0.4"
          memory: 1000Mi
    The default settings for each of the Search containers:
    searchapp1:
      resources:
        limits:
          memory: 5000Mi
        requests:
          cpu: "0.4"
          memory: 1000Mi
  11. Optionally, uninstall the HCL Compass Helm Chart by running the helm uninstall or helm delete command.
    helm uninstall [release-name]

    or:

    helm delete [release-name]