Citrix Virtual Apps and Desktops

Ambienti di virtualizzazione Red Hat OpenShift

Citrix® gestisce i carichi di lavoro Red Hat OpenShift tramite un plug-in OpenShift gestito da Citrix. Con questo plug-in, è possibile creare connessioni di hosting e unità di hosting al cluster OpenShift, creare cataloghi e gestire l’alimentazione delle macchine nel catalogo.

Sono supportate le seguenti configurazioni:

  • Opzioni di rete:
    • Linux Bridge: Attualmente disponibile per il networking del cluster.
    • OVS Bridge: Previsto per il prossimo rilascio.
  • Opzioni di archiviazione:
    • Archiviazione locale: Supportata per l’archiviazione persistente su nodo.
    • Archiviazione NetApp: Supportata per l’integrazione di archiviazione esterna di livello enterprise.

Passaggi chiave

  • Configurare l’ambiente Red Hat OpenShift.
  • Creare una connessione e una risorsa al cluster OpenShift.
  • Creare un catalogo macchine.
  • Creare un gruppo di consegna.

Configurare l’ambiente Red Hat OpenShift

  1. Creare un cluster OpenShift e ottenere l’indirizzo API del cluster: Nella console OpenShift, dopo aver configurato un cluster, navigare su Home > Overview > Details e ottenere l’indirizzo API del cluster.
  2. Creare un account di servizio e ottenere il token dell’account di servizio utilizzando l’interfaccia a riga di comando (CLI) di OpenShift (comando oc): Il token dell’account di servizio è la credenziale di autenticazione associata all’account di servizio. L’account di servizio viene utilizzato per autenticare il plug-in OpenShift con OpenShift. Ogni account di servizio è associato a un namespace.
  3. Configurare le autorizzazioni per l’account di servizio: Un account di servizio può avere più ruoli, e ogni ruolo consiste in autorizzazioni che definiscono quali azioni il plug-in OpenShift può eseguire su quali risorse. I ruoli sono associati tramite Role Bindings, e ci sono due tipi di Role Bindings:

    • Cluster-wide Role Binding: utilizzato per ricevere eventi da OpenShift.
    • Namespace-bound Role Binding: utilizzato per la gestione delle VM in un namespace specifico.
  4. Creare un namespace (Progetto): Un namespace in OpenShift è un ambiente isolato che raggruppa risorse come VM o reti, consentendo una migliore organizzazione e controllo degli accessi. Namespace è il termine Kubernetes, mentre Project è il termine OpenShift. Dal punto di vista del plug-in OpenShift, sono la stessa cosa. Un namespace è necessario per distribuire le VM. Utilizzare la console OpenShift o la CLI di OpenShift Container Platform per creare il namespace.
  5. Creare una definizione di allegato di rete sotto il namespace di destinazione: Le definizioni di allegato di rete specificano la configurazione di rete per le VM in esecuzione in OpenShift. Sotto Networking > NetworkAttachmentDefinitions, è possibile visualizzare le definizioni di allegato di rete per ogni namespace.
  6. Configurare le classi di archiviazione: Le classi di archiviazione definiscono come viene allocata l’archiviazione delle VM. Sotto Storage > StorageClass, è possibile configurare e visualizzare l’elenco dei provider di archiviazione.

Creare un account di servizio

  1. Scaricare ed estrarre lo strumento da riga di comando oc.
  2. Accedere alla console OpenShift utilizzando il proprio ID di accesso.
  3. Fare clic sul proprio profilo utente e fare clic su Copy login command.
  4. Fare clic su Display Token e copiare il token.
  5. Eseguire il comando di accesso utilizzando la riga di comando oc. Esempio:

    .\oc.exe login --token=<token> --server=<server address>
    <!--NeedCopy-->
    
  6. Creare un account di servizio.

    • Se si desidera creare l’account di servizio sotto il namespace predefinito, eseguire:

       .\oc.exe create sa <service account name>
       <!--NeedCopy-->
      
    • Se si desidera creare l’account di servizio sotto il proprio namespace, eseguire:

       .\oc.exe create sa <service account name> -n mynamespace
       <!--NeedCopy-->
      
  7. Creare un file YAML per il segreto. Esempio:

    • Se si crea l’account di servizio sotto il namespace predefinito:

       apiVersion: v1
       kind: Secret
       metadata:
       name: service account name
       annotations:
       kubernetes.io/service-account.name: service account name
       type: kubernetes.io/service-account-token
       <!--NeedCopy-->
      
    • Se si crea l’account di servizio sotto il proprio namespace:

      apiVersion: v1
      kind: Secret
      metadata:
      name: service account name
      namespace: mynamespace
      annotations:
      kubernetes.io/service-account.name: service account name
       type: kubernetes.io/service-account-token
       <!--NeedCopy-->
      
  8. Applicare il YAML.

    .\oc.exe apply -f <yamlFile.yaml>
    <!--NeedCopy-->
    

    Nota:

    Il comando oc descrive il segreto per ottenere il token. Il token viene utilizzato come password.

Creare ruoli e associazioni di ruoli per l’account di servizio

Con l’associazione di ruoli a livello di cluster, l’account di servizio dispone delle autorizzazioni per leggere tutti gli eventi VM in tutto il cluster, consentendo al plug-in OpenShift di mantenere un unico osservatore di eventi per tutti gli eventi relativi alle VM. Con l’associazione di ruoli del namespace, l’account di servizio dispone delle autorizzazioni per gestire le VM nel namespace di destinazione. È possibile utilizzare uno script per creare ruoli e associarli a un account di servizio. Vedere https://github.com/citrix/citrix-mcs-sdk-samples/tree/main/OpenShift/Hosting%20Connection/Role/.

Dove andare dopo

Ulteriori informazioni

Ambienti di virtualizzazione Red Hat OpenShift