Citrix Provisioning

Streaming de machines cibles Linux

Cet article fournit des informations sur le streaming de machines cibles Linux. Cette fonctionnalité vous permet de provisionner des bureaux virtuels Linux directement dans l’environnement Citrix Virtual Apps and Desktops. À partir de la version 2106 de Citrix Provisioning , UEFI et le démarrage sécurisé sont pris en charge.

Important :

Citrix recommande d’utiliser le package d’installation de la version actuelle, disponible dans l’exécutable de Citrix Provisioning Citrix_Provisioning_2106.iso. Utilisez le package basé sur votre distribution Linux. Citrix Provisioning Server 2106 ou version ultérieure est nécessaire pour utiliser Linux Streaming Agent 2106 et versions ultérieures.

Lorsque vous provisionnez des machines cibles Linux, tenez compte de ce qui suit :

  • Dans certains cas, le lecteur client ne peut pas être mappé à une session de machine virtuelle Linux provisionnée. Pour résoudre ce problème, arrêtez le service CDM avec service ctxcdm stop avant d’installer la machine cible Citrix Provisioning, puis exécutez la commande pvs-imager pour la convertir.
  • Le streaming Linux prend uniquement en charge Winbind en tant qu’outil de jonction à un domaine Windows. Winbind fourni par Samba 4.5 et plus récent est pris en charge, y compris les anciennes versions.
  • Si vous activez le cache RAM pour la machine Linux, définissez la taille du cache sur 8 Mo (valeur minimum). Linux utilise autant de RAM que nécessaire, y compris toute la mémoire disponible, pour le cache en écriture. La quantité spécifiée dans la console correspond à la quantité réservée d’avance. Citrix vous recommande de réserver le moins de mémoire possible, ce qui permet à Linux de gérer l’utilisation de la mémoire.
  • Le nom de la machine cible dans l’interface utilisateur de l’imageur Citrix Provisioning est généralement défini par défaut sur im\_localhost. Cette valeur doit être modifiée lorsque vous créez plusieurs vDisk. L’utilisation du même nom de machine cible entraîne l’échec de la commande imager.
  • L’installation (et les mises à jour ultérieures) doivent être effectuées en mode super utilisateur. Il y a deux façons d’installer en tant que super utilisateur :
    • Entrez le mode utilisateur dans un terminal à l’aide de la commande su.
    • Entrez sudo avant la commande. Par exemple, sudo yum install tdb-tools ; entrez sudo pour chaque commande.
  • L’horloge système du client Linux doit être synchronisée à l’aide du contrôleur Active Directory.
  • VMM n’est pas pris en charge.
  • Le lecteur cache en écriture doit avoir le libellé PVS_Cache pour pouvoir être utilisé en tant que cache en écriture. La partition entière est utilisée.
  • La localisation en anglais est affichée sur les installations autres que l’anglais.
  • SELinux n’est pas pris en charge.
  • Les cibles exécutées sur XenServer doivent tourner en mode HVM.
  • Après le démarrage d’une machine cible Linux, un message d’avertissement peut s’afficher dans le navigateur d’alerte SELinux.
  • Les distributions Linux suivantes sont prises en charge :
    • Ubuntu 16.04
    • Ubuntu 18.04
    • Ubuntu 20.04
    • Red Hat Enterprise Linux 8.3
  • Deux machines virtuelles Ubuntu 18.04 ou Ubuntu 20.04 streamées hébergées sur ESXi obtiennent la même adresse IP via DHCP. Pour résoudre ce problème, configurez la machine virtuelle pour qu’elle utilise l’adresse MAC comme ID unique pour récupérer une adresse IP via DHCP.
  • Sur Ubuntu 18.04, une erreur peut apparaître lors de l’installation du package d’installation : dracut-install: Failed to find module ‘crc32c’. Il s’agit d’un problème connu d’Ubuntu 18.04. Pour le résoudre, ajoutez le commentaire add_drivers+=”crc32c” dans /etc/dracut.conf.d/10-debian.conf et réinstallez le package.
  • Créez un vDisk à l’aide du démarrage UEFI à partir d’une machine virtuelle principale utilisant le démarrage UEFI.
  • Pour utiliser le démarrage sécurisé pour une VM streamée, la VM principale qui crée le vDisk n’a pas besoin d’activer le démarrage sécurisé.
  • La gestion des mots de passe Active Directory peut ne pas fonctionner lorsque l’unité de transmission maximale Ethernet (MTU) est définie sur moins de 877 octets sur le serveur de provisioning.

Options d’installation

Pour installer le composant de streaming Linux, vous devez avoir ouvert une session en tant qu’administrateur. Lors de l’installation, n’oubliez pas que les commandes suivantes doivent être émises dans un shell root ou avec des privilèges sudo.

Installer un certificat auto-signé

Un certificat auto-signé doit être créé pour les machines cibles Linux Citrix Provisioning streamées. Le serveur SOAP utilise une connexion SSL qui requiert que vous configuriez un certificat X.509 sur le serveur SOAP.

L’autorité de certification du certificat doit également être présente sur le serveur Provisioning Server et la machine cible Linux. Pour plus d’informations sur la création d’un certificat auto-signé, reportez-vous à la section Création de certificats auto-signés pour le streaming Linux.

Utilisez les commandes suivantes pour installer un certificat auto-signé :

  • Ubuntu :
sudo cp certificate.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
  • RHEL :
sudo yum install ca-certificates
sudo update-ca-trust force-enable
sudo cp certificate.crt /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust extract

Utilisez trust list pour vérifier si le certificat est correctement installé.

Installer le package de streaming Linux

Pour les distributions Ubuntu 16.04 :

apt-get -y install dracut dracut-network
dpkg -r nbd-client
dpkg -i pvs_<version>_ubuntu16.04_amd64.deb
apt-get -fy install

Pour les distributions Ubuntu 18.04 :

apt-get -y install dracut dracut-network
apt-get -y install pvs_<version>_ubuntu18.04_amd64.deb

Pour les distributions Ubuntu 20.04 :

apt-get -y install pvs_<version>_ubuntu20.04_amd64.deb`

Pour les distributions RHEL 8.3 :

yum --nogpgcheck localinstall pvs_<version>_rhel8.3_x86_64.rpm

Utilisation de l’interface utilisateur pour créer une image principale de Linux

Pour appeler l’interface utilisateur de manière à installer cette fonctionnalité :

  1. Ouvrez une session en tant qu’administrateur.
  2. Exécutez la commande suivante :

    pvs-imager

Conseil :

Si la commande pvs-imager échoue en raison d’un problème avec le nom d’hôte, vérifiez que votre configuration réseau est correcte. Ne définissez pas le nom d’hôte du système sur localhost. Sur RHEL 8.3, connectez-vous avec le serveur d’affichage X11 au lieu de Wayland pour utiliser l’interface graphique. PyQt5 ou python3-pyqt5 est nécessaire pour utiliser l’interface graphique.

Après l’exécution de la commande, l’interface utilisateur s’affiche :

Outil d'imagerie de provisioning

Utiliser l’interface de ligne de commande pour installer la fonctionnalité de streaming Linux

Pour appeler la ligne de commande pour installer cette fonctionnalité :

  1. Ouvrez une session en tant qu’administrateur.
  2. Exécutez la commande suivante :

    pvs-imager -C

L’installation par ligne de commande comprend deux options :

  • \-C vous permet de créer un vDisk
  • \-U vous permet de mettre à jour un vDisk existant

Les informations suivantes ci-dessous illustrent des options d’installation non GUI pour la fonctionnalité de streaming Linux :

Usage: ./pvs-imager [-hCU] [-a|--address=<IPaddr>] [-u|--username=<username>] [-p|--password=<password>] [-P|--port=<port>] [-d|--domain=<domain] [-S|--store=<store>] [-v|--vdisk=<vdisk name>] [-s|--size=<vdisk size] [-D|--device=<sourceDevice>] [-c|--collection=<collection>] [-n|--name=<name>]
 Non-GUI Modes:
  -C      -  Create a new vDisk
    ---OR----
  -U      -  Update an existing vDisk

 General Options:
  -a <server IP> -  Address or hostname of PVS server
  -u <username>  -  Username for API login
  -p <password>  -  Password for API login
  -d <domain>   -  AD domain for API login
  -P <port>    -  Base port for API login (default: 54321)
  -S <store>   -  Store containing vDisk
  -c <collection> -  Collection to store imaging device in
  -n <name>    -  Device name for imaging device
  -v <name>    -  vDisk name
  -s <size>    -  vDisk size (Create Mode only, default: sourceDevice size)
  -D <sourceDev> -  devnode to clone
  -V       -  increment debug verbosity (up to 5 times)
  -g <grubMode>  -  Supported Grub settings ('debug')

Les systèmes de fichiers pris en charge pour la création d’images sont ext4, xfs ou btrfs.

Conseil :

Les journaux de débogage de pvs-imager, créés à l’aide du commutateur -VVVVV, sont créés dans le dossier qui a exécuté l’outil pvs-imager. Le nom du fichier journal est pvs-imager.log.

À propos de la mise en cache du disque

Pour la mise en cache sur disque dur ou la mise en cache du dépassement sur disque dur sans l’Assistant d’installation Citrix Virtual Apps and Desktops, formatez le disque de la machine cible avec une partition formatée. Incluez le libellé PVS_Cache. Cet objet peut être créé avec la commande mkfs –L PVS_Cache sur la machine cible. Tout système de fichiers sensible à la casse peut être utilisé pour le cache, mais XFS est recommandé.

Conseil :

Un administrateur peut créer une logique de sélection de disque cache pour son environnement en écrivant un script bash qui s’exécute au démarrage. Le script recherche un périphérique cache à l’aide du mécanisme le plus adapté à l’environnement, en exécutant mkfs sur ce dernier et en redémarrant.

Lors de la configuration de la mise en cache de disque :

  • Citrix recommande d’utiliser l’assistant d’installation de Citrix Virtual Apps and Desktops pour créer la machine cible Linux.
  • La création manuelle de l’étiquette nécessite le respect de la casse pour éviter les conflits de configuration.
  • Vous pouvez également utiliser la méthode manuelle pour créer le cache d’écriture.

Création manuelle du cache d’écriture pour une machine cible

Par défaut, l’assistant d’installation de Citrix Virtual Apps and Desktops ignore les lecteurs attachés au modèle actuel. L’assistant crée un cache d’écriture en fonction des paramètres que vous fournissez. Parfois, le lecteur de cache d’écriture rencontre des problèmes lors de la création automatique à l’aide de l’assistant, ou lorsque la machine cible se replie continuellement sur le cache côté serveur à la suite d’un problème avec le lecteur créé. Pour résoudre ces problèmes, créez manuellement l’objet à l’aide de la commande mkfs –L PVS_Cache sur la machine cible.

L’assistant d’installation de Citrix Virtual Apps and Desktops reconnaît par défaut les modifications apportées au cache d’écriture créé manuellement pour la machine cible lorsque vous utilisez le paramètre UseTemplatecache. Sur le serveur de provisioning exécutant l’assistant d’installation de Citrix Virtual Apps and Desktops ou sur l’emplacement sur lequel pointe la console de provisioning distante, modifiez le paramètre de registre :

  1. Créez la clé de registre suivante sur la machine de console de provisioning pour désactiver le cache de modèle :

HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\ProvisioningServices

Name: UseTemplateCache

Type: DWORD

Value: 0

  1. Exécutez l’assistant de configuration de Citrix Virtual Apps and Desktops. Sur la page Machines virtuelles, modifiez la taille du disque de cache d’écriture local à 0 Go (la valeur par défaut est 6 Go).