Citrix Virtual Apps and Desktops

Gérer un catalogue Microsoft Azure

Gérer les catalogues de machines décrit les assistants qui permettent de gérer un catalogue de machines. Les informations suivantes couvrent les détails spécifiques aux environnements de cloud Microsoft Azure Resource Manager.

Remarque :

Avant de gérer un catalogue Microsoft Azure, vous devez terminer de créer un catalogue Microsoft Azure. Voir Créer un catalogue Microsoft Azure.

Convertir un catalogue de machines non basé sur un profil de machine vers un catalogue de machines basé sur un profil de machine

Vous pouvez utiliser une machine virtuelle ou une spécification de modèle comme entrée de profil de machine pour convertir un catalogue de machines non basé sur un profil de machine vers un catalogue de machines basé sur un profil de machine. Les machines virtuelles existantes et les nouvelles machines virtuelles ajoutées au catalogue utilisent les valeurs des propriétés du profil de la machine à moins qu’elles ne soient remplacées par des propriétés personnalisées explicites.

Remarque :

Un catalogue de machines existant basé sur un profil de machine ne peut pas être remplacé par un catalogue de machines non basé sur un profil de machine.

Pour ce faire :

  1. Créez un catalogue de machines persistant ou non persistant avec des machines virtuelles et sans profil de machine.
  2. Ouvrez la fenêtre PowerShell.
  3. Exécutez la commande Set-ProvScheme pour appliquer les valeurs des propriétés du profil de machine aux nouvelles machines virtuelles ajoutées au catalogue de machines. Par exemple :

    Set-ProvScheme = Set-ProvScheme -ProvisioningSchemeName xxxx -MachineProfile XDHyp:\HostingUnits<HostingUnitName>\machineprofile.folder<ResourceGroupName><TemplateSpecName><VersionName>
    <!--NeedCopy-->
    
  4. Exécutez la commande Set-ProvVMUpdateTimeWindow pour appliquer les valeurs des propriétés du profil de machine aux machines virtuelles existantes du catalogue de machines. Par exemple :

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName xxxx -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  5. Redémarrez les machines virtuelles existantes pour obtenir les valeurs des propriétés à partir du profil de la machine.

Conserver une machine virtuelle provisionnée lors des cycles d’alimentation

Indiquez si vous souhaitez conserver une machine virtuelle provisionnée lors des cycles d’alimentation. Utilisez le paramètre PowerShell New-ProvScheme CustomProperties. Ce paramètre prend en charge une propriété supplémentaire PersistVm, utilisée pour déterminer si une machine virtuelle provisionnée persiste en cas de cycle d’alimentation. Définissez la propriété PersistVm sur true pour conserver une machine virtuelle lorsqu’elle est mise hors tension, ou définissez la propriété sur false pour garantir que la machine virtuelle n’est pas conservée lorsqu’elle est mise hors tension.

Remarque :

La propriété PersistVm s’applique uniquement à un schéma de provisioning dont les propriétés CleanOnBoot et UseWriteBackCache sont activées. Si la propriété PersistVm n’est pas spécifiée pour les machines virtuelles non persistantes, elles sont supprimées de l’environnement Azure lorsqu’elles sont mises hors tension.

Dans l’exemple suivant, le paramètre New-ProvScheme CustomProperties définit la propriété PersistVm sur true :

<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS" />
<Property xsi:type="StringProperty" Name="PersistWBC" Value="false" />
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="true" />
<Property xsi:type="StringProperty" Name="PersistVm" Value="true" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="demo-resourcegroup" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
</CustomProperties>
<!--NeedCopy-->

Dans l’exemple suivant, le paramètre New-ProvScheme CustomProperties préserve le cache en écriture en définissant PersistVM sur true :

 New-ProvScheme
 -AzureAdJoinType "None"
 -CleanOnBoot
 -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageType`" Value=`"Standard_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"false`" /><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"PersistVm`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"demo-resourcegroup`" /><Property xsi:type=`"StringProperty`" Name=`"LicenseType`" Value=`"Windows_Client`" /></CustomProperties>"
 -HostingUnitName "demo"
 -IdentityPoolName "NonPersistent-MCSIO-PersistVM"
 -MasterImageVM "XDHyp:\HostingUnits\demo\image.folder\scale-test.resourcegroup\demo-snapshot.snapshot"
 -NetworkMapping @ {"0"="XDHyp:\HostingUnits\demo\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\ji-test.resourcegroup\jitest-vnet.virtualprivatecloud\default.network"}
-ProvisioningSchemeName "NonPersistent-MCSIO-PersistVM"
 -ServiceOffering "XDHyp:\HostingUnits\demo\serviceoffering.folder\Standard_B2ms.serviceoffering" -UseWriteBackCache
 -WriteBackCacheDiskSize 127
 -WriteBackCacheMemorySize 256
 <!--NeedCopy-->

Conseil :

La propriété PersistVm détermine si une machine virtuelle provisionnée doit être conservée. La propriété PersistOsdisk détermine si le disque du système d’exploitation doit être conservé. Pour conserver une machine virtuelle provisionnée, conservez d’abord le disque du système d’exploitation. Ne supprimez pas le disque du système d’exploitation sans supprimer au préalable la machine virtuelle. Vous pouvez utiliser la propriété PersistOsdisk sans spécifier le paramètre PersistVm.

Changer le type de stockage vers un niveau inférieur lorsqu’une machine virtuelle est arrêtée

Vous pouvez réduire les coûts de stockage en changeant le type de stockage d’un disque géré vers un niveau inférieur lorsque vous arrêtez une machine virtuelle. Pour ce faire, utilisez la propriété personnalisée StorageTypeAtShutdown.

Le type de stockage du disque passe à un niveau inférieur (comme spécifié dans la propriété personnalisée StorageTypeAtShutdown) lorsque vous arrêtez la machine virtuelle. Une fois la machine virtuelle sous tension, l’état d’origine du type de stockage est rétabli (comme spécifié dans la propriété personnalisée StorageType ou la propriété personnalisée WBCDiskStorageType).

Important :

Le disque n’existe pas tant que la machine virtuelle n’a pas été pas mise sous tension au moins une fois. Par conséquent, vous ne pouvez pas modifier le type de stockage lors de la première mise sous tension de la machine virtuelle.

Exigences

  • Applicable à un disque géré. Cela implique que vous définissiez la propriété personnalisée UseManagedDisks sur true.
  • Applicable à un catalogue persistant et non persistant avec un disque de système d’exploitation persistant. Cela implique que vous définissiez la propriété personnalisée persistOsDisk sur true.
  • Applicable à un catalogue non persistant avec un disque WBC persistant. Cela implique que vous définissiez la propriété personnalisée persistWBC sur true.

Restriction

  • Microsoft ne vous permet de modifier le type de disque que deux fois par jour. Consultez le document Microsoft. Avec Citrix, la mise à jour de StorageType est effectuée chaque fois qu’une action de démarrage ou de désallocation est effectuée pour la machine virtuelle. Par conséquent, limitez le nombre d’actions d’alimentation par machine virtuelle à deux fois par jour. Par exemple, une action d’alimentation le matin pour démarrer la machine virtuelle et une autre le soir pour la désallouer.

Modifier le type de stockage vers un niveau inférieur

Avant de suivre les étapes, consultez les exigences et restrictions.

  1. Ajoutez la propriété personnalisée StorageTypeAtShutdown, définissez la valeur sur Standard_LRS (HDD) et créez un catalogue à l’aide de New-ProvScheme. Pour plus d’informations sur la création d’un catalogue à l’aide de PowerShell, consultez https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/.

    Remarque :

    Si la valeur de StorageTypeAtShutdown est autre que vide ou Standard_LRS (HDD), l’opération échoue.

    Exemple de définition de propriétés personnalisées lors de la création d’un catalogue persistant :

    $customProperties='<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
    <Property xsi:type="StringProperty" Name="StorageType" Value="Premium_LRS" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
    <Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
    <Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    

    Exemple de définition de propriétés personnalisées lors de la création d’un catalogue non persistant :

    $customProperties='<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
    <Property xsi:type="StringProperty" Name="StorageType" Value="Premium_LRS" />
    <Property xsi:type="StringProperty" Name="WbcDiskStorageType" Value="Standard_SSD_LRS" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
    <Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
    <Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
    <Property xsi:type="BooleanProperty" Name="persistWBC" Value=true />
    <Property xsi:type="BooleanProperty" Name="persistOsDisk" Value=true />
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    

    Remarque :

    Lorsque vous utilisez un profil de machine, la propriété personnalisée prévaut sur la propriété définie dans MachineProfile.

  2. Arrêtez la machine virtuelle et vérifiez le type de stockage de la machine virtuelle sur le portail Azure. Le type de stockage du disque passe à un niveau inférieur, comme spécifié dans la propriété personnalisée StorageTypeAtShutdown.
  3. Allumez la machine virtuelle. Le type de stockage du disque revient au type de stockage mentionné dans :
    • StorageType propriété personnalisée pour le disque du système d’exploitation
    • WBCDiskStorageType propriété personnalisée pour le disque WBC uniquement si vous la spécifiez dans CustomProperties. Dans le cas contraire, il revient au type de stockage mentionné dans StorageType.

Appliquer StorageTypeAtShutdown à un catalogue existant

Avant de suivre les étapes, consultez les exigences et restrictions.

Utilisez Set-ProvScheme pour ajouter une machine virtuelle à un catalogue existant. La fonctionnalité s’applique aux nouvelles machines virtuelles ajoutées après l’exécution de Set-ProvScheme. Les machines existantes ne sont pas affectées.

Exemple de définition de propriétés personnalisées lors de l’ajout d’une machine virtuelle à un catalogue existant :

$customProperties='<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="WbcDiskStorageType" Value="Standard_SSD_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
<Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
<Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
<Property xsi:type="BooleanProperty" Name="persistWBC" Value=true />
<Property xsi:type="BooleanProperty" Name="persistOsDisk" Value=true />
<Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
</CustomProperties>'

$ProvScheme = Get-Provscheme -ProvisioningSchemeName $CatalogName

Set-ProvScheme -ProvisioningSchemeName $ProvScheme.ProvisioningSchemeName -CustomProperties $customProperties
<!--NeedCopy-->

Définir le type de stockage des machines virtuelles existantes sur un niveau inférieur lors de l’arrêt

Avant de suivre les étapes, consultez les exigences et restrictions.

Vous pouvez réduire les coûts de stockage en définissant le type de stockage des machines virtuelles existantes sur un niveau inférieur lorsque les machines virtuelles sont arrêtées. Pour ce faire, utilisez la propriété personnalisée StorageTypeAtShutdown.

Pour définir le type de stockage des machines existantes dans un catalogue sur un niveau inférieur lorsque les machines virtuelles sont arrêtées, procédez comme suit :

  1. Ouvrez une fenêtre PowerShell.
  2. Exécutez asnp citrix* pour charger des modules PowerShell spécifiques à Citrix.
  3. Exécutez Get-Provscheme -ProvisioningSchemeName $CatalogName.
  4. Modifiez la chaîne de propriétés personnalisées.

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    
  5. Mettez à jour le schéma de provisioning du catalogue existant. La mise à jour s’applique aux nouvelles machines virtuelles ajoutées après l’exécution de Set-ProvScheme.

    Set-ProvScheme -ProvisioningSchemeName $CatalogName -CustomProperties $customProperties
    <!--NeedCopy-->
    
  6. Mettez à jour les machines virtuelles existantes pour activer StorageTypeAtShutdown.

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName $CatalogName -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  7. La prochaine fois que vous allumez les machines, la propriété StorageTypeAtShutdown des machines est mise à jour. Le type de stockage change lors du prochain arrêt.
  8. Exécutez la commande suivante pour afficher la valeur StorageTypeAtShutdown de chaque machine virtuelle d’un catalogue :

    Get-ProvVM -ProvisioningSchemeName <catalog-name> | foreach { $vmName = $\_.VMName; $storageTypeAtShutdown = ($\_.CustomVmData | ConvertFrom-Json).StorageTypeAtShutdown.DiskStorageAccountType; return New-Object psobject -Property @{ "VMName" = $vmName; "StorageTypeAtShutdown" = $storageTypeAtShutdown } }
    <!--NeedCopy-->
    

Personnaliser le comportement de mise sous tension en cas d’échec du changement de type de stockage

Lors de la mise sous tension, le type de stockage d’un disque géré peut ne pas passer au type souhaité en raison d’une panne sur Azure. Dans ces scénarios, la machine virtuelle reste éteinte et un message d’échec vous est envoyé. Vous pouvez choisir de mettre la machine virtuelle sous tension même si le stockage ne peut pas être restauré à son type configuré ou de la laisser hors tension.

  • Si vous configurez la propriété personnalisée FailSafeStorageType sur true (paramètre par défaut) ou si vous ne la spécifiez pas dans les commandes New-ProvScheme ou Set-ProvScheme :

    • Lors de la mise sous tension, la machine virtuelle s’allume avec un type de stockage incorrect.
    • À l’arrêt, la machine virtuelle reste éteinte avec un type de stockage incorrect.
  • Si vous configurez la propriété personnalisée FailSafeStorageType sur false dans les commandes New-ProvScheme ou Set-ProvScheme :

    • À la mise sous tension, la machine virtuelle reste éteinte avec un type de stockage incorrect.
    • À l’arrêt, la machine virtuelle reste éteinte avec un type de stockage incorrect.

Pour créer un catalogue de machines :

  1. Ouvrez une fenêtre PowerShell.
  2. Exécutez asnp citrix* pour charger des modules PowerShell spécifiques à Citrix.
  3. Créez un pool d’identités s’il n’a pas déjà été créé.
  4. Ajoutez la propriété personnalisée dans New-ProvScheme. Par exemple :

    New-ProvScheme -HostingUnitName "Azure-Resources-1" -IdentityPoolName "name" -InitialBatchSizeHint 1
    -MasterImageVM "XDHyp:\HostingUnits\Azure-Resources-1\image.folder\abc.resourcegroup\def.snapshot"
    -NetworkMapping @{"0"="XDHyp:\HostingUnits\Azure-Resources-1\ght.folder\abc.resourcegroup\abc-vnet.virtualprivatecloud\default.network"}
    -ProvisioningSchemeName "name"
    -ServiceOffering "XDHyp:\HostingUnits\Azure-Resources-1\serviceoffering.folder\Standard_DS2_v2.serviceoffering"
    -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`">
    <Property xsi:type=`"StringProperty`" Name=`"StorageType`" Value=`"Premium_LRS`" />
    <Property xsi:type=`"StringProperty`" Name=`"StorageTypeAtShutdown`" Value=`"Standard_LRS`" />
    <Property xsi:type=`"StringProperty`" Name=`"FailSafeStorageType`" Value=`"true`" />
    </CustomProperties>"
    <!--NeedCopy-->
    
  5. Créez le catalogue de machines. Pour plus d’informations sur la création d’un catalogue à l’aide du SDK Remote PowerShell, consultez https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/.

Mettez à jour un catalogue de machines existant afin d’inclure la propriété personnalisée FailSafeStorageType. Cette mise à jour n’affecte pas les machines virtuelles existantes.

  1. Mettez à jour la propriété personnalisée dans la commande Set-ProvScheme. Par exemple :
   Set-ProvScheme -ProvisioningSchemeName <String> -CustomProperties "
   <CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`">
   <Property xsi:type=`"StringProperty`" Name=`"StorageType`" Value=`"Premium_LRS`" />
   <Property xsi:type=`"StringProperty`" Name=`"IdentityDiskStorageType`" Value=`"Premium_LRS`" />
   <Property xsi:type=`"StringProperty`" Name=`"FailSafeStorageType`" Value=`"false`" />
   </CustomProperties>"
   <!--NeedCopy-->

Pour appliquer la modification effectuée dans Set-ProvScheme aux machines virtuelles existantes, exécutez la commande Set-ProvVMUpdateTimeWindow avec les paramètres -StartsNow et -DurationInMinutes -1.

  1. Exécutez la commande Set-ProvVMUpdateTimeWindow avec les paramètres -StartsNow et -DurationInMinutes -1. Par exemple :

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  2. Redémarrez les machines virtuelles.

Mettre à jour les machines provisionnées vers l’état du schéma de provisioning actuel

La commande Set-ProvScheme modifie le schéma de provisioning. Toutefois, ce script n’affecte pas les machines existantes. À l’aide de la commande PowerShell Set-ProvVMUpdateTimeWindow, vous pouvez appliquer le schéma de provisioning actuel à une machine ou à un ensemble de machines persistant ou non persistant existant. Vous pouvez également planifier un créneau horaire pour les mises à jour de la configuration des machines provisionnées par MCS existantes. Toute mise sous tension ou redémarrage pendant le créneau horaire prévu applique une mise à jour planifiée du schéma de provisioning à une machine. Actuellement, dans Azure, vous pouvez mettre à jour ServiceOffering, MachineProfile et les propriétés personnalisées suivantes :

  • StorageType
  • WBCDiskStorageType
  • IdentityDiskStorageType
  • LicenseType
  • DedicatedHostGroupId
  • PersistWBC
  • PersistOsDisk
  • PersistVm

Remarque :

  • Vous pouvez uniquement mettre à jour les propriétés personnalisées StorageType, WBCDiskStorageType et IdentityDiskStorageType d’un catalogue à l’aide d’un disque géré dans les environnements Azure.
  • Si vous exécutez Set-ProvVMUpdateTimeWindow deux fois, la commande la plus récente prend effet.

Vous pouvez mettre à jour :

  • une seule machine virtuelle ;
  • une liste des machines virtuelles spécifiques ou toutes les machines virtuelles existantes associées à un ID de schéma de provisioning ;
  • une liste des machines virtuelles spécifiques ou toutes les machines virtuelles existantes associées à un nom de schéma de provisioning (nom du catalogue de machines).

Après avoir apporté les modifications suivantes au schéma de provisioning, l’instance de machine virtuelle est recréée pour les catalogues persistants dans Azure :

  • Remplacez la valeur MachineProfile
  • Supprimer LicenseType
  • Supprimer DedicatedHostGroupId

Remarque :

Le disque d’OS des machines existantes ainsi que toutes ses données restent tels quels et une nouvelle machine virtuelle est connectée au disque.

Avant de mettre à jour les machines virtuelles existantes :

  1. Vérifiez la configuration des machines existantes. Par exemple,

    Get-ProvScheme | select ProvisioningSchemeName, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  2. Mettez à jour le schéma de provisioning. Par exemple,

    • Avec la machine virtuelle comme entrée de profil de machine :

       Set-ProvScheme -ProvisioningSchemeName "my-catalog" -MachineProfile "XDHyp:\HostingUnits<hosting-unit>\machineprofile.folder<resource-group>.resourcegroup<virtual-machine>.vm"
       <!--NeedCopy-->
      
    • Avec la spécification de modèle comme entrée du profil de la machine :

       Set-ProvScheme -ProvisioningSchemeName "my-catalog"
       -MachineProfile "XDHyp:\HostingUnits<hosting-unit>\machineprofile.folder<resource-group>.resourcegroup<template-spec>.templatespec<template-spec-version>.templatespecversion"
       -ServiceOffering "XDHyp:\HostingUnits<hosting-unit>\serviceoffering.folder<service-offering>.serviceoffering"
       <!--NeedCopy-->
      
    • Avec juste une offre de service :

       Set-ProvScheme -ProvisioningSchemeName "my-catalog" -ServiceOffering "XDHyp:\HostingUnits<hosting-unit>\serviceoffering.folder<service-offering>.serviceoffering"
       <!--NeedCopy-->
      
  3. Vérifiez si la propriété actuelle de la machine virtuelle correspond au schéma de provisioning actuel et s’il existe une action de mise à jour en attente sur la machine virtuelle. Par exemple,

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

    Vous pouvez également rechercher les machines avec une version particulière. Par exemple,

    Get-ProvVM -Filter "ProvisioningSchemeVersion -eq 1" | select VMName, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

Pour demander des mises à jour pour les machines existantes à appliquer au prochain redémarrage :

  1. Exécutez les commandes suivantes pour mettre à jour les machines existantes et faire en sorte que les mises à jour s’appliquent au prochain redémarrage.

    • Pour mettre à jour toutes les machines existantes. Par exemple,

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      
    • Pour mettre à jour une liste de machines spécifiques. Par exemple,

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      
    • Pour mettre à jour les machines en fonction de la sortie de Get-ProvVM. Par exemple,

       Get-ProvVM -ProvisioningSchemeName "my-catalog" | Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      

    Remarque :

    • StartsNow indique que l’heure de démarrage planifiée est l’heure actuelle.
    • DurationInMinutes avec un nombre négatif (par exemple, —1) indique qu’il n’y a pas de limite supérieure dans le créneau planifié.
  2. Recherchez les machines pour lesquelles une mise à jour est planifiée. Par exemple,

    Get-ProvVM -Filter "ProvisioningSchemeUpdateAfter" | select VMName, ProvisioningSchemeUpdateAfter
    <!--NeedCopy-->
    
  3. Redémarrez les machines. Lors de la prochaine mise sous tension, les modifications de propriétés sont appliquées aux machines existantes. Vous pouvez vérifier l’état actualisé à l’aide de la commande suivante. Par exemple,

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

Pour planifier la mise à jour d’une machine virtuelle avec les derniers paramètres de provisioning lors de son prochain démarrage dans le créneau planifié :

  1. Exécutez les commandes suivantes :

    • Pour planifier une mise à jour avec l’heure actuelle comme heure de début

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName vm1 -StartsNow -DurationInMinutes 120
       <!--NeedCopy-->
      
    • Pour planifier une mise à jour un week-end

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName “ my-catalog “ -VMName “vm1” -StartTimeInUTC “10/15/2022 9:00am” -DurationInMinutes (New –TimeSpan –Days 2).TotalMinutes
       <!--NeedCopy-->
      

    Remarque :

    • VMName est facultatif. Sans spécification, la mise à jour est planifiée pour l’ensemble du catalogue.
    • Au lieu de StartTimeInUTC, utilisez StartsNow pour indiquer que l’heure de démarrage est l’heure actuelle.
    • DurationInMinutes est facultatif. La valeur par défaut est de 120 minutes. Un nombre négatif (par exemple, —1) indique qu’il n’y a pas de limite supérieure dans le créneau planifié.
  2. Vérifiez l’état de la mise à jour.

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeUpdateUntil, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  3. Allumez la machine virtuelle. Si vous allumez la machine après le créneau horaire prévu, la mise à jour de la configuration n’est pas appliquée. Si vous allumez la machine dans le créneau horaire prévu,

    • Si la machine est éteinte, et

      • vous n’allumez pas la machine, la mise à jour de la configuration n’est pas appliquée
      • vous allumez la machine, la mise à jour de la configuration est appliquée
    • Si la machine est allumée, et

      • vous ne redémarrez pas la machine, la mise à jour de la configuration n’est pas appliquée
      • vous redémarrez la machine, la mise à jour de la configuration est appliquée

Pour annuler la mise à jour de la configuration :

Vous pouvez également annuler une mise à jour de la configuration d’une seule machine virtuelle, de plusieurs machines virtuelles ou d’un catalogue entier. Pour annuler une mise à jour de la configuration :

  1. Exécutez Clear-ProvVMUpdateTimeWindow. Par exemple :

    • Pour annuler la mise à jour de la configuration prévue pour une seule machine virtuelle :

        Clear-ProvVMUpdateTimeWindow -ProvisioningSchemeName “ my-catalog “ -VMName “vm1”
        <!--NeedCopy-->
      
    • Pour annuler la mise à jour de la configuration prévue pour plusieurs machines virtuelles :

       Clear-ProvVMUpdateTimeWindow -ProvisioningSchemeName "my-catalog" -VMName "vm1","vm2"
       <!--NeedCopy-->
      

      Remarque :

      Les machines virtuelles doivent provenir du même catalogue.

Mettre à jour les propriétés des machines virtuelles individuelles

Vous pouvez mettre à jour les propriétés de machines virtuelles individuelles dans un catalogue de machines MCS persistant à l’aide de la commande PowerShell Set-ProvVM. Toutefois, les mises à jour ne sont pas appliquées immédiatement. Vous devez définir la fenêtre horaire à l’aide de la commande PowerShell Set-ProvVMUpdateTimeWindow pour que les mises à jour s’appliquent.

Cette implémentation vous permet de gérer efficacement les machines virtuelles individuelles sans mettre à jour l’intégralité du catalogue de machines. Actuellement, cette fonctionnalité s’applique uniquement à l’environnement Azure.

Actuellement, les propriétés que vous pouvez mettre à jour sont les suivantes :

  • CustomProperties
  • ServiceOffering
  • MachineProfile

Grâce à cette fonctionnalité, vous pouvez :

Avant de mettre à jour les propriétés d’une machine virtuelle :

  1. Ouvrez une fenêtre PowerShell.
  2. Exécutez asnp citrix* pour charger des modules PowerShell spécifiques à Citrix.
  3. Vérifiez la configuration du catalogue de machines existant. Par exemple :

    Get-ProvScheme -ProvisioningSchemeName AzureCatalog
    <!--NeedCopy-->
    
  4. Vérifiez la configuration de la machine virtuelle sur laquelle vous souhaitez appliquer les mises à jour. Par exemple :

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

Mettre à jour les propriétés d’une machine virtuelle

Procédez comme suit pour mettre à jour les propriétés d’une machine virtuelle :

  1. Éteignez la machine virtuelle sur laquelle vous souhaitez appliquer les mises à jour.
  2. Mettez à jour les propriétés de la machine virtuelle. Par exemple, si vous souhaitez mettre à jour la propriété personnalisée du type de stockage (StorageType) de la machine virtuelle, exécutez ce qui suit :

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
    <!--NeedCopy-->
    

    Vous pouvez mettre à jour simultanément les propriétés de deux machines virtuelles d’un catalogue de machines. Par exemple :

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
    <!--NeedCopy-->
    
    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine2 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
    <!--NeedCopy-->
    

    Remarque :

    Les mises à jour ne sont pas appliquées immédiatement.

  3. Obtenez la liste des propriétés spécifiées pour la mise à jour ainsi que la version de configuration. Par exemple :

    Get-ProvVMConfiguration -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Vérifiez la valeur de propriété Version et les propriétés à mettre à jour (dans ce cas, StorageType).

  4. Vérifiez la version de configuration. Par exemple :

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Vérifiez la valeur de propriété de ProvVMConfigurationVersion. La mise à jour n’est pas encore appliquée. La machine virtuelle est toujours dans l’ancienne configuration.

  5. Demandez une mise à jour planifiée. Par exemple :

     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    

    Pour plus d’informations, consultez Mettre à jour les machines provisionnées vers l’état du schéma de provisioning actuel.

    Remarque :

    Toute mise à jour du schéma de provisioning en attente est également appliquée.

  6. Redémarrez la machine virtuelle. Par exemple :

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
  7. Vérifiez la version de configuration. Par exemple :

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Vérifiez la valeur de propriété de ProvVMConfigurationVersion. La mise à jour est maintenant appliquée. La machine virtuelle présente désormais la nouvelle configuration.

  8. Pour appliquer d’autres mises à jour de configuration sur la machine virtuelle, éteignez-la et répétez les étapes.

Conserver les propriétés mises à jour sur une machine virtuelle après la mise à jour du catalogue de machines

Procédez comme suit pour conserver les propriétés mises à jour sur une machine virtuelle :

  1. Éteignez la machine virtuelle sur laquelle vous souhaitez appliquer les mises à jour.
  2. Mettez le catalogue de machines à jour. Par exemple, si vous souhaitez modifier la taille de la machine virtuelle (ServiceOffering) et le type de stockage (StorageType), exécutez ce qui suit :

    Set-ProvScheme -ProvisioningSchemeName AzureCatalog -ServiceOffering Standard_E4_v3 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
    <!--NeedCopy-->
    
  3. Obtenez les détails de configuration du catalogue de machines. Par exemple :

    Get-ProvScheme -ProvisioningSchemeName AzureCatalog
    <!--NeedCopy-->
    

    La ProvisioningSchemeVersion est maintenant incrémentée d’une unité. La taille de la machine virtuelle et le type de stockage sont également mis à jour.

  4. Mettez à jour les propriétés de la machine virtuelle. Par exemple, appliquez un profil de machine à la machine virtuelle.

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -MachineProfile "XDHyp:\HostingUnits<hosting-unit>\machineprofile.folder<resource-group>.resourcegroup<template-spec>.templatespec<template-spec-version>.templatespecversion"
    <!--NeedCopy-->
    

    Remarque :

    L’entrée du profil de machine comporte une balise et une taille de machine virtuelle différente (ServiceOffering) spécifiée.

  5. Obtenez la liste des propriétés que la machine virtuelle aura après avoir fusionné les mises à jour de configuration sur la machine virtuelle avec les mises à jour du catalogue de machines. Par exemple :

    Get-ProvVMConfigurationResultantSet -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Remarque :

    Toute mise à jour sur la machine virtuelle remplacera les mises à jour effectuées sur le catalogue de machines.

  6. Demandez une mise à jour planifiée pour la machine virtuelle. Par exemple :

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  7. Redémarrez la machine virtuelle. Par exemple :

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    

    La machine virtuelle conserve sa taille de machine virtuelle mise à jour telle que dérivée du profil de la machine. Les valeurs de balise spécifiées dans le profil de la machine sont également appliquées à la machine virtuelle. Toutefois, le type de stockage est dérivé du dernier schéma de provisioning.

  8. Obtenez la version de configuration de la machine virtuelle. Par exemple :

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    La ProvisioningSchemeVersion et la ProvVMConfigurationVersion affichent désormais la dernière version.

Annuler les mises à jour de configuration appliquées à une machine virtuelle

  1. Après avoir appliqué les mises à jour à une machine virtuelle, éteignez-la.
  2. Exécutez la commande suivante pour supprimer les mises à jour appliquées à la machine virtuelle. Par exemple :

    Set-ProvVM -RevertToProvSchemeConfiguration -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    
  3. Demandez une mise à jour planifiée pour la machine virtuelle. Par exemple :

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. Redémarrez la machine virtuelle. Par exemple :

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
  5. Vérifiez la version de configuration de la machine virtuelle. Par exemple :

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    La valeur ProvVMConfigurationVersion est désormais la version de configuration du catalogue de machines.

Récupérer des informations sur les machines virtuelles Azure, les instantanés, le disque du système d’exploitation et la définition d’image de la galerie

Vous pouvez afficher des informations sur une machine virtuelle Azure, notamment le disque et le type de système d’exploitation, l’instantané et la définition de l’image de la galerie. Ces informations sont affichées pour les ressources de l’image principale lorsqu’un catalogue de machines est affecté. Utilisez cette fonctionnalité pour afficher et sélectionner une image Linux ou Windows. Une propriété PowerShell, TemplateIsWindowsTemplate, a été ajoutée au paramètre AdditionDatafield. Ce champ contient des informations spécifiques à Azure : type de machine virtuelle, disque du système d’exploitation, informations sur l’image de la galerie et informations sur le type de système d’exploitation. Si TemplateIsWindowsTemplate est défini sur True, cela indique que le type de système d’exploitation est Windows ; si TemplateIsWindowsTemplate est défini sur False, cela indique que le type de système d’exploitation est Linux.

Conseil :

Les informations affichées par la propriété PowerShell TemplateIsWindowsTemplate sont dérivées de l’API Azure. Ce champ peut parfois être vide. Par exemple, un instantané d’un disque de données ne contient pas le champ TemplateIsWindowsTemplate, car le type de système d’exploitation ne peut pas être récupéré à partir d’un instantané.

Par exemple, définissez le paramètre Azure VM AdditionData sur True pour le type de système d’exploitation Windows à l’aide de PowerShell :

PS C:\Users\username> (get-item XDHyp:\HostingUnits\mynetwork\image.folder\username-dev-testing-rg.resourcegroup\username-dev-tsvda.vm).AdditionalData
Key Value
ServiceOfferingDescription Standard_B2ms
HardDiskSizeGB 127
ResourceGroupName FENGHUAJ-DEV-TESTING-RG
ServiceOfferingMemory 8192
ServiceOfferingCores 2
TemplateIsWindowsTemplate True
ServiceOfferingWithTemporaryDiskSizeInMb 16384
SupportedMachineGenerations Gen1,Gen2
<!--NeedCopy-->

Identifier les ressources créées par MCS

Voici les balises que MCS ajoute aux ressources. Les balises du tableau sont représentées au format “clé”:”valeur”.

Nom de la ressource Balise
Disque d’identification “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Image “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Carte d’interface réseau “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Disque OS “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Machine virtuelle de préparation “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Instantané publié “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Groupe de ressources “CitrixResource” : “Internal”
  CitrixSchemaVersion: 2.0
  “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
Compte de stockage “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
VM dans le catalogue “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Disque WBC “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”

Remarque :

Une machine virtuelle n’est pas visible dans l’inventaire Citrix si une balise CitrixResource est ajoutée pour l’identifier en tant que ressource créée par MCS. Vous pouvez supprimer ou renommer la balise pour la rendre visible.

Informations supplémentaires