Understanding the OpenShift deployment | HCL Digital Experience
This section describes the output and artifacts created when deploying HCL Digital Experience 9.5 Docker images to Red Hat OpenShift.
./scripts/deployDx.sh your_namespace 1 your_repository dxen v95_CF184_20200916-2009 dxh1-dam dx deploy-stg derby
Namespace: your_namespace
- REPLICAS: 1
- Repository: your_repository
- Image Name: dxen
- Image Tag: v95_CF184_20200916-2009
- Volume Name: dxh1-dam
- Storage Class Name: dx-deploy-stg
- Database Type: derby
-
namespace/your_namespace created
serviceaccount/hcldx-cloud-operator created
role.rbac.authorization.k8s.io/hcldx-cloud-operator created
rolebinding.rbac.authorization.k8s.io/hcldx-cloud-operator created
deployment.apps/hcldx-cloud-operator created
dxdeployment.git.cwp.pnp-hcl.com/dx-deployment created
The following artifacts are created during deployment:
Artifacts
oc project project_name
Project/NamespaceThe Project/Namespace gets created if it does not already exist.
- Example Kubernetes
command:
kubectl get namespaces your_namespace
- Example OpenShift CLI
command:
oc get project your_namespace
Service Account
- Example Kubernetes
command:
kubectl get serviceaccounts -n your_namespace
- Example OpenShift CLI
command:
oc get serviceaccount
Role
- Example Kubernetes
command:
kubectl get role -n your_namespace
- Example OpenShift CLI
command:
oc get roles
Role Binding
- Example Kubernetes
command:
kubectl get rolebinding -n your_namespace
- Example OpenShift CLI
command:
oc get rolebinding
Deployment
- Example Kubernetes
command:
kubectl get deployment -n your_namespace
- Example OpenShift CLI
command:
oc get deployment
Replica Sets
A Replica Set based on the deployment. This maintains a stable set of replica pods.
- Example Kubernetes
command:
kubectl get replicaset -n your_namespace
- Example OpenShift CLI
command:
oc get replicasets
Metrics and Services
Services are created to expose HCL Digital Experience running as part of the Stateful Set and to provide metrics for the operator.
- Example Kubernetes
command:
kubectl get service -n your_namespace
- Example OpenShift CLI
command:
oc get service
Secrets
There are several secrets that are created.
- Example Kubernetes
command:
Example OpenShift CLI command:kubectl get secrets -n your_namespace
oc get secret
- Example Kubernetes details command:
kubectl describe secret dx-deployment-wps -n your_namespace
- Example Kubernetes update existing secrets
command:
kubectl edit secret dx-deployment-wps -n your_namespace
- Use double
base64
encoded values when updating secrets. Most Linux operating systems will allow you to generate doublebase64
values with this command:echo 'wpsadmin' | base64 | base64
- Use double
Config Map
A Config Map is created to handle clustering in scenarios where multiple operators are deployed.
- Example Kubernetes
command:
kubectl get configmap -n your_namespace
- Example OpenShift CLI
command:
oc get configmap
Persistent Volume Claims
- Example Kubernetes
command:
kubectl get pvc -n your_namespace
- Example OpenShift command:
oc get pvc
Stateful Set
- Example Kubernetes
command:
kubectl get statefulset -n your_namespace
- Example OpenShift CLI
command:
oc get statefulset
Pods
- Example Kubernetes
commands:
kubectl get pods -n your_namespace
kubectl get pods -l app=app_name -n your_namespace
- Example OpenShift CLI command:
oc get pods
oc get pods -l app=app_name
Routes
- Example Kubernetes command:
kubectl get routes
- Example OpenShift CLI command:
oc get routes
Extras
- File 1
'dxNameSpace_NAMESPACE.yaml'
can be used to delete thenamespace
/project
if needed. - File 2
'git_v1_dxdeployment_cr_NAMESPACE.yaml'
is a representation of the last deployed deployment for the givennamespace
/project
.