Lors de l'utilisation du bureaux virtuels de type clone liés / instant-clone, il est conseillé de configurer Microsoft Defender afin d'améliorer la sécurité et les performances.
Problème 1: Mise à jour Lors du clonage, la base de signatures peut vite être périmée si le master n'est pas régulièrement mis à jour car Windows Update est généralement désactivé sur les pools Instant-Clones. Pour résoudre ce problème, il va falloir configurer Microsoft Defender pour qu'il récupère ses mises à jour sur un partage réseau.
Prérequis : Avoir déployer les derniers ADMX pour Windows 10/11
Sur un serveur accessible par les bureaux virtuels, créer un nouveau dossier et le partager : Utilisateurs authentifiés : Lecture
exemple : création du partage Defender$
Puis créer un sous-dossier nommé : {00000000-0000-0000-0000-000000000000}
Placer le package dans le dossier {00000000-0000-0000-0000-000000000000} puis extraire le package en ligne de commande :
mpam-fe.exe /X
Dans l'OU des bureaux virtuels, configurer une stratégie de groupe pour : "Définir l'ordre des sources pour le téléchargement des mises à jour des définitions", activer ce paramètres et le définir sur "FileShares"
"Définissez l'emplacement de la veille de sécurité pour les clients VDI", activer ce paramètres et le définir sur \\votre serveur\partage
Désormais, les bureaux virtuels récupèrent le package mis à jour chaque fois chaque fois que le dossier existant est mis à jour avec un nouveau package.
La mise à jour du package peut-être automatisé, voir article Microsoft lien
Problème 2: Scan antivirus
Afin d'éviter les possibles lenteurs au démarrage, il faut désactiver l'analyse après la mise à jour, car par défaut, un scan est automatiquement effectué.
Quant aux scans planifiés, ils sont lancés, par défaut, aléatoirement sur une plage de quatre heures. Il est possible d'activer ce paramètre pour le forcer explicitement.
Afin d'accélérer les déploiements et d'éviter les erreurs, j'ai conçu un script Powershell (basé sur un script VMware) dont le but est d'ajouter un rôle dans vCenter pour l'utilisateur vCenter avec Instant-Clones (compte défini dans Horizon).
Ce script est spécifique à vCenter 8.0 mais il peut facilement être adapté à une version antérieure. Il va créer un rôle nommé "Horizon" avec uniquement les privilèges nécessaires.
Préquis
vCenter 8.0+
Machine Windows avec VMware PowerCLI
Autorisation de lancer des scripts Powershell (Set-ExecutionPolicy)
Le compte de service vCenter utilisé par VMware Horizon nécessite un certain nombre de privilèges pour effectuer des opérations sur les clones.
Dans un environnement vSAN ou Virtual Volumes, la documentation indique qu'il faut tous les privilèges du groupe Stockage basé sur le profil (Profile Driven Storage).
Hors en vSphere 8.0, ce groupe de privilèges n'existe plus et est remplacé par le groupe Stratégies de stockage de machine virtuelle (VM storage policies).
En conséquence, il faudra ajouter ces privilèges en lieu et place de ceux spécifiés dans la documentation de VMware Horizon lien
Dans la console Horizon, il est possible de configurer une base de données d'événements, mais il est aussi possible de paramétrer un serveur Syslog ou un partage réseau pour y stocker ces informations. Toutefois, une base de données permet une analyse simplifiée avec des outils de reporting tiers ainsi qu'un affichage direct dans la console Horizon.
Syslog
Quand un serveur Syslog est paramétré, les informations de la base d'événements sont envoyées avec le protocole UDP sous forme de message et sont consignées dans le Syslog.
Les messages dans le Syslog reflètent ceux de la base d'événements. Selon l'éditeur, des notifications et des alarmes peuvent être générées.
Evénements dans le système de fichiers
Les Evénements dans le système de fichiers reflètent également ceux de la base d'événements et sont stockés par défaut au format Syslog dans le dossier "C:\ProgramData\VMware\VDM\events". Un maximum de 300MB est conservé localement. Ce répertoire peut être déplacé vers un partage réseau pour conserver une quantité supérieure de logs.
Exemple de logs sur un partage CIFS :
Il est possible de configurer cette fonction avec la commande vdmadmin :
Cet article explique comment configurer une base de données PostgreSQL sous Windows pour stocker les événements de VMware Horizon. PostgreSQL a l'avantage d’être gratuit et Open-Source.
Prérequis : - Une machine Windows Server 2016 ou 2019 (2 vCPU, 6 Go RAM) - Package d'installation PostgreSQL lien - Port TCP 5432 ouvert vers Windows Server depuis le Connection Server
Il est possible d'améliorer les performances des bureaux virtuels utilisant un vGPU en configurant deux paramètres dans ESXi et Horizon Connection Server afin d'utiliser le mode Max Performance.
Ce mode doit etre activé uniquement si un seul profil vGPU est utilisé dans le pod Horizon.
Etape 1 : Configurer la Stratégie d'attribution de GPU
Etape 2 : Activer le mode Max Performance
Se connecter sur la console du Connection Server
Ouvrir Modification ADSI
Ajouter une nouvelle connexion
Se connecter à DC=vdi, DC=vmware, DC=int sur localhost:389
Développer OU=Properties et sélectionner OU=VirtualCenter
Sur le CN, faire un clic droit, Propriétés,
Modifier l'attribut pae-NameValuePair et ajouter la valeur suivante : vc-maxperfsinglegpuprofile=1
Lors de l'optimisation de la VM master Horizon avec VMware OSOT, les fichiers de logs de l'agent Horizon dans le dossier C:\ProgramData\VMware\VDM\logs ne sont pas supprimés. Cela peut être gênant lors du debugging des bureaux virtuels ou du template interne car ces fichiers peuvent vite devenir volumineux.
Pour supprimer l'ensemble des logs, le script suivant doit être lancé en Powershell sur le master avant son extinction.
<# Arrêt des process Horizon #>
net stop tsdrvdisvc
net stop WSNM
net stop vmware_print_redir_service
net stop vmwrxgservice
net stop Spooler
net stop v4v_agent
net stop VMBlast
net stop hzMonService
net stop vmware-viewcomposer-ga
net stop ftscansvchv
net stop ftnlsv3hv
net stop vmwsprrdpsrv
taskkill /IM "scanner.exe" /F
taskkill /IM "vmwareviewclipboard.exe" /F
taskkill /IM "WSSM.exe" /F
taskkill /IM "vmwsprrdp.exe" /F
<# Suppression des fichiers de logs #>
Remove-Item C:\ProgramData\VMware\VDM\logs\* -Force -ErrorAction SilentlyContinue -Recurse
Remove-Item 'C:\ProgramData\VMware\VMware Blast\*' -Force -ErrorAction SilentlyContinue -Recurse
Le master Microsoft Windows utilisé par VMware Horizon nécessite l'installation des VMware Tools de manière personnalisée afin d'optimiser l'image.
Lors de l'installation, il est recommandé de supprimer les composants suivants:
Assistance VMware Carbon Black
Fournisseur de temps VMware
Pilote d'introspection de fichier NSX
Pilote d'introspection de réseau NSX
Détection des services
Dossiers partagés
Support de services VSS
Pour installer VMware Tools en ligne de commande de manière automatique, sans prise en charge de VMware NSX, sans reboot automatique et avec retour graphique :
Pour installer VMware Tools en ligne de commande de manière automatique, avec prise en charge de VMware NSX, sans reboot automatique et avec retour graphique :