Einen Microsoft Azure-Katalog verwalten

Hinweis:

Seit Juli 2023 hat Microsoft Azure Active Directory (Azure AD) in Microsoft Entra ID umbenannt. In diesem Dokument bezieht sich jede Referenz auf Azure Active Directory, Azure AD oder AAD nun auf Microsoft Entra ID.

Maschinenkataloge verwalten beschreibt die Assistenten, die einen Maschinenkatalog verwalten. Die folgenden Informationen behandeln Details, die spezifisch für Microsoft Azure Resource Manager-Cloudumgebungen sind.

Hinweis:

Bevor Sie einen Microsoft Azure-Katalog verwalten, müssen Sie die Erstellung eines Microsoft Azure-Katalogs abgeschlossen haben. Siehe Einen Microsoft Azure-Katalog erstellen.

Speichertyp auf eine niedrigere Stufe ändern, wenn eine VM heruntergefahren wird

Sie können Speicherkosten sparen, indem Sie den Speichertyp eines verwalteten Datenträgers auf eine niedrigere Stufe umstellen, wenn Sie eine VM herunterfahren. Verwenden Sie dazu die benutzerdefinierte Eigenschaft StorageTypeAtShutdown.

Der Speichertyp des Datenträgers wechselt zu einer niedrigeren Stufe (wie in der benutzerdefinierten Eigenschaft StorageTypeAtShutdown angegeben), wenn Sie die VM herunterfahren. Nachdem Sie die VM eingeschaltet haben, wechselt der Speichertyp zurück zum ursprünglichen (wie in der benutzerdefinierten Eigenschaft StorageType oder der benutzerdefinierten Eigenschaft WBCDiskStorageType angegeben).

Wichtig:

Der Datenträger existiert erst, nachdem die VM mindestens einmal eingeschaltet wurde. Daher können Sie den Speichertyp nicht ändern, wenn Sie die VM zum ersten Mal einschalten.

Anforderungen

  • Anwendbar auf einen verwalteten Datenträger. Dies bedeutet, dass Sie die benutzerdefinierte Eigenschaft UseManagedDisks auf „true“ setzen.
  • Anwendbar auf einen persistenten und nicht-persistenten Katalog mit einem persistenten Betriebssystemdatenträger. Dies bedeutet, dass Sie die benutzerdefinierte Eigenschaft persistOsDisk auf „true“ setzen.
  • Anwendbar auf einen nicht-persistenten Katalog mit einem persistenten WBC-Datenträger. Dies bedeutet, dass Sie die benutzerdefinierte Eigenschaft persistWBC auf „true“ setzen.

Einschränkung

  • Laut Microsoft können Sie den Datenträgertyp nur zweimal pro Tag ändern. Siehe das Microsoft-Dokument. Laut Citrix erfolgt die StorageType-Aktualisierung immer dann, wenn eine Start- oder Deallocate-Aktion für die VM durchgeführt wird. Beschränken Sie daher die Anzahl der Energieaktionen pro VM auf zweimal pro Tag. Zum Beispiel eine Energieaktion am Morgen zum Starten der VM und eine am Abend zum Freigeben der VM.

Speichertyp auf eine niedrigere Stufe ändern

Bevor Sie mit den Schritten fortfahren, lesen Sie die Anforderungen und Einschränkung.

  1. Fügen Sie die benutzerdefinierte Eigenschaft StorageTypeAtShutdown hinzu, legen Sie den Wert auf Standard_LRS (HDD) fest und erstellen Sie einen Katalog mit New-ProvScheme. Informationen zum Erstellen eines Katalogs mit PowerShell finden Sie unter https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/.

    Hinweis:

    Wenn StorageTypeAtShutdown einen anderen Wert als leer oder Standard_LRS (HDD) hat, schlägt der Vorgang fehl.

    Beispiel für das Festlegen benutzerdefinierter Eigenschaften beim Erstellen eines persistenten Katalogs:

    $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-->
    

    Beispiel für das Festlegen benutzerdefinierter Eigenschaften beim Erstellen eines nicht-persistenten Katalogs:

    $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-->
    

    Hinweis:

    Wenn Sie ein Maschinenprofil verwenden, hat die benutzerdefinierte Eigenschaft Vorrang vor der in MachineProfile definierten Eigenschaft.

  2. Fahren Sie die VM herunter und überprüfen Sie den Speichertyp der VM im Azure-Portal. Der Speichertyp des Datenträgers ändert sich in eine niedrigere Stufe, wie in der benutzerdefinierten Eigenschaft StorageTypeAtShutdown angegeben.
  3. Schalten Sie die VM ein. Der Speichertyp des Datenträgers wechselt zurück zu dem Speichertyp, der angegeben ist in:
    • StorageType benutzerdefinierte Eigenschaft für das Betriebssystemlaufwerk
    • WBCDiskStorageType benutzerdefinierte Eigenschaft für WBC-Datenträger, nur wenn Sie sie in CustomProperties angeben. Andernfalls wechselt sie zurück zu dem in StorageType angegebenen Speichertyp.

Anwenden von StorageTypeAtShutdown auf einen vorhandenen Katalog

Bevor Sie mit den Schritten fortfahren, lesen Sie die Anforderungen und Einschränkungen.

Verwenden Sie Set-ProvScheme, um einem vorhandenen Katalog eine VM hinzuzufügen. Die Funktion gilt für neue VMs, die nach dem Ausführen von Set-ProvScheme hinzugefügt werden. Die vorhandenen Maschinen sind nicht betroffen.

Beispiel für das Festlegen benutzerdefinierter Eigenschaften beim Hinzufügen einer VM zu einem vorhandenen Katalog:

$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-->

Speichertyp vorhandener VMs beim Herunterfahren auf eine niedrigere Stufe ändern

Bevor Sie mit den Schritten fortfahren, lesen Sie die Anforderungen und Einschränkungen.

Sie können Speicherkosten sparen, indem Sie den Speichertyp vorhandener VMs beim Herunterfahren auf eine niedrigere Stufe ändern. Verwenden Sie dazu die benutzerdefinierte Eigenschaft StorageTypeAtShutdown.

So ändern Sie den Speichertyp vorhandener Maschinen in einem Katalog beim Herunterfahren der VMs auf eine niedrigere Stufe:

  1. Öffnen Sie ein PowerShell-Fenster.
  2. Führen Sie asnp citrix* aus, um die Citrix-spezifischen PowerShell-Module zu laden.
  3. Führen Sie Get-Provscheme -ProvisioningSchemeName $CatalogName aus.
  4. Ändern Sie die Zeichenfolge der benutzerdefinierten Eigenschaften.

    $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. Aktualisieren Sie das Bereitstellungsschema des vorhandenen Katalogs. Die Aktualisierung gilt für neue VMs, die nach dem Ausführen von Set-ProvScheme hinzugefügt werden.

    Set-ProvScheme -ProvisioningSchemeName $CatalogName -CustomProperties $customProperties
    <!--NeedCopy-->
    
  6. Aktualisieren Sie die vorhandenen VMs, um StorageTypeAtShutdown zu aktivieren.

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName $CatalogName -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  7. Wenn Sie die Maschinen das nächste Mal einschalten, wird die Eigenschaft StorageTypeAtShutdown der Maschinen aktualisiert. Der Speichertyp ändert sich beim nächsten Herunterfahren.
  8. Führen Sie den folgenden Befehl aus, um den Wert StorageTypeAtShutdown für jede VM in einem Katalog anzuzeigen:

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

Bereitgestellte Maschinen auf den aktuellen Bereitstellungsschemastatus aktualisieren

Der Befehl Set-ProvScheme ändert das Bereitstellungsschema. Er wirkt sich jedoch nicht auf vorhandene Maschinen aus. Mit dem PowerShell-Befehl Set-ProvVMUpdateTimeWindow können Sie das aktuelle Bereitstellungsschema auf eine vorhandene persistente oder nicht-persistente Maschine oder eine Gruppe von Maschinen anwenden. Sie können auch einen Zeitrahmen für die Konfigurationsaktualisierungen der vorhandenen MCS-bereitgestellten Maschinen planen. Jedes Einschalten oder Neustarten während des geplanten Zeitrahmens wendet eine geplante Bereitstellungsschemaaktualisierung auf eine Maschine an. Derzeit können Sie in Azure ServiceOffering, MachineProfile und die folgenden benutzerdefinierten Eigenschaften aktualisieren:

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

Hinweis:

  • Sie können nur die benutzerdefinierten Eigenschaften StorageType, WBCDiskStorageType und IdentityDiskStorageType für einen Katalog mit verwalteten Datenträgern in Azure-Umgebungen aktualisieren.
  • Wenn Sie Set-ProvVMUpdateTimeWindow zweimal ausführen, tritt der zuletzt ausgeführte Befehl in Kraft.

Sie können aktualisieren:

  • Eine einzelne VM
  • Eine Liste spezifischer VMs oder aller vorhandenen VMs, die einer Bereitstellungsschema-ID zugeordnet sind
  • Eine Liste spezifischer VMs oder aller vorhandenen VMs, die einem Bereitstellungsschemanamen (Maschinenkatalogname) zugeordnet sind

Nachdem Sie die folgenden Änderungen am Bereitstellungsschema vorgenommen haben, wird die VM-Instanz für persistente Kataloge in Azure neu erstellt:

  • Ändern Sie den MachineProfile
  • Entfernen Sie LicenseType
  • Entfernen Sie DedicatedHostGroupId

Hinweis:

Die Betriebssystemfestplatte vorhandener Maschinen bleibt zusammen mit all ihren Daten unverändert, und eine neue VM wird an die Festplatte angehängt.

Vor dem Aktualisieren der vorhandenen VMs:

  1. Überprüfen Sie die Konfiguration der vorhandenen Maschinen. Zum Beispiel:

    Get-ProvScheme | select ProvisioningSchemeName, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  2. Aktualisieren Sie das Bereitstellungsschema. Zum Beispiel:

    • Mit VM als Maschinenprofileingabe:

       Set-ProvScheme -ProvisioningSchemeName "my-catalog" -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<virtual-machine>.vm"
       <!--NeedCopy-->
      
    • Mit Vorlagenspezifikation als Maschinenprofileingabe:

       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-->
      
    • Nur mit Serviceangebot:

       Set-ProvScheme -ProvisioningSchemeName "my-catalog" -ServiceOffering "XDHyp:\HostingUnits\<hosting-unit>\serviceoffering.folder\<service-offering>.serviceoffering"
       <!--NeedCopy-->
      
  3. Prüfen Sie, ob die aktuelle Eigenschaft der VM mit dem aktuellen Bereitstellungsschema übereinstimmt und ob eine ausstehende Aktualisierungsaktion für die VM vorliegt. Zum Beispiel:

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

    Sie können auch Maschinen mit einer bestimmten Version finden. Zum Beispiel:

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

So fordern Sie Updates für vorhandene Maschinen an, die beim nächsten Neustart angewendet werden sollen:

  1. Führen Sie die folgenden Befehle aus, um vorhandene Maschinen zu aktualisieren und die Updates beim nächsten Neustart anzuwenden.

    • So aktualisieren Sie alle vorhandenen Maschinen. Zum Beispiel:

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      
    • So aktualisieren Sie eine Liste bestimmter Maschinen. Zum Beispiel:

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      
    • So aktualisieren Sie Maschinen basierend auf der Ausgabe von Get-ProvVM. Zum Beispiel:

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

    Hinweis:

    • StartsNow gibt an, dass die geplante Startzeit die aktuelle Zeit ist.
    • DurationInMinutes mit einer negativen Zahl (z. B. –1) bedeutet, dass es keine Obergrenze für das Zeitfenster des Zeitplans gibt.
  2. Suchen Sie Maschinen mit einem geplanten Update. Zum Beispiel:

    Get-ProvVM -Filter "ProvisioningSchemeUpdateAfter" | select VMName, ProvisioningSchemeUpdateAfter
    <!--NeedCopy-->
    
  3. Starten Sie die Maschinen neu. Beim nächsten Einschalten werden Eigenschaftsänderungen auf die vorhandenen Maschinen angewendet. Sie können den aktualisierten Status mit dem folgenden Befehl überprüfen. Zum Beispiel:

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

So planen Sie, dass eine VM beim nächsten Start im geplanten Zeitfenster auf die neuesten Bereitstellungseinstellungen aktualisiert wird:

  1. Führen Sie die folgenden Befehle aus:

    • So planen Sie ein Update mit der aktuellen Zeit als Startzeit

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName vm1 -StartsNow -DurationInMinutes 120
       <!--NeedCopy-->
      
    • So planen Sie ein Update für ein Wochenende

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

    Hinweis:

    • VMName ist optional. Wenn nicht angegeben, wird das Update für den gesamten Katalog geplant.
    • Verwenden Sie anstelle von StartTimeInUTC den Wert StartsNow, um anzugeben, dass die Startzeit des Zeitplans die aktuelle Zeit ist.
    • DurationInMinutes ist optional. Der Standardwert ist 120 Minuten. Eine negative Zahl (z. B. –1) bedeutet, dass es keine Obergrenze für das Zeitfenster des Zeitplans gibt.
  2. Überprüfen Sie den Updatestatus.

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeUpdateUntil, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  3. Schalten Sie die VM ein. Wenn Sie die Maschine nach dem geplanten Zeitfenster einschalten, wird das Konfigurationsupdate nicht angewendet. Wenn Sie die Maschine innerhalb des geplanten Zeitfensters einschalten,

    • Wenn die Maschine ausgeschaltet ist und

      • Sie die Maschine nicht einschalten, wird das Konfigurationsupdate nicht angewendet.
      • Sie die Maschine einschalten, wird das Konfigurationsupdate angewendet.
    • Wenn die Maschine eingeschaltet ist und

      • Sie die Maschine nicht neu starten, wird das Konfigurationsupdate nicht angewendet.
      • Sie die Maschine neu starten, wird das Konfigurationsupdate angewendet.

So brechen Sie das Konfigurationsupdate ab:

Sie können ein Konfigurationsupdate auch für eine einzelne VM, mehrere VMs oder einen gesamten Katalog abbrechen. So brechen Sie ein Konfigurationsupdate ab:

  1. Führen Sie Clear-ProvVMUpdateTimeWindow aus. Zum Beispiel:

    • So brechen Sie die geplante Konfigurationsaktualisierung für eine einzelne VM ab:

        Clear-ProvVMUpdateTimeWindow -ProvisioningSchemeName “ my-catalog “ -VMName “vm1”
        <!--NeedCopy-->
      
    • So brechen Sie die geplante Konfigurationsaktualisierung für mehrere VMs ab:

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

      Hinweis:

      Die VMs müssen aus demselben Katalog stammen.

Eigenschaften einzelner VMs aktualisieren

Sie können die Eigenschaften einzelner VMs in einem persistenten MCS-Maschinenkatalog mit dem PowerShell-Befehl Set-ProvVM aktualisieren. Die Updates werden jedoch nicht sofort angewendet. Sie müssen das Zeitfenster mit dem PowerShell-Befehl Set-ProvVMUpdateTimeWindow festlegen, damit die Updates angewendet werden.

Diese Implementierung hilft Ihnen, einzelne VMs effizient zu verwalten, ohne den gesamten Maschinenkatalog zu aktualisieren. Derzeit ist diese Funktion nur für die Azure-Umgebung anwendbar.

Derzeit können Sie folgende Eigenschaften aktualisieren:

  • CustomProperties
  • ServiceOffering
  • MachineProfile

Mit dieser Funktion können Sie:

Bevor Sie Eigenschaften einer VM aktualisieren:

  1. Öffnen Sie ein PowerShell-Fenster.
  2. Führen Sie asnp citrix* aus, um die Citrix-spezifischen PowerShell-Module zu laden.
  3. Überprüfen Sie die Konfiguration des vorhandenen Maschinenkatalogs. Zum Beispiel:

    Get-ProvScheme -ProvisioningSchemeName AzureCatalog
    <!--NeedCopy-->
    
  4. Überprüfen Sie die Konfiguration der VM, auf die Sie die Updates anwenden möchten. Zum Beispiel:

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

Eigenschaften einer VM aktualisieren

Gehen Sie wie folgt vor, um die Eigenschaften einer VM zu aktualisieren:

  1. Schalten Sie die VM aus, auf die Sie die Updates anwenden möchten.
  2. Aktualisieren Sie die Eigenschaften der VM. Wenn Sie beispielsweise die benutzerdefinierte Eigenschaft Speichertyp (StorageType) der VM aktualisieren möchten, führen Sie Folgendes aus:

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

    Sie können die Eigenschaften von zwei VMs in einem Maschinenkatalog gleichzeitig aktualisieren. Zum Beispiel:

    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-->
    

    Hinweis:

    Die Updates werden nicht sofort angewendet.

  3. Rufen Sie die Liste der zur Aktualisierung angegebenen Eigenschaften und die Konfigurationsversion ab. Zum Beispiel:

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

    Überprüfen Sie den Eigenschaftswert von Version und die zu aktualisierenden Eigenschaften (in diesem Fall StorageType).

  4. Überprüfen Sie die Konfigurationsversion. Zum Beispiel:

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

    Überprüfen Sie den Eigenschaftswert von ProvVMConfigurationVersion. Das Update wurde noch nicht angewendet. Die VM befindet sich noch in der alten Konfiguration.

  5. Geplantes Update anfordern. Zum Beispiel:

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

    Weitere Informationen zu geplanten Updates finden Sie unter Bereitgestellte Maschinen auf den aktuellen Bereitstellungsschemastatus aktualisieren.

    Hinweis:

    Alle ausstehenden Updates des Bereitstellungsschemas werden ebenfalls angewendet.

  6. Starten Sie die VM neu. Zum Beispiel:

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
  7. Überprüfen Sie die Konfigurationsversion. Zum Beispiel:

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

    Überprüfen Sie den Eigenschaftswert von ProvVMConfigurationVersion. Das Update wurde jetzt angewendet. Die VM hat nun die neue Konfiguration.

  8. Um weitere Konfigurationsupdates auf die VM anzuwenden, schalten Sie die VM aus und wiederholen Sie die Schritte.

Beibehalten der auf einer VM aktualisierten Eigenschaften nach der Aktualisierung des Maschinenkatalogs

Gehen Sie wie folgt vor, um die auf einer VM aktualisierten Eigenschaften beizubehalten:

  1. Schalten Sie die VM aus, auf die Sie die Updates anwenden möchten.
  2. Aktualisieren Sie den Maschinenkatalog. Wenn Sie beispielsweise die VM-Größe (ServiceOffering) und den Speichertyp (StorageType) ändern möchten, führen Sie Folgendes aus:

    Set-ProvScheme -ProvisioningSchemeName AzureCatalog -ServiceOffering Standard_E4_v3 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
    <!--NeedCopy-->
    
  3. Rufen Sie die Konfigurationsdetails des Maschinenkatalogs ab. Zum Beispiel:

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

    Der ProvisioningSchemeVersion wird nun um eins erhöht. Die VM-Größe und der Speichertyp werden ebenfalls aktualisiert.

  4. Aktualisieren Sie die Eigenschaften der VM. Geben Sie beispielsweise ein Maschinenprofil für die VM an.

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

    Hinweis:

    Die Eingabe des Maschinenprofils hat ein Tag und eine andere VM-Größe (ServiceOffering) angegeben.

  5. Rufen Sie die Liste der Eigenschaften ab, die die VM nach dem Zusammenführen der Konfigurationsaktualisierungen auf der VM mit den Maschinenkatalogaktualisierungen haben wird. Zum Beispiel:

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

    Hinweis:

    Alle Aktualisierungen an der VM überschreiben die Aktualisierungen, die am Maschinenkatalog vorgenommen wurden.

  6. Geplante Aktualisierung für die VM anfordern. Zum Beispiel:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  7. Starten Sie die VM neu. Zum Beispiel:

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

    Die VM behält ihre aktualisierte VM-Größe bei, die vom Maschinenprofil abgeleitet wurde. Die im Maschinenprofil angegebenen Tag-Werte werden ebenfalls auf die VM angewendet. Der Speichertyp wird jedoch vom neuesten Bereitstellungsschema abgeleitet.

  8. Rufen Sie die Konfigurationsversion der VM ab. Zum Beispiel:

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

    Der ProvisioningSchemeVersion und der ProvVMConfigurationVersion zeigen nun die neueste Version an.

Konfigurationsaktualisierungen einer VM rückgängig machen

  1. Nachdem Sie die Aktualisierungen auf eine VM angewendet haben, schalten Sie die VM aus.
  2. Führen Sie den folgenden Befehl aus, um die auf die VM angewendeten Aktualisierungen zu entfernen. Zum Beispiel:

    Set-ProvVM -RevertToProvSchemeConfiguration -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    
  3. Geplante Aktualisierung für die VM anfordern. Zum Beispiel:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. VM neu starten. Zum Beispiel:

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
  5. Konfigurationsversion der VM prüfen. Zum Beispiel:

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

    Der ProvVMConfigurationVersion-Wert ist jetzt die Konfigurationsversion des Maschinenkatalogs.

Datenträgerverschlüsselung ändern

Sie können die Datenträgerverschlüsselung in Azure-Virtualisierungsumgebungen ändern und Folgendes tun:

  • Einen MCS-Maschinenkatalog mit einem Datenträgerverschlüsselungssatz (DES) erstellen, der sich vom DES des Masterimages unterscheidet, mithilfe des Befehls New-ProvScheme. Zum Beispiel:

     $customProperties = @"
     <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="DiskEncryptionSetId" Name="Zones" Value="/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/testrsg/providers/Microsoft.Compute/diskEncryptionSets/test-diskEncryptionSet"/>
     </CustomProperties>
     "@
     New-ProvScheme -CleanOnBoot `
     -ProvisioningSchemeName $provisioningSchemeName `
     -HostingUnitName $hostingUnitName `
     -IdentityPoolName $identityPoolName `
     -InitialBatchSizeHint $numberOfVms `
     -masterImagePath $masterImagePath `
     -NetworkMapping $networkMapping `
     -CustomProperties $customProperties
     <!--NeedCopy-->
    
  • Den Datenträgerverschlüsselungstyp von einem DES-Schlüssel zu einem anderen DES-Schlüssel eines vorhandenen MCS-Maschinenkatalogs und vorhandener VMs mithilfe der Befehle Set-ProvScheme und Set-ProvVMUpdateTimeWindow ändern. Nachdem Sie die VMs neu gestartet haben, können Sie den aktualisierten DES-Schlüssel sehen. Zum Beispiel:

     $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" />
     </CustomProperties>'
     Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    
  • Einen MCS-Maschinenkatalog und eine VM, die zuvor nicht CMEK-fähig war, aktualisieren, um eine kundenverwaltete Verschlüsselung (CMEK) (DES), Datenträgerverschlüsselung auf dem Host oder doppelte Verschlüsselung zu verwenden, mithilfe der Befehle Set-ProvScheme und Set-ProvVMUpdateTimeWindow. Informationen zu verschiedenen Verschlüsselungstypen finden Sie unter Azure-serverseitige Verschlüsselung, Azure-Datenträgerverschlüsselung auf dem Host und Doppelte Verschlüsselung auf verwaltetem Datenträger.

  • Einen vorhandenen MCS-Maschinenkatalog und VMs aktualisieren, damit sie nicht verschlüsselt sind, die zuvor mithilfe der Befehle Set-ProvScheme und Set-ProvVMUpdateTimeWindow verschlüsselt waren. Zum Beispiel:

     $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="" />
     </CustomProperties>'
     Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    
  • Datenträgerverschlüsselung mit privatem Endpunkt aktivieren (ein MCS-Maschinenkatalog, der eine Hostverbindung mit ProxyHypervisorTrafficThroughConnector verwendet hat). Informationen zum Aktivieren der Datenträgerverschlüsselung mit privaten Endpunkten finden Sie unter Datenträgerverschlüsselung mit privatem Endpunkt aktivieren.

Datenträgerverschlüsselung mit privatem Endpunkt aktivieren

Gemäß der Azure-Einschränkung können Sie derzeit keine serverseitige Verschlüsselung mit kundenverwalteten Schlüsseln für private Endpunkte verwenden. Sie können jedoch einen vorhandenen MCS-Maschinenkatalog und VMs mit privaten Endpunkten aktualisieren, damit sie mit dem DES-Schlüssel verschlüsselt werden.

Einen vorhandenen Maschinenkatalog mit privaten Endpunkten aktualisieren

Die detaillierten Schritte zum Aktualisieren eines vorhandenen Maschinenkatalogs mit privaten Endpunkten sind wie folgt:

  1. Erstellen Sie einen Katalog ohne Festplattenverschlüsselung über ProxyHypervisorTrafficThroughConnector.
  2. Führen Sie Set-ProvScheme aus, um den Katalog mit DiskEncryptionSetId zu aktualisieren.

    Hinweis:

    DiskEcryptionSetId kann über CustomProperties oder MachineProfile konfiguriert werden. Wenn es sowohl in CustomProperties als auch in MachineProfile definiert ist, werden die in CustomProperties definierten Eigenschaften angewendet.

    Beispiel bei Verwendung von CustomProperties:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1"/>
    </CustomProperties>'
    Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
    <!--NeedCopy-->
    

    Beispiel bei Verwendung von MachineProfile: Verwenden Sie eine VM mit aktivierter Festplattenverschlüsselung oder eine Vorlagenspezifikation mit Festplattenverschlüsselungseinstellungen:

    Set-ProvScheme -ProvisioningSchemeName azure-catalog -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\testrg.resourcegroup\new-template.vm"
    <!--NeedCopy-->
    

    Alternativ können Sie ein Maschinenprofil mit Web Studio aktualisieren.

  3. Führen Sie Set-ProvVMUpdateTimeWindow aus, um vorhandene Katalog-VMs zu aktualisieren. Zum Beispiel:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. Nach dem Neustart der VMs können Sie die aktualisierte Festplattenverschlüsselung auf den VM-Datenträgern im Azure-Portal sehen.
  5. Führen Sie Set-ProvScheme aus, um die Festplattenverschlüsselung aufzuheben, bevor Sie neue Katalog-VMs hinzufügen.

    Hinweis:

    Dieser Schritt ist erforderlich, da Sie einen Katalog mit privatem Endpunkt aktualisieren. Wenn Sie diesen Schritt nicht ausführen, erhalten Sie Fehler beim Versuch, neue VMs zum Katalog hinzuzufügen.

    Zum Beispiel:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="" />
    </CustomProperties>'
    Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
    <!--NeedCopy-->
    
  6. Fügen Sie dem Katalog neue VMs hinzu.

Einzelne Katalog-VMs aktualisieren

Die detaillierten Schritte zum Aktualisieren einzelner Katalog-VMs sind wie folgt:

  1. Erstellen Sie einen Katalog ohne Festplattenverschlüsselung über ProxyHypervisorTrafficThroughConnector.
  2. Führen Sie Set-ProvVM aus, um die Katalog-VM mit DiskEncryptionSetId zu aktualisieren.

    Hinweis:

    Die DiskEcryptionSetId kann entweder über CustomProperties oder MachineProfile konfiguriert werden.

    Beispiel bei Verwendung von CustomProperties:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" />
    </CustomProperties>'
    Set-ProvVM -ProvisioningSchemeName azure-catalog  -VMName azu01 -CustomProperties $customProperties
    <!--NeedCopy-->
    

    Beispiel bei Verwendung von MachineProfile:

    Set-ProvVM -ProvisioningSchemeName azure-catalog  -VMName azu01 -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\testrg.resourcegroup\new-template.vm"
    <!--NeedCopy-->
    
  3. Führen Sie Set-ProvVMUpdateTimeWindow aus, um vorhandene Katalog-VMs zu aktualisieren. Zum Beispiel:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. Nach dem Neustart der VMs sehen Sie die aktualisierte Festplattenverschlüsselung auf den VM-Datenträgern im Azure-Portal.
  5. Fügen Sie dem Katalog neue VMs hinzu.

Informationen für Azure-VMs, Snapshots, Betriebssystemdatenträger und Galerie-Image-Definition abrufen

Sie können Informationen für eine Azure-VM anzeigen, einschließlich Betriebssystemdatenträger und -typ, Snapshot und Galerie-Image-Definition. Diese Informationen werden für Ressourcen auf dem Master-Image angezeigt, wenn ein Maschinenkatalog zugewiesen wird. Verwenden Sie diese Funktionalität, um entweder ein Linux- oder Windows-Image anzuzeigen und auszuwählen. Eine PowerShell-Eigenschaft, TemplateIsWindowsTemplate, wurde dem Parameter AdditionDatafield hinzugefügt. Dieses Feld enthält Azure-spezifische Informationen: VM-Typ, Betriebssystemdatenträger, Galerie-Image-Informationen und Betriebssystemtyp-Informationen. Das Setzen von TemplateIsWindowsTemplate auf True zeigt an, dass der Betriebssystemtyp Windows ist; das Setzen von TemplateIsWindowsTemplate auf False zeigt an, dass der Betriebssystemtyp Linux ist.

Tipp:

Informationen, die von der PowerShell-Eigenschaft TemplateIsWindowsTemplate angezeigt werden, stammen aus der Azure-API. Manchmal kann dieses Feld leer sein. Zum Beispiel enthält ein Snapshot von einem Datenträger das Feld TemplateIsWindowsTemplate nicht, da der Betriebssystemtyp nicht aus einem Snapshot abgerufen werden kann.

Setzen Sie beispielsweise den Azure VM AdditionData Parameter für den Windows-Betriebssystemtyp mit PowerShell auf True:

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-->

Von MCS erstellte Ressourcen identifizieren

Im Folgenden sind die Tags aufgeführt, die MCS den Ressourcen hinzufügt. Die Tags in der Tabelle werden als „Schlüssel“:„Wert“ dargestellt.

Ressourcenname Tag
ID-Datenträger “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Image “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
NIC “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Betriebssystemdatenträger “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
PrepVM “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Veröffentlichte Momentaufnahme “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Ressourcengruppe “CitrixResource” : “Internal”
  CitrixSchemaVersion: 2.0
  “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
Speicherkonto “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
VM im Katalog “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
WBC-Datenträger “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”

Hinweis:

Eine VM ist im Citrix-Inventar nicht sichtbar, wenn ein CitrixResource-Tag hinzugefügt wird, um sie als eine von MCS erstellte Ressource zu identifizieren. Sie können das Tag entfernen oder umbenennen, um sie sichtbar zu machen.

Tags entfernen

Wenn Sie einen Katalog oder eine VM erstellen, werden Tags für die folgenden Ressourcen erstellt:

  • Ressourcengruppe
  • Virtueller Computer
  • Betriebssystemdatenträger
  • Identitätsdatenträger
  • Netzwerkschnittstelle
  • Speicherkonto

Sie können VMs und Maschinenkataloge aus der Citrix-Datenbank entfernen und Tags löschen. Sie können Folgendes verwenden:

  • Remove-ProvVM mit dem ForgetVM-Parameter, um VMs und Tags von einer einzelnen VM oder einer Liste von VMs aus einem Maschinenkatalog zu entfernen.
  • Remove-ProvScheme mit dem ForgetVM-Parameter, um einen Maschinenkatalog aus der Citrix-Datenbank und Tags aus einem gesamten Maschinenkatalog zu entfernen.

Diese Funktion ist nur für persistente VMs anwendbar.

So gehen Sie vor:

  1. Öffnen Sie ein PowerShell-Fenster.
  2. Führen Sie asnp citrix* aus, um die Citrix-spezifischen PowerShell-Module zu laden.
  3. Führen Sie Remove-ProvVM aus, um VMs aus der Citrix-Datenbank und Tags von VMs zu löschen. Beispiel:

    Remove-ProvVM -ProvisioningSchemeName “ProvisioningSchemeName” -VMName “vmname” -ForgetVM
    <!--NeedCopy-->
    
  4. Führen Sie Remove-ProvScheme aus, um den Maschinenkatalog aus der Citrix-Datenbank und Tags von Maschinenkatalogen zu löschen. Beispiel:

    Remove-ProvScheme -ProvisioningSchemeName “ProvisioningSchemeName” -ForgetVM
    <!--NeedCopy-->
    

    Hinweis:

    Nachdem Sie den ForgetVM-Parameter in Remove-ProvScheme verwendet haben, löscht MCS alle Snapshots, einschließlich des Basisdatenträger-Snapshots, wenn das Bereitstellungsschema entweder in einer selbstverwalteten Ressourcengruppe (BYORG) oder einer von Citrix verwalteten Ressourcengruppe vorhanden ist.

Weitere Informationen