Deploying HCL Compass on Google Kubernetes Engine
Now that you have created and downloaded your solution from HCL SoFy, this quick start guide shows you deploy HCL Compass on Google Kubernetes Engine (GKE).
About this task
- Use Google Kubernetes Engine (GKE) to create a Kubernetes cluster. GKE is part of the Google Cloud Platform (GCP).
- Prepare the Kubernetes cluster to install the HCL Compass solution that you downloaded from HCL SoFy.
- Install an HCL Compass solution chart, get an external IP address to access the Soltuion Console and link to the home page of the HCL Compass product.
Procedure
-
Use the Google Cloud Platform to create a Kubernetes cluster in the Google Kubernetes
Engine.
- Login to the GCP console using your account information. After you are logged in, you should be in the Kubernetes Engine > Cluster view. You will be prompted to create a project.
- Select Create Project to build your top level GCP project. No organization is required.
- Select Create to create a new cluster.
- On the Create Cluster pop-up interface, click on Standard CONFIGURE or Autopilot CONFIGURE.
- On the left side, click Cluster basics. Provide a name for
your cluster. Use Zonal clusters with the static version of
GKE. Note: It is recommended to intially use the static version, which requires manual updates, and not use the release channel version.
- On the left side, click Node Pools, then select default-pool. By default, the node pool has 3 nodes. It is recommended to reduce this to 2 nodes by setting size number of nodes to 2.
- Size your nodes according to your solution. Select Nodes within the default-pool. The HCL SoFy Solution Detail page includes estimated resource needs for the solution.
- Select Machine Type. For example, the HCL Compass solution requires a minimum of 8 vCPU and 32 GB of memory. You could select e2-standard-8, which provides 2 nodes of 8 vCPU and 32 GB of memory.
- On the left side, select Networking to see the Networking configuration. Ensure that the Network and Node subnet have been set. If you encounter an issue when setting the Node subset, repeat step 1e, selecting a different Zone until you see that both Network and Node subset have been set in the Networking Configuration UI.
- Click Create. Your cluster should be ready in 3-5 minutes.
-
Install the HCL Compass solution
from HCL SoFy.
- Using the cluster list, find the cluster that you created in step 1.
- On the right side of your cluster, click on the three dot icon (actions) and select Connect.
- On the Connect to the Cluser UI, click on RUN IN CLOUD SHELL link to start the cloud shell terminal.
- Go the Cloud Shell Terminal.
- Install a supported version of Helm 3.
wget https://hclcr.io/files/sofy/scripts/get-helm3.sh && source get-helm3.sh
- Install Cert-Manager in your cluster.
$ wget https://hclcr.io/files/sofy/scripts/cert-manager-setup.sh $ chmod +x cert-manager-setup.sh $ ./cert-manager-setup.sh
- Optionally, create a namespace for your
solution.
kubectl create namespace [name]
- Create a pull secret in the solution
namespace.
kubectl create secret docker-registry [secret-name] --docker-server=hclcr.io --docker-username=[sofy userid] --docker-password=[CLI secret] --namespace=[solution namespace]
To set your Harbor CLI secret, login to hclcr.io with your HCL/SoFy credentials, selecting LOGIN VIA OIDC PROVIDER. In the top right corner, click the dropdown for your username, open your User Profile and enter a secret string of your choice. Use this string as the CLI secret in the command in step 2h.
-
Use Helm to install the HCL Compass solution chart.
- The HCL Compass solution chart can be downloaded from the SoFy Solution URL page to your local file system. Click on DEPLOY in the drop down list at the top right corner of the solution detail page and select Deploy Locally (Download).
- Upload the solution chart to your cloud shell by clicking the four dots icon in the top right of the cloud shell terminal window.
- Install the solution chard using the helm install command:
$ helm install [release-name] [file-name] \ --namespace [solution namespace] \ --set global.hclImagePullSecret=[secret-name] \ --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 2g.
- secret-name
- The secret name that you created in step 2h.
- 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 three following
services:
- hcl-compass service for RESTful applications with a two database connection set.
- 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.
-
Access the Solution Console and link to the HCL Compass home page.
- Run kubectl get pods to make sure that all pods are in the
running state and READY set to 1/1. It may take 3-5 minutes for
all of the pods to reach the running state and READY set to
1/1.
$ kubectl get pods –-namespace [namespace_name]
- Run kubectl get services to get EXTERNAL-IP
address from the LoadBalancer service
type.
$ kubectl get services –-namespace [namespace_name]
- Start the Solution Console app in your browser by using
https://sofy-console.EXTERNAL-IP.nip.io/
. You will see warnings about the certificate that is used in the solution; it is safe to accept these and proceed to the Solution Console application. Log in to the application with the default user ID and password. The default user ID is sol-admin and the default password is pass. The solution console provides information about all parts of the solution, as well as links to the homepage of the HCL Compass product.- Go to the General Information page to see the links to the HCL Compass home page, API Base URLs, and log files for all containers.
- If you see any issue with pods and services, check the HCL Compass pod log files. The pod may need to be restarted. Deleting the pod will restart the pod.
- To fix any issues, you can go to the Kubernetes Resources page, and click on Pods. Find the pod for hcl-compass and then delete it. The deleted pod will start again. If the same problem still exists, contact the HCL Compass support team.
- When you are finished with your solution, you can use the helm
delete command to uninstall
it.
$ helm delete {release-name} --namespace [namespace_name]
- Run kubectl get pods to make sure that all pods are in the
running state and READY set to 1/1. It may take 3-5 minutes for
all of the pods to reach the running state and READY set to
1/1.