Mise à jour automatique de Linux VDA via Azure
Cette fonctionnalité permet de mettre à jour automatiquement votre logiciel Linux VDA, immédiatement ou à une heure planifiée. Cela est utile lorsque vous créez des VDA Linux dans Citrix DaaS Standard pour Azure (anciennement Citrix Virtual Apps and Desktops Standard pour Azure). Vous n’avez pas besoin de privilèges d’administrateur sur les machines virtuelles dans Azure. Pour plus d’informations, consultez Créer des Linux VDA dans Citrix DaaS Standard pour Azure.
Configuration
Pour utiliser cette fonctionnalité, procédez comme suit :
Étape 1 : charger les informations de mise à jour et les nouveaux packages VDA sur votre conteneur Azure
Étape 1a : créer un conteneur sous votre compte de stockage Azure et définir le niveau d’accès à votre conteneur sur Blob (Accès en lecture anonyme pour les objets blobs uniquement)
Remarque :
Les conteneurs et objets blobs Azure sont exclusivement détenus et gérés par les clients. Citrix n’est pas responsable des problèmes de sécurité liés à ces derniers. Pour garantir la sécurité des données et la rentabilité, définissez le niveau d’accès à votre conteneur sur Privé (pas d’accès anonyme) après chaque mise à jour automatique.
Étape 1b : incorporer les informations de mise à jour de votre VDA dans un fichier JSON nommé UpdateInfo.json Pour obtenir un exemple de format de fichier, consultez le bloc suivant :
{
"Version": "21.04.200.4",
"Distributions":[
{
"TargetOS": "RHEL7_9",
"PackageName": "",
"PackageHash": ""
},
{
"TargetOS": "UBUNTU20_04",
"PackageName": "",
"PackageHash": ""
}
]
}
<!--NeedCopy-->
Où Version indique la nouvelle version du VDA et Distributions est un tableau d’objets de mise à jour. Chaque objet contient trois éléments :
- TargetOS : doit être RHEL7_9 (pour RHEL 7, CentOS 7 et Amazon Linux 2) ou UBUNTU20_04. Le démon ctxmonitord ne reconnaît aucune autre distribution.
- PackageName : nom complet du package VDA de la version spécifiée.
-
PackageHash : valeur SHA-256 que vous calculez à l’aide de la commande
shasum -a 256 <pkgname>
.
Étape 1c : charger le fichier JSON et la nouvelle version des packages Linux VDA sur votre conteneur Azure
Étape 2 : activer la fonction de mise à jour automatique sur l’image principale ou sur chaque VDA
Par défaut, la mise à jour automatique est désactivée. Si vous créez des VDA Linux dans Citrix DaaS Standard pour Azure, l’activation des fonctionnalités doit être effectuée sur l’image principale. Sinon, activez directement la fonctionnalité sur chaque VDA cible.
Pour activer la mise à jour automatique, exécutez des commandes similaires aux suivantes pour modifier la clé de registre sur HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\SelfUpdate.
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_DWORD" -v "fEnabled" -d "0x00000001" --force
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "ScheduledTime" -d "Immediately" --force
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "Url" -d "<Your-Azure-Container-Url>" --force
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "CaCertificate" -d "<Local-Certificate-Path-of-PortalAzureCom>" --force
<!--NeedCopy-->
Le tableau suivant décrit les paramètres de registre.
Paramètre de registre | Description |
---|---|
fEnabled | Ce paramètre est requis. Par défaut, la valeur est 0, ce qui signifie que la mise à jour automatique est désactivée. Vous pouvez définir ce paramètre sur 1 pour activer la mise à jour automatique. |
Url | Ce paramètre est requis. Il définit l’URL de votre conteneur Azure pour obtenir les informations de mise à jour et les nouveaux packages VDA. |
ScheduledTime | Ce paramètre est requis. Vous pouvez le définir sur Immediate ou NextStart. Immediately signifie l’exécution immédiate d’une mise à jour après le téléchargement des packages VDA. Cette option est appropriée lorsque la vitesse de téléchargement est élevée et que votre mise à jour est urgente. Toutefois, cela peut également perturber l’expérience utilisateur si des sessions actives sont en cours lorsque vous téléchargez le package. NextStart signifie l’exécution d’une mise à jour au prochain démarrage de ctxmonitord. Cette option est appropriée lorsque la vitesse de téléchargement n’est pas élevée et que votre mise à jour n’est pas urgente. |
CaCertificate | Ce paramètre est facultatif. Il définit le chemin complet d’un certificat PEM pour vérifier l’URL de votre conteneur Azure. Pour les objets blobs Azure, il peut s’agir du certificat de portal.azure.com récupéré depuis le navigateur, puis converti au format PEM. Pour des raisons de sécurité, nous vous recommandons d’ajouter ce paramètre de registre, mais il n’est PAS pris en charge sur Ubuntu ou Debian, car la commande curl ne peut pas fonctionner comme prévu lors de la vérification du pair à l’aide du fichier de certificat spécifié sur Ubuntu ou Debian. Assurez-vous de définir les principes du moindre privilège sur le certificat. |
Au redémarrage de ctxmonitord, le service interroge d’abord l’Url pour obtenir le fichier UpdateInfo.json et récupère la version de mise à jour à partir du fichier JSON. Ensuite, ctxmonitord compare la version de mise à jour avec la version actuelle. Si la version actuelle est antérieure, le service télécharge la nouvelle version du package VDA depuis Azure et l’enregistre localement. Après cela, il exécute une mise à jour en fonction du paramètre ScheduledTime. Dans un déploiement local, vous pouvez redémarrer ctxmonitord directement pour déclencher la mise à jour. Toutefois, dans Citrix DaaS Standard pour Azure, où vous ne disposez pas de privilèges d’administrateur sur les machines virtuelles, ctxmonitord ne peut être redémarré qu’après le redémarrage de la machine VDA. Si une mise à jour échoue, votre VDA est restauré à la version existante.
Remarque :
- Les paramètres de registre que vous avez configurés sur l’image principale ne peuvent pas être modifiés.
- Si toutes les machines virtuelles d’un environnement téléchargent un package en même temps, le réseau local peut être encombré.
- Pour effectuer un téléchargement à partir de l’URL fournie, vous devez installer
curl
sur la machine virtuelle cible.- Les données utilisateur sont perdues en cas d’échec d’une mise à jour et d’une restauration.
- Si une mise à jour échoue mais que la restauration réussit, les utilisateurs du même réseau peuvent avoir des versions différentes de Linux VDA. Ce cas n’est pas optimal.
- Une mise à jour prend généralement plusieurs minutes. Il n’y a pas d’indicateur d’état dans Citrix Studio.