Migrating OpenShift template installation to Helm charts#

Starting with HCL™ Accelerate version 3.1.0, OpenShift installation via templates is no longer supported. It is highly recommended to migrate OpenShift template installation of HCL Accelerate to Kubernetes Helm charts on your next upgrade. After the successful migration, follow the Kubernetes upgrade directions.

You can migrate an OpenShift template installation of HCL Accelerate to Helm charts without changing configured services.

To migrate the OpenShift template installation, perform the following steps:

  1. Verification - To verify the default and custom resources of OpenShift template generated by HCL Accelerate installation.
  2. Back up - To save the OpenShift template default and custom resources for re-using it in HCL Accelerate Helm charts installation.
  3. Deletion - To delete all resources installed by OpenShift template installation.
  4. Installation - Re-install HCL Accelerate using Helm charts.

For assistance with migration, contact support.

1. Verification#

Verify all default and custom resources of HCL Accelerate previously installed by the OpenShift template. The OpenShift template installs a set of defined Kubernetes objects.

1. Verify default resources installed by the OpenShift template

You can run the following command to verify the default resources previously installed by the OpenShift template:

oc get Deployment,StatefulSet,ReplicaSet,Pod,Service,ConfigMap,Secret,Route,RoleBinding,Role,ConfigMap,Secret,ServiceAccount,ClusterRoleBinding,ClusterRole,CustomResourceDefinition,Template --ignore-not-found --all-namespaces --selector app=accelerate --output name

Note: Ensure the database related resources are not affected.

2. Verify custom resources installed during OpenShift template installation

Custom resources are created during the OpenShfit template installation. To identify the custom resources, run the following command to get the list of all resources types in the cluster then compare the list with default list of resources types.

oc api-resources --verbs=list -o name

The following example shows a list of all resource types in the cluster,

componentstatuses
configmaps
endpoints
events
limitranges
namespaces
nodes
.....

Note: Run migration commands with all default and custom resources.

Run the following command to get NAME and NAMESPACES of all the resource types.

oc get <resource_kinds> --ignore-not-found --all-namespaces --selector app=accelerate -o=custom-columns=KIND:.kind,NAME:.metadata.name,NAMESPACE:.metadata.namespace --sort-by='metadata.namespace'

Note: Replace <resource_kinds> with all the resource types separated with comma.

For example, componentstatuses,configmaps,endpoints,events,limitranges,namespaces,nodes,...

The sample of all resource types with NAME and NAMESPACES in the cluster is shown below.


KIND                           NAME                                                         NAMESPACE
Status                         <none>                                                       <none>
CustomResourceDefinition       clusterworkflowtemplates.argoproj.io
ComponentStatus                etcd-0
User                           developer
User                           admin
...
ConfigMap                      accelerate-config                                            accelerate
ConfigMap                      nginx-conf                                                   accelerate
ConfigMap                      swidtag-conf                                                 accelerate
ConfigMap                      workflow-controller-configmap                                accelerate
Template                       accelerate                                                   accelerate
Route                          accelerate                                                   accelerate
Role                           argo-role                                                    accelerate
...

All of the resources with the NAMESPACES accelerate are related to HCL Accelerate. All of the resources with the NAMESPACES are related to HCL AccelerateEnsure all custom resources are verified and migrated.

2. Back up#

Back up all default and custom resources of HCL Accelerate previously installed by the OpenShift template.

Run the following command to back up all resources in one YAML file.

oc get Deployment,StatefulSet,ReplicaSet,Pod,Service,ConfigMap,Secret,Route,RoleBinding,Role,ConfigMap,Secret,ServiceAccount,ClusterRoleBinding,ClusterRole,CustomResourceDefinition,Template --ignore-not-found --all-namespaces --selector app=accelerate --output yaml > /path/to/back-file.yaml

Note: Replace /path/to/back-file.yaml with the file directory where you want to save the YAML file. The YAML file is required for the future references.

Note: Ensure all default and custom resources are listed in oc get command.

3. Deletion#

Delete all default and custom resources of HCL Accelerate previously installed by the OpenShift template.

Before you proceed with the deletion of the resources, ensure that the verification and back up steps are completed.

Run the following command to delete the resources.

oc delete Deployment,StatefulSet,ReplicaSet,Pod,Service,ConfigMap,Secret,Route,RoleBinding,Role,ConfigMap,Secret,ServiceAccount,ClusterRoleBinding,ClusterRole,CustomResourceDefinition,Template --ignore-not-found --all-namespaces --selector app=accelerate

Note: Run the verification steps again to ensure all OpenShift template resources are deleted in the Kubernetes cluster.

Note: Ensure all default and custom resources are listed in oc deletecommand.

4. Installation#

Install HCL Accelerate using Helm charts. You must perform the installation as the same user who completed the OpenShift template installation to ensure that the maintenance of keys and tokens are correct.

Parent topic: Migrating