Compréhension du déploiement d'OpenShift

Cette section décrit la sortie et les artefacts créés lors du déploiement d'HCL Portal dans OpenShift.

Remarque : Toutes les modifications doivent être apportées à l'instance de ressource personnalisée et non aux parties individuelles du déploiement. Voir Personnalisation du déploiement de conteneur pour en savoir plus.
Déployez à l'aide des commandes suivantes :
./scripts/deployDx.sh your_namespace 1 657641368736.dkr.ecr.us-east-2.amazonaws.com dxen v95_20190928-2258 
        your_namespace dx deploy-stg derby
Résultats dans la sortie suivante :
Namespace:  your_namespace
 - REPLICAS:  1
 - Repository:  657641368736.dkr.ecr.us-east-2.amazonaws.com
 - Image Name:  dxen
 - Image Tag:  v95_20190928-2258
 - Volume Name:  your_namespace
 - 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

Les artefacts suivants sont créés lors du déploiement :

Projet/Nom d'espaces sont créés s'ils n'existent pas déjà.
Figure 1. Artefact Project/Namespace
  • Commande Kubernetes :
    'kubectl get namespaces' (includes project age.)
  • Commande OpenShift :
    'oc get projects'
Un artefact Compte de service pour l'opérateur.
Figure 2. Service Account artifac
  • Commande Kubernetes :
    'kubectl get serviceaccounts -n your_namespace' (where your_namespace is the project/namespace)
  • Commande OpenShift :
     'oc get serviceaccount' (to set project: 'oc project your_namespace')
    Remarque : Vous pouvez utiliser 'serviceaccount', 'serviceaccounts' ou 'sa'.
Un artefact Rôle qui définit l'accès requis par l'opérateur.
Figure 3. Artefact Rôle
  • Commande Kubernetes :
    'kubectl get role -n your_namespace'
  • Commande OpenShift :
    'oc get role'
Un artefact Liaison de rôle qui lie le compte de service de l'opérateur au rôle de l'opérateur.
Figure 4. Artefact Liaison de rôle
  • Commande Kubernetes :
    'kubectl get rolebinding -n your_namespace'
  • Commande OpenShift :
    'oc get rolebinding'
Un artefact Déploiement qui définit/décrit l'opérateur Réplique définie.
Figure 5. Artefact Déploiemnt
  • Commande Kubernetes :
    'kubectl get deployment -n your_namespace'
  • Commande OpenShift :
    'oc get deployment'

Un artefact Réplique définie basé sur le déploiement. Cela maintient un ensemble stable de pods de répliques.

Figure 6. Artifcat Ensemble de répliques
  • Commande Kubernetes :
    'kubectl get replicaset -n your_namespace'
  • Commande OpenShift :
    'oc get replicaset'
    Remarque : Vous pouvez remplacer replicaset par rs en tant que nom court.

Un artefact de service Métriques (sous Services) qui fournit des métriques à l'opérateur.

Figure 7. Artefact Métriques
  • Commande Kubernetes :
    'kubectl get svc -n your_namespace'
  • Commande OpenShift :
    'oc get service'
    Remarque : Vous pouvez remplacer service par svc en tant que nom court.

Plusieurs secrets sont créés. Version 9.5 CF171+

Figure 8. Artefacts Secrets
  • Commande Kubernetes :
    'kubectl get secrets -n your_namespace'
  • Commande Détails Kubernetes :
    'kubectl describe secret dx-deployment-wps -n your_namespace'
  • Commande de mise à jour Kubernetes :
    'kubectl edit secret dx-deployment-wps -n your_namespace'
    • La plupart des systèmes d'exploitation Linux vous permettront de générer des valeurs base64 avec cette commande :
      'echo 'wpsadmin' | base64'
    • Utilisez des valeurs codées base64 lors de la mise à jour des secrets.

Un artefact Mappe de configuration est créé pour gérer le clustering dans les scénarios où plusieurs opérateurs sont déployés.

Figure 9. Artefact Mappe de configuration
  • Commande Kubernetes :
    'kubectl get cm -n your_namespace'
  • Commande OpenShift :
     'oc get configmap'
    Remarque : Vous pouvez remplacer configmap par cm en tant que nom court.
Un ou plusieurs artefacts Réclamations de volume persistant sont créés, un pour le profil partagé et un autre, s'il est configuré, pour les journaux de chaque pod.
Figure 10. Artefact Persistent Volume Claims artifact
  • Commande Kubernetes :
    'kubectl get pvc -n your_namespace'
  • Commande OpenShift :
    'oc get PVCs'
Remarque : Les journaux sont affichés lorsque la consignation est configurée.
Figure 11. Journaux affichés lorsque la consignation est configurée
Un artefact Ensemble avec état est créé pour le noyau HCL Digital Experience. Comme un déploiement, un ensemble StatefulSet gère les pods qui se basent sur des spécifications de conteneur identiques.
Figure 12. Artefact Ensemble avec état
  • Commandes Kubernetes :
    'kubectl get pods -l app=dx-deployment -n your_namespace'
    'kubectl get statefulset -n your_namespace'
  • Commandes OpenShift :
    'oc get pods -l app=dx-deployment'
    'oc get statefulset'
L'artefact Pods fait partie de l'artefact Ensemble avec état, qui exécute HCL Portal.
Figure 13. Artefact Pods
  • Commandes Kubernetes :
    'kubectl get pods -l app=dx-deployment -n your_namespace' (limits to pods in the StatefulSetSpec)
    'kubectl get pods -n your_namespace'
  • Commandes OpenShift :
    'oc get pods -l app=dx-deployment' (limits to pods in the StatefulSetSpec)
    'oc get pods'
Un artefact Service pour exposer HCL Digital Experience s'exécutant dans le cadre de l'artefact Ensemble avec état.
Figure 14. Artefact ervice
  • Commande Kubernetes :
    'kubectl get svc -n your_namespace'
  • Commande OpenShift :
    'oc get svc'
Un ou plusieurs artefacts Itinéraires sont créés. Ils sont utilisés pour exposer divers ports du service HCL Digital Experience, y compris ceux utilisés pour accéder à HCL Portal, à la console WAS et à l'assistant de configuration.
Figure 15. Artefact Itinéraires
  • Commande Kubernetes : Aucun.
  • Commande OpenShift :
    'oc get routes'
Plusieurs fichiers sont créés pour chaque déploiement. Il est recommandé de conserver ces fichiers.
Figure 16. Fichiers historiques
  • Le fichier 1 'dxNameSpace_NAMESPACE.yaml' peut être utilisé pour supprimer le namespace/project si nécessaire.
  • Le fichier 2 'git_v1_dxdeployment_cr_NAMESPACE.yaml' est une représentation du dernier déploiement déployé pour le namespace/project donné.