Linux Virtual Delivery Agent

Créer un Linux VDA non joint à un domaine à l’aide d’Easy Install (Technical Preview)

Cet article explique comment utiliser Easy Install pour créer un Linux VDA non joint à un domaine dans Citrix DaaS.

Important :

Étape 1 : Créer un catalogue de machines

Créez un catalogue de machines vide ne contenant aucune machine. Par exemple, utilisez Citrix Remote PowerShell SDK et exécutez la commande suivante pour créer le catalogue de machines vide Your-Catalog-name prenant en charge les machines avec système d’exploitation mono-session.

New-BrokerCatalog -AllocationType 'Static' -Description 'Your description' -MinimumFunctionalLevel 'L7_20' -Name 'Your-catalog-name' -SessionSupport 'SingleSession' -PersistUserChanges 'OnLocal' -ProvisioningType 'Manual' -MachinesArePhysical $true
<!--NeedCopy-->

Conservez un enregistrement de l’UUID du catalogue créé. L’UUID est nécessaire lorsque vous créez un jeton d’inscription ultérieurement.

Le processus de création de catalogues de machines et d’ajout de machines Linux VDA est similaire à l’approche traditionnelle avec les VDA Windows. Pour obtenir une description plus détaillée de la méthode à utiliser pour effectuer ces tâches, consultez les sections Créer des catalogues de machines et Gérer des catalogues de machines.

Pour la création de catalogues de machines contenant des machines Linux VDA, il existe quelques restrictions qui différencient ce processus de la création de catalogues de machines pour VDA Windows :

  • Pour le système d’exploitation, sélectionnez :

    • L’option OS à sessions multiples pour un modèle de mise à disposition de bureaux partagés hébergés.
    • l’option OS mono-session pour un modèle de mise à disposition de bureaux dédiés VDI.
  • Ne combinez pas de machines Linux VDA et Windows dans le même catalogue de machines.
  • Ne mélangez pas des machines jointes et non jointes à un domaine dans le même catalogue de machines.
  • Les catalogues de machines Remote PC Access sont pris en charge pour les machines jointes à un domaine uniquement et ne sont pas pris en charge pour les machines non jointes à un domaine.

Remarque :

Les versions antérieures de Citrix Studio ne prenaient pas en charge la notion de « système d’exploitation Linux ». Toutefois, la sélection de l’option OS de serveur Windows ou OS de serveur implique un modèle de mise à disposition équivalent de bureaux partagés hébergés. La sélection de l’option OS de bureau Windows ou OS de bureau implique un modèle de mise à disposition d’un utilisateur unique par machine.

Étape 2 : créer un jeton d’inscription VDA

Pour créer un VDA non joint à un domaine à l’aide d’Easy Install, vous avez besoin d’un fichier de jeton pour inscrire le VDA dans un catalogue de machines et l’authentifier auprès du plan de contrôle Citrix Cloud. Le Linux VDA ne prend pas en charge l’utilisation d’un fichier de jetons pour l’inscription à un catalogue de machines à alimentation gérée.

Pour créer un jeton d’inscription, envoyez un message HTTP POST à l’URL semblable au message suivant : [DdcServerAddress]/citrix/orchestration/api/techpreview/{customerid}/{siteid}/enrollments.

POST https://[DdcServerAddress]/citrix/orchestration/api/techpreview/[customerid]/[siteid]/enrollments HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
Authorization: Bearer <bearer-token>

{
  "TokenName": "string",
  "IssuedToUser": "string",
  "ExpirationDate": "2023-10-13T08:00:25.796Z",
  "NotValidBeforeDate": "2023-10-13T08:00:25.796Z",
  "NumMachinesAllowed": number,
  "CatalogId": "string"
}
<!--NeedCopy-->

Dans le message HTTP POST, définissez CatalogId sur l’UUID du catalogue de machines que vous avez créé précédemment et définissez [DdcServerAddress] sur l’une des valeurs suivantes si nécessaire :

  • Commercial https://[customerid].xendesktop.net
  • Japon https://[customerid].apps.citrixworkspacesapi.jp
  • Gouvernement https://[customerid].xendesktop.us

Étape 3 : Installation de .NET

Avant d’installer Linux VDA, installez .NET en fonction de votre distribution Linux :

  • Installez le runtime .NET 8.0 sur toutes les distributions Linux prises en charge à l’exception de RHEL 7.9 et d’Amazon Linux 2.
  • Pour RHEL 7.9 et Amazon Linux 2, poursuivez l’installation du runtime .NET 6.0.

Si votre distribution Linux contient la version .NET dont vous avez besoin, installez-la à partir du flux intégré. Sinon, installez .NET à partir du flux de packages Microsoft. Pour plus d’informations, consultez https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers.

Après avoir installé le runtime .NET, exécutez la commande which dotnet pour trouver le chemin d’exécution.

En fonction de la sortie de la commande, définissez le chemin binaire de .NET Runtime. Par exemple, si la sortie de la commande est /aa/bb/dotnet, utilisez /aa/bb comme chemin binaire .NET.

Étape 4 : télécharger le package Linux VDA

  1. Accédez à la page de téléchargement de Citrix Virtual Apps and Desktops.
  2. Développez la version appropriée de Citrix Virtual Apps and Desktops.
  3. Développez Components pour trouver le Linux VDA. Par exemple :

    Composants pour Citrix Virtual Apps and Desktops

  4. Cliquez sur le lien Linux VDA pour accéder aux téléchargements de Linux VDA.

    Téléchargements de Linux VDA

  5. Téléchargez le package Linux VDA correspondant à votre distribution Linux.

  6. Téléchargez la clé publique GPG que vous pouvez utiliser pour vérifier l’intégrité du package Linux VDA. Par exemple :

    Clé publique GPG

    Pour vérifier l’intégrité du package Linux VDA à l’aide de la clé publique :

    • Pour un package RPM, exécutez les commandes suivantes pour importer la clé publique dans la base de données RPM et vérifier l’intégrité du package :

       rpmkeys --import <path to the public key>
       rpm --checksig --verbose <path to the Linux VDA package>
       <!--NeedCopy-->
      
    • Pour un package DEB, exécutez les commandes suivantes pour importer la clé publique dans la base de données DEB et vérifier l’intégrité du package :

       sudo apt-get install dpkg-sig
       gpg --import <path to the public key>
       dpkg-sig --verify <path to the Linux VDA package>
       <!--NeedCopy-->
      

Étape 5 : installer le package VDA Linux

Exécutez les commandes suivantes pour configurer l’environnement du Linux VDA.

Pour les distributions Amazon Linux 2, CentOS, RHEL et Rocky Linux :

Remarque :

  • Pour RHEL et CentOS, vous devez installer le référentiel EPEL avant de pouvoir installer le Linux VDA. Pour plus d’informations sur l’installation d’EPEL, consultez les instructions de la page https://docs.fedoraproject.org/en-US/epel/.

  • Avant d’installer Linux VDA sur RHEL 9.3/9.2/9.0 et Rocky Linux 9.3/9.2/9.0, mettez à jour le package libsepol vers la version 3.4 ou ultérieure.

sudo yum  -y localinstall   <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

Remarque :

Après avoir installé le Linux VDA sur RHEL 8.x/9.x et Rocky Linux 8.x/9.x hébergés sur GCP, la connexion Ethernet peut être perdue et le Linux VDA peut être inaccessible après le redémarrage d’une machine virtuelle. Pour contourner ce problème, définissez un mot de passe racine lorsque vous vous connectez à la VM pour la première fois et assurez-vous que vous pouvez vous connecter à la VM en tant qu’utilisateur racine. Exécutez ensuite les commandes suivantes dans la console après avoir redémarré la VM :

nmcli dev connect eth0
systemctl restart NetworkManager
<!--NeedCopy-->

Pour les distributions Ubuntu/Debian :

sudo dpkg -i <PATH>/<Linux VDA deb>
sudo apt-get install -f
<!--NeedCopy-->

Remarque :

  • Pour installer les dépendances nécessaires pour une distribution Debian 11, ajoutez la ligne deb http://deb.debian.org/debian/ bullseye main au fichier /etc/apt/sources.list.

  • Pour Ubuntu 20.04 sur GCP, désactivez RDNS. Pour ce faire, ajoutez la ligne rdns = false sous [libdefaults] dans /etc/krb5.conf.

Pour les distributions SUSE :

  1. Pour SUSE 15.5 sur AWS, Azure et GCP, assurez-vous que :

    • Vous utilisez libstdc++6 version 12 ou ultérieure.
    • Le paramètre Default_WM dans /etc/sysconfig/windowmanager est défini sur « gnome ».
  2. Exécutez la commande suivante pour installer le Linux VDA :

    zypper -i install <PATH>/<Linux VDA RPM>
    <!--NeedCopy-->
    

Étape 6 : installer les pilotes NVIDIA GRID

Pour activer HDX 3D Pro, vous devez installer les pilotes NVIDIA GRID sur votre hyperviseur et sur la machine VDA.

Pour installer et configurer le gestionnaire de GPU virtuel NVIDIA GRID (pilote hôte) sur les hyperviseurs spécifiques, consultez les guides suivants :

Pour installer et configurer les pilotes de VM invitée NVIDIA GRID, effectuez les opérations générales suivantes :

  1. Assurez-vous que la VM invitée est arrêtée.
  2. Dans le panneau de configuration de l’hyperviseur, attribuez un GPU à la VM.
  3. Démarrez la VM.
  4. Installez le pilote de VM invitée sur la VM.

Étape 7 : spécifier la base de données à utiliser

Vous pouvez spécifier le système SQLite ou PostgreSQL à utiliser en modifiant /etc/xdl/db.conf après avoir installé le package Linux VDA.

Pour ce faire, modifiez /etc/xdl/db.conf avant d’exécuter sudo /opt/Citrix/VDA/sbin/ctxinstall.sh ou /opt/Citrix/VDA/bin/easyinstall.

Remarque :

  • Nous vous recommandons d’utiliser SQLite uniquement pour le mode VDI.
  • Pour Easy Install et MCS, vous pouvez spécifier SQLite ou PostgreSQL sans avoir à les installer manuellement. Sauf indication contraire dans /etc/xdl/db.conf, le Linux VDA utilise PostgreSQL par défaut.
  • Vous pouvez également utiliser /etc/xdl/db.conf pour configurer le numéro de port de PostgreSQL.

Étape 8 : terminez l’installation en exécutant Easy Install pour configurer l’environnement et le VDA

Après l’installation du package Linux VDA, configurez l’environnement d’exécution à l’aide du script ctxinstall.sh.

Remarque :

Avant de configurer l’environnement d’exécution, assurez-vous que les paramètres régionaux en_US.UTF-8 sont installés dans votre système d’exploitation. Si les paramètres régionaux ne sont pas disponibles dans votre système d’exploitation, exécutez la commande sudo locale-gen en_US.UTF-8. Pour Debian, modifiez le fichier /etc/locale.gen en supprimant les marques de commentaire de la ligne # en_US.UTF-8 UTF-8, puis exécutez la commande sudo locale-gen.

ctxinstall.sh

Le script Easy Install ctxinstall.sh permet d’effectuer certaines préconfigurations et de configurer le VDA exécutant des variables d’environnement.

  • Seul un accès racine peut exécuter ce script.

  • Easy Install utilise le fichier de configuration “/opt/Citrix/VDA/sbin/ctxinstall.conf” pour définir, enregistrer et synchroniser les valeurs de toutes les variables d’environnement utilisées. Nous vous recommandons de lire attentivement le modèle (ctxinstall.conf.tmpl), puis de personnaliser votre propre fichier “ctxinstall.conf”. Lorsque vous créez le fichier de configuration pour la première fois, utilisez l’une des méthodes suivantes :
    • Copiez le fichier de modèle /opt/Citrix/VDA/sbin/ctxinstall.conf.tmpl et enregistrez-le sous /opt/Citrix/VDA/sbin/ctxinstall.conf.
    • Exécutez ctxinstall.sh. Chaque fois que vous exécutez ctxinstall.sh, votre entrée est enregistrée dans /opt/Citrix/VDA/sbin/ctxinstall.conf.
  • Easy Install permet un fonctionnement modulaire. Les modules incluent la pré-vérification, l’installation, la configuration de domaine, la configuration et la vérification.

  • Les détails de débogage de ce script se trouvent dans le fichier “/var/log/xdl/ctxinstall.log”.

Pour plus d’informations, utilisez la commande d’aide ctxinstall.sh -h.

Remarque :

  • Respectez le principe du moindre privilège et assurez-vous que seul l’utilisateur racine peut lire /opt/Citrix/VDA/sbin/ctxinstall.conf ; en effet, le mot de passe permettant de joindre domaine peut être défini dans le fichier.
  • La désinstallation du Linux VDA supprime les fichiers situés sous /opt/Citrix/VDA. Nous vous recommandons de sauvegarder /opt/Citrix/VDA/sbin/ctxinstall.conf avant de désinstaller le VDA.

Vous pouvez exécuter ctxinstall.sh en mode interactif ou en mode silencieux. Avant d’exécuter le script, définissez les variables d’environnement suivantes :

  • CTX_XDL_NON_DOMAIN_JOINED=’Y|N’ : indique s’il faut associer la machine à un domaine . La valeur par défaut est “n”. Pour les scénarios de non-appartenance à un domaine, définissez la variable sur « y ».

  • CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE=’<path-to-token-file-on-vda-machine>’ : pour créer un VDA non joint à un domaine en utilisant Easy Install, vous avez besoin d’un fichier de jeton pour inscrire le VDA dans un catalogue de machines du Delivery Controller. Enregistrez le jeton dans un fichier avec des droits d’accès minimaux sous un chemin approprié.

  • CTX_XDL_VDI_MODE=’y|n’ : indique si la machine est configurée comme modèle de mise à disposition de bureaux dédiés (VDI) ou comme modèle de mise à disposition de bureaux partagés hébergés. Pour les environnements HDX 3D Pro, définissez cette valeur sur ‘y’.
  • CTX_XDL_HDX_3D_PRO=’y|n’ : Linux VDA prend en charge HDX 3D Pro, un ensemble de technologies d’accélération GPU conçues pour optimiser la virtualisation des applications riches en graphiques. Si HDX 3D Pro est sélectionné, le VDA doit être configuré pour le mode Bureaux VDI (session unique), c’est-à-dire, CTX_XDL_VDI_MODE=’y’.

  • CTX_XDL_START_SERVICE=’y|n’ : indique si les services Linux VDA sont lancés une fois la configuration de Linux VDA terminée.

  • CTX_XDL_REGISTER_SERVICE=’y|n’ : les services Linux Virtual Desktop sont lancés après le démarrage de la machine.

  • CTX_XDL_ADD_FIREWALL_RULES=’y|n’ : les services Linux Virtual Desktop requièrent que les connexions réseau entrantes soient autorisées via le pare-feu du système. Vous pouvez ouvrir automatiquement les ports requis (par défaut, les ports 80 et 1494) dans le pare-feu du système pour Linux Virtual Desktop.

  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/mate : spécifie l’environnement de bureau GNOME, GNOME Classic ou MATE à utiliser dans les sessions. Si vous ne spécifiez pas la variable, le bureau par défaut configuré sur le VDA est utilisé.

  • CTX_XDL_DOTNET_RUNTIME_PATH=’<path-to-install-dotnet-runtime>’ : chemin d’installation du runtime .NET pour la prise en charge du nouveau Broker Agent Service (ctxvda). Le chemin d’accès par défaut est ‘/usr/bin’.

  • CTX_XDL_VDA_PORT=’<port-number>’ : le Linux VDA communique avec les Delivery Controller via un port TCP/IP.

Considérations

  • Vous pouvez également modifier l’environnement de bureau d’un utilisateur de session cible en procédant comme suit :

    1. Créez un fichier .xsession ou .Xclients sous le répertoire $HOME/<username> sur le VDA. Si vous utilisez Amazon Linux 2, créez un fichier .Xclients. Si vous utilisez d’autres distributions, créez un fichier .xsession.
    2. Modifiez le fichier .xsession ou .Xclients pour spécifier un environnement de bureau basé sur les distributions.

      • Pour le bureau MATE

         MSESSION="$(type -p mate-session)"  
         if [ -n "$MSESSION" ]; then  
         exec mate-session  
         fi
         <!--NeedCopy-->
        
      • Pour le bureau GNOME Classic

         GSESSION="$(type -p gnome-session)"  
         if [ -n "$GSESSION" ]; then  
         export GNOME_SHELL_SESSION_MODE=classic  
         exec gnome-session --session=gnome-classic  
         fi  
         <!--NeedCopy-->
        
      • Pour le bureau GNOME

         GSESSION="$(type -p gnome-session)"  
         if [ -n "$GSESSION" ]; then  
         exec gnome-session  
         fi  
         <!--NeedCopy-->
        
    3. Partagez l’autorisation de fichier 700 avec l’utilisateur de la session cible.

    À partir de la version 2209, les utilisateurs de session peuvent personnaliser leurs environnements de bureau. Pour activer cette fonctionnalité, vous devez installer au préalable des environnements de bureau commutables sur le VDA. Pour plus d’informations, consultez Environnements de bureau personnalisés par utilisateurs de session.

Mode interactif

Pour exécuter le script ctxinstall.sh en mode interactif, exécutez la commande sudo /opt/Citrix/VDA/sbin/ctxinstall.sh sans l’option -S. Entrez la valeur de variable appropriée à chaque invite dans l’interface de ligne de commande. Si une variable est déjà définie, ctxinstall.sh demande une confirmation au cas où vous souhaiteriez la modifier.

Mode silencieux

En mode silencieux, vous devez définir les variables précédentes à l’aide de /opt/Citrix/VDA/sbin/ctxinstall.conf ou de la commande export. Exécutez ensuite ctxinstall.sh -S (notez que la lettre S est ici en majuscules). Si toutes les variables requises ne sont pas définies ou si certaines valeurs ne sont pas valides, ctxinstall.sh interrompt l’exécution, sauf s’il existe des valeurs par défaut.

Si vous le définissez, la valeur exportée pour chaque variable remplace la valeur de /Citrix/VDA/sbin/ctxinstall.conf. Toutes les valeurs mises à jour sont enregistrées dans /Citrix/VDA/sbin/ctxinstall.conf.

export CTX_XDL_NON_DOMAIN_JOINED='y'
export CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE='<token-file-path>'
export CTX_XDL_VDI_MODE='y|n'
export CTX_XDL_START_SERVICE='y|n'
export CTX_XDL_REGISTER_SERVICE='y|n'
export CTX_XDL_ADD_FIREWALL_RULES='y|n'
export CTX_XDL_HDX_3D_PRO='y|n'
export CTX_XDL_DESKTOP_ENVIRONMENT= gnome | gnome-classic | mate | '<none>'
export CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>'
export CTX_XDL_VDA_PORT='<port-number>'
sudo -E /opt/Citrix/VDA/sbin/ctxinstall.sh -S
<!--NeedCopy-->

Lors de l’exécution de la commande sudo, entrez l’option -E pour transmettre les variables d’environnement au nouveau shell créé. Nous vous recommandons de créer un fichier de script shell à partir des commandes précédentes avec #!/bin/bash en tant que première ligne.

Vous pouvez également spécifier toutes les variables à l’aide d’une seule commande.

Pour configurer les variables d’environnement d’exécution du VDA (celles commençant par CTX_XDL_), vous pouvez exécuter ctxinstall.sh -s (notez que la lettre s est ici en minuscules).

Étape 9 : exécuter XDPing

Exécutez sudo /opt/Citrix/VDA/bin/xdping pour vérifier les problèmes de configuration courants avec un environnement VDA Linux. Pour de plus amples informations, consultez la section XDPing.

Étape 10 : exécuter le Linux VDA

Démarrer Linux VDA :

Pour démarrer les services Linux VDA :

sudo systemctl start ctxhdx.service

sudo systemctl start ctxvda.service
<!--NeedCopy-->

Arrêter Linux VDA :

Pour arrêter les services Linux VDA :

sudo systemctl stop ctxvda.service

sudo systemctl stop ctxhdx.service
<!--NeedCopy-->

Remarque :

Avant d’arrêter les services ctxvda et ctxhdx, exécutez la commande systemctl stop ctxmonitord pour arrêter le démon du service de surveillance. Sinon, le démon du service de surveillance redémarre les services que vous avez arrêtés.

Redémarrer Linux VDA :

Pour redémarrer les services Linux VDA :

sudo systemctl stop ctxvda.service

sudo systemctl restart ctxhdx.service

sudo systemctl start ctxvda.service
<!--NeedCopy-->

Vérifier l’état de Linux VDA :

Pour vérifier l’état de fonctionnement des services de Linux VDA :

sudo systemctl status ctxvda.service

sudo systemctl status ctxhdx.service
<!--NeedCopy-->

Étape 11 : créer des groupes de mise à disposition

Le processus de création d’un groupe de mise à disposition et d’ajout de catalogues de machines contenant des machines Linux VDA est presque identique aux machines VDA Windows. Pour obtenir une description plus détaillée de la méthode à utiliser pour effectuer ces tâches, consultez la section Créer des groupes de mise à disposition.

Lors de la création de groupes de mise à disposition qui contiennent des catalogues de machines Linux VDA, les restrictions suivantes s’appliquent :

  • Assurez-vous que les utilisateurs et les groupes AD que vous sélectionnez ont été correctement configurés pour l’ouverture de session sur les machines Linux VDA.
  • N’autorisez pas l’ouverture de session d’utilisateurs non authentifiés (anonymes).
  • Ne combinez pas le groupe de mise à disposition avec des catalogues de machines contenant des machines Windows.

Important :

La publication d’applications est prise en charge avec la version 1.4 de Linux VDA et les versions supérieures. Toutefois, le Linux VDA ne prend pas en charge la mise à disposition de bureaux et d’applications sur la même machine.

Pour plus d’informations sur la création de catalogues de machines et de groupes de mise à disposition, consultez Citrix Virtual Apps and Desktops 7 2402 LTSR.