Erstellen eines Maschinenkatalogs mit vorbereitetem Image in Azure
Erstellen Sie vorbereitete Images und verwenden Sie diese, um einen MCS-Maschinenkatalog zu erstellen, indem Sie Folgendes verwenden:
Die wichtigsten Schritte zum Erstellen eines MCS-Maschinenkatalogs mit dem vorbereiteten Image sind:
- Erstellen Sie die Imagedefinition und die anfänglichen Imageversionen.
- Verwenden Sie die Imageversion als vorbereitetes Image, um einen Katalog zu erstellen.
Web Studio verwenden
Erstellen einer Imagedefinition und einer anfänglichen Imageversion
Gehen Sie wie folgt vor, um eine Imagedefinition und die anfängliche Imageversion zu erstellen:
- Gehen Sie in Web Studio zum Knoten Images und klicken Sie auf Imagedefinition erstellen. Klicken Sie auf der Seite Einführung auf Weiter.
- Geben Sie auf der Seite Imagedefinition den OS-Typ und den Sitzungstyp für die Imagedefinition an.
- Wählen Sie eine vorhandene Ressourcengruppe aus oder erstellen Sie eine neue, um die Imagressourcen zu speichern. Um die Imagefreigabe zu aktivieren, wählen Sie Imageversionen platzieren in der Azure Compute Gallery und wählen Sie dann, eine neue Galerie zu erstellen oder eine vorhandene zu verwenden, um ihre Imageversionen zu speichern.
-
Wählen Sie auf der Seite Image die Option Ressourcen (nur die für die festgelegte Verbindung anwendbaren Ressourcen werden aufgelistet) und ein Masterimage aus, das als Vorlage zum Erstellen der Imageversion verwendet werden soll. Sie können das Kontrollkästchen Maschinenprofil verwenden aktivieren und ein Maschinenprofil auswählen.
Hinweis:
Bevor Sie ein Image auswählen, vergewissern Sie sich, dass VDA 2311 oder höher auf dem Master-Image installiert ist und der MCSIO-Treiber auf dem VDA installiert ist.
-
Wählen Sie auf der Seite Speicher- und Lizenztypen den Speicher- und Lizenztyp aus, der im Rahmen des Image-Vorbereitungsprozesses verwendet werden soll.
Hinweis:
Wenn Sie auf der Seite Image ein Maschinenprofil auswählen, wird der Lizenztyp des Maschinenprofils basierend auf der Profileinstellung vorab ausgewählt.
- Wählen Sie auf der Seite Maschinenspezifikation eine Maschinengröße aus. Wenn Sie auf der Seite Image ein Maschinenprofil auswählen, wird die Maschinengröße des Maschinenprofils standardmäßig ausgewählt.
- Wählen Sie auf der Seite NICs NICs für das Vorbereitungs-Image aus oder fügen Sie sie hinzu. Wählen Sie für jede NIC ein zugehöriges virtuelles Netzwerk aus.
- Wählen Sie auf der Seite Datenträgereinstellungen den vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) aus. Wenn das Maschinenprofil keinen CMEK hat, das Master-Image jedoch einen, wird der CMEK aus dem Master-Image vorab ausgewählt.
- Geben Sie auf der Seite Versionsbeschreibung eine Beschreibung für die erstellte anfängliche Image-Version ein.
- Überprüfen Sie auf der Seite Zusammenfassung die Details der Image-Definition und der erstellten anfänglichen Image-Version. Geben Sie einen Namen und eine Beschreibung für die Image-Definition ein. Klicken Sie auf Fertig stellen.
Image-Versionen erstellen
Image-Versionen ermöglichen die Verwaltung verschiedener Iterationen oder Updates eines bestimmten Images. Diese Funktionalität ermöglicht es Ihnen, mehrere Versionen eines Images für verschiedene Zwecke zu verwalten.
Um Image-Versionen aus der anfänglichen Image-Version zu erstellen, gehen Sie wie folgt vor:
Hinweis:
Die Hostingeinheit aller Image-Versionen muss identisch sein.
- Gehen Sie zum Knoten Images, wählen Sie eine Image-Version oder eine Image-Definition aus und klicken Sie auf Image-Version erstellen.
- Auf der Seite „Image-Definition“ können Sie die Hosting-Einheit ändern und das Masterimage und das Maschinenprofil für diese Imageversion erneut auswählen.
- Wenn die Konfiguration der Imageversion von der ursprünglich konfigurierten Imageversion abweichen soll, konfigurieren Sie die Einstellungen auf den Seiten Speicher- und Lizenztypen, Maschinenspezifikation, NICs und Datenträgereinstellungen des Dialogfelds Imageversion erstellen.
- Fügen Sie eine Beschreibung für die Imageversion hinzu. Klicken Sie auf Fertig stellen.

Hinweis:
Wenn die Erstellung der Imageversion aus irgendeinem Grund fehlschlägt, bietet die Registerkarte Problembehandlung unten eine Option zum Wiederholen.
Freigegebene vorbereitete Images
Um vorbereitete Images über verschiedene Hosting-Einheiten für Azure hinweg freizugeben, gehen Sie wie folgt vor:
- Klicken Sie mit der rechten Maustaste auf eine Imageversion und wählen Sie Imagefreigabe verwalten. Alle Hosting-Einheiten in Ihrer Azure-Umgebung werden angezeigt. Die Ressourcen, aus denen die Imageversion erstellt wurde, sind für alle Aktionen deaktiviert.
- Wählen Sie die Hosting-Einheiten aus, mit denen Sie das Image freigeben möchten, und klicken Sie auf Speichern. Die Spalte Freigabestatus zeigt „In Bearbeitung“ an.
- Klicken Sie auf die Registerkarte Ressourcen, um weitere Details zum Freigabestatus zu erhalten.
Hinweis:
Wenn der Status der Imageversionsfreigabe „In Bearbeitung“ ist, ist die Option zum Löschen der Imageversion oder Verwalten der Imagefreigabe deaktiviert.
Maschinenkatalog vom Knoten „Images“ erstellen
Verwenden Sie die Option Katalog erstellen im Knoten Images, um einen Katalog mit der Imageversion zu erstellen.
Alternativ können Sie die Version auswählen, wenn Sie einen Katalog im Knoten Maschinenkataloge erstellen, wobei Sie auf die Option für vorbereitete Images im Workflow zur Katalogerstellung verweisen. Siehe Erstellen eines Maschinenkatalogs über den Knoten Maschinenkataloge
So erstellen Sie einen MCS-Maschinenkatalog über den Knoten Images:
- Wählen Sie eine Imageversion aus und klicken Sie auf Katalog erstellen. Klicken Sie auf der Seite Einführung auf Weiter.
- Wählen Sie auf der Seite Desktop-Erfahrung die gewünschte Desktop-Erfahrung aus.
- Von der Seite Image bis zur Seite Datenträgereinstellungen sind die Einstellungen basierend auf der ausgewählten Imageversion vorausgewählt.
- Auf der Seite Ressourcengruppe können Sie eine neue Ressourcengruppe erstellen oder eine vorhandene Ressourcengruppe verwenden, um die Ressourcen dieses Katalogs zu platzieren.
- Schließen Sie die Einstellungen auf den folgenden Seiten ab.
- Überprüfen Sie auf der Seite Zusammenfassung die Details des Maschinenkatalogs. Geben Sie einen Namen und eine Beschreibung für den Maschinenkatalog ein. Klicken Sie auf Fertig stellen.
- Gehen Sie zum Knoten Maschinenkataloge, um den erstellten Maschinenkatalog anzuzeigen.
Erstellen eines Maschinenkatalogs über den Knoten Maschinenkataloge
So erstellen Sie einen MCS-Maschinenkatalog über den Knoten Maschinenkataloge:
- Klicken Sie im linken Navigationsbereich auf Maschinenkataloge.
- Klicken Sie auf Maschinenkatalog erstellen. Die Seite Maschinenkatalog-Setup wird angezeigt. Klicken Sie auf den Seiten Einführung, Maschinentyp und Maschinenverwaltung auf Weiter.
- Wählen Sie auf der Seite Maschinenverwaltung die folgenden Einstellungen aus:
- Wählen Sie Energieverwaltete Maschinen (z. B. virtuelle Maschinen oder Blade-PCs) aus.
- Wählen Sie Citrix Provisioning-Technologie. Wählen Sie anschließend Citrix Machine Creation Services™.
- Im Feld Ressourcen werden die Ressourcen aufgelistet, die zu verschiedenen Zonen gehören. Wählen Sie eine beliebige Azure-Netzwerkressource aus und klicken Sie auf Weiter.
- Auf der Seite Image: Gehen Sie für den Masterimage-Typ wie folgt vor:
- Wählen Sie Masterimage.
- Wählen Sie unter dem Masterimage ein Image aus. Das Blade listet alle Images auf, die derselben Region wie die Ressourcen angehören.
- Klicken Sie auf Fertig.
- Wählen Sie für den Typ „Vorbereitetes Image“ Vorbereitetes Image.
- Wählen Sie unter dem Vorbereiteten Image eine Imageversion einer Imagedefinition aus.
- Klicken Sie auf den Namen der Imageversion. Um weitere Details zur ausgewählten Imageversion anzuzeigen, klicken Sie auf die Versionsnummer, die unterstrichen ist.
- Wenn die ausgewählte Imageversion mit einem Maschinenprofil konfiguriert ist, wählen Sie ein Maschinenprofil aus. Wenn die ausgewählte Imageversion nicht mit einem Maschinenprofil konfiguriert ist, können Sie kein Maschinenprofil verwenden.
- Konfigurieren Sie die Einstellungen auf den folgenden Seiten.
- Auf der Seite Datenträgereinstellungen können Sie, wenn das ausgewählte vorbereitete Image einen Datenträgerverschlüsselungssatz verwendet, den Verschlüsselungssatz nicht entfernen, aber Sie können den Schlüssel in einen anderen Verschlüsselungsschlüssel ändern.
- Auf der Seite Ressourcengruppe können Sie wählen, ob Sie eine neue Ressourcengruppe erstellen oder eine vorhandene Ressourcengruppe verwenden möchten, um die Ressourcen dieses Katalogs zu platzieren.
- Schließen Sie die Einstellungen auf den folgenden Seiten ab.
- Auf der Seite Zusammenfassung überprüfen Sie die Details des Maschinenkatalogs. Geben Sie einen Namen und eine Beschreibung für den Maschinenkatalog ein. Klicken Sie auf Fertig stellen.
PowerShell verwenden
Ein vorbereitetes Image erstellen
Die detaillierten PowerShell-Befehle zum Erstellen einer vorbereiteten Image-Versionsspezifikation lauten wie folgt:
-
Überprüfen Sie die verfügbaren Namen der Imagedefinitionen mit
Test-ProvImageDefinitionNameAvailable command. Zum Beispiel:Test-ProvImageDefinitionNameAvailable -ImageDefinitionName <string[]> <!--NeedCopy--> -
Erstellen Sie eine Imagedefinition mit dem Befehl
New-ProvImageDefinition. Zum Beispiel:New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession <!--NeedCopy--> -
Erstellen Sie eine neue Konfiguration für die Imagedefinition in der angegebenen Hosting-Verbindung mit dem Befehl
Add-ProvImageDefinitionConnection.CustomPropertiesfürAdd-ProvImageDefinitionConnectionkann Folgendes enthalten. Wenn Sie die Parameter nicht verwenden, werden Standardwerte verwendet.-
ResourceGroups: Die Ressourcengruppe, die die Basisdatenträger enthält. -
UseSharedImageGallery: Indikator für den Typ der Basisdatenträger. Verwenden Sietruefür ACG (Image-Freigabe) undfalsefür Snapshot. -
ImageGallery: Der Galeriename, wenn der Basisdatenträger eine ACG-Image-Version ist.
Zum Beispiel:
-
Im Falle eines Snapshots und einer vom Kunden bereitgestellten Ressourcengruppe:
$CustomerOwnRsourceGroupProperties = @" <CustomProperties xmlns="http:// schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="ResourceGroups" Value="yangj_image" /> </CustomProperties> "@ <!--NeedCopy--> -
Im Falle von ACG und einer vom Kunden bereitgestellten Ressourcengruppe und Image-Galerie:
$CustomerOwnAllProperties = @" <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /> <Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" /> <Property xsi:type="StringProperty" Name="ImageGallery" Value="gallery" /> </CustomProperties> "@ <!--NeedCopy--> -
Im Falle von ACG und nur einer vom Kunden bereitgestellten Ressourcengruppe:
$CustomerOwnResourceGroupProperties = @" <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /> <Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" /> </CustomProperties> "@ <!--NeedCopy--> -
Im Falle von ACG und einer von Citrix verwalteten Ressourcengruppe und Image-Galerie:
$CustomerOwnResourceGroupNothingProperties = @" <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /> </CustomProperties> "@ <!--NeedCopy-->
Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName Azure28 [-CustomProperties $CustomProperties] <!--NeedCopy--> -
-
Erstellen Sie eine Image-Version mit dem Befehl
New-ProvImageVersion. Beispiel:New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1" <!--NeedCopy--> -
Fügen Sie der Image-Version mit dem Befehl
Add-ProvImageVersionSpeceine Master-Image-Versionsspezifikation hinzu. Beispiel:Add-ProvImageVersionSpec -ImageDefinitionName image1 -ImageVersionNumber 1 -HostingUnitName azure -MasterImagePath "XDHyp:\HostingUnits\azure\image.folder\azureresourcegroup.resourcegroup\win2022-snapshot.snapshot" <!--NeedCopy-->Hinweis:
Sie können nur eine Master-Image-Versionsspezifikation zu einer Image-Version für eine Hosting-Einheit hinzufügen.
-
Erstellen Sie eine vorbereitete Image-Versionsspezifikation aus der Master-Image-Versionsspezifikation mit dem Befehl
New-ProvImageVersionSpec. Beispiel:New-ProvImageVersionSpec -SourceImageVersionSpecUid c6e7384c-b2f8-46d6-9519-29a2c57ed3cb -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure\virtualprivatecloud.folder\azureresourcegroup.resourcegroup\azure-vnet-eastus.virtualprivatecloud\dev.network"} -ServiceOffering"XDHyp:\HostingUnits\azure\serviceoffering.folder\Standard_B2ms.serviceoffering" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"></CustomProperties>" -RunAsynchronously <!--NeedCopy--> -
Sie können eine vorbereitete Image-Versionsspezifikation auch mit einer anderen Hosting-Einheit in allen Hosting-Verbindungen über den Befehl
Add-ProvImageVersionSpecHostingUnitteilen. Beispiel:Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid xxxxxxx -HostingUnitName AzureWest <!--NeedCopy-->Hinweis:
Eine Hosting-Einheit und ein Vorbereitungstyp können nur eine vorbereitete Instanz haben.
Beispiel für den vollständigen Satz von PowerShell-Befehlen zum Erstellen einer Image-Definition, einer Image-Version und einer vorbereiteten Image-Versionsspezifikation:
New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession
$CustomProperties = @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" />
<Property xsi:type="StringProperty" Name="ImageGallery" Value="gallery" />
</CustomProperties>
"@
Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName Azure28 -CustomProperties $CustomProperties
$imageVersion = New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1"
$SourceImageVersionSpec = Add-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid `
-HostingUnitUid $hostingunit.HostingUnitUid `
-MasterImagePath "XDHyp:\HostingUnits\azure28\image.folder\abc.resourcegroup\def-snapshot.snapshot"
New-ProvImageVersionSpec -NetworkMapping @{"0" = "XDHyp:\HostingUnits\azure28\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\studio-mcs-infrastructure.resourcegroup\studio-mcs-vnet-eastus.virtualprivatecloud\mcs-dev.network" } -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"LicenseType`" Value=`"Windows_Server`" /></CustomProperties>" -ServiceOffering "XDHyp:\HostingUnits\azure28\serviceoffering.folder\Standard_B2s.serviceoffering" -SourceImageVersionSpecUid $SourceImageVersionSpec.ImageVersionSpecUid
Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid xxxxxxx -HostingUnitName AzureWest
$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid | Where SourceImageVersionSpecUid-eq $SourceImageVersionSpec.ImageVersionSpecUid
<!--NeedCopy-->
Hinweis:
- Alle Image-Versionsspezifikationen in einer Image-Definition müssen zur selben Hosting-Einheit gehören.
- Eine Image-Version kann nur eine Master-Image-Versionsspezifikation und eine vorbereitete Image-Versionsspezifikation haben.
- Alle Image-Versionsspezifikationen müssen entweder ein Maschinenprofil haben, oder keine der Image-Versionsspezifikationen darf ein Maschinenprofil haben.
Katalog mit einer vorbereiteten Image-Versionsspezifikation erstellen
Erstellen Sie einen MCS-Maschinenkatalog aus der vorbereiteten Image-Versionsspezifikation mit dem Befehl New-ProvScheme. Beispiel:
New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitUid <Guid> -IdentityPoolUid <Guid> [-VMCpuCount <int>] [-VMMemoryMB <int>] [-UseWriteBackCache] [-NetworkMapping <Hashtable>] [-CleanOnBoot] [-Scope <string[]>] [-Metadata <Hashtable>] [-ServiceOffering <string>] [-SecurityGroup <string[]>] [-TenancyType <string>] [-MachineProfile <string>] [-CustomProperties <string>] [-ResetAdministratorPasswords] [-UseFullDiskCloneProvisioning] [-RunAsynchronously] [-PurgeJobOnSuccess] [-ProvisioningSchemeType <ProvisioningSchemeType>]
<!--NeedCopy-->
Oder,
New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitName <string> -IdentityPoolName <string> [-VMCpuCount <int>] [-VMMemoryMB <int>] [-UseWriteBackCache] [-NetworkMapping <Hashtable>] [-CleanOnBoot] [-Scope <string[]>] [-Metadata <Hashtable>] [-ServiceOffering <string>] [-SecurityGroup <string[]>] [-TenancyType <string>] [-MachineProfile <string>] [-CustomProperties <string>] [-ResetAdministratorPasswords] [-UseFullDiskCloneProvisioning] [-RunAsynchronously] [-PurgeJobOnSuccess] [-ProvisioningSchemeType <ProvisioningSchemeType>]
<!--NeedCopy-->
Wenn Sie eine ACG-Image-Versionsspezifikation verwenden möchten, dann legen Sie UseSharedImageGallery als true fest. Zum Beispiel:
$provSchemeCustomProperties= @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" />
</CustomProperties>
"@
New-ProvScheme -ProvisioningSchemeName assignimage -ImageVersionSpecUid $PreparedImageVersionSpec.ImageVersionSpecUid `
-HostingUnitUid $hostingunit.HostingUnitUid `
-IdentityPoolUid $IdentityPool.IdentityPoolUid `
-CleanOnBoot -Scope @() -SecurityGroup @() `
-ServiceOffering "XDHyp:\HostingUnits\azure28\serviceoffering.folder\Standard_B2s.serviceoffering" `
-NetworkMapping @{"0"="XDHyp:\HostingUnits\azure28\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\studio-mcs-infrastructure.resourcegroup\studio-mcs-vnet-eastus.virtualprivatecloud\mcs-dev.network"} `
-CustomProperties $provSchemeCustomProperties
<!--NeedCopy-->
Beispiel für den vollständigen Satz von PowerShell-Befehlen zum Erstellen eines Katalogs:
$Catalog = New-BrokerCatalog -AllocationType "Random" -IsRemotePC $False -MinimumFunctionalLevel "L7_20" -Name "azurecatalog" -PersistUserChanges "Discard" -ProvisioningType "MCS" -Scope @() -SessionSupport "MultiSession"
$IdentityPool = New-AcctIdentityPool -AllowUnicode -Domain "azure.local" -IdentityPoolName "azurecatalog" -IdentityType "ActiveDirectory" -NamingScheme "azure##" -NamingSchemeType "Numeric" -Scope @()
$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageDefinitionName image1 -ImageVersionNumber 1 -Filter "PreparationType -eq 'Mcs'"
$Task = New-ProvScheme -ProvisioningSchemeName azurecatalog -ImageVersionSpecUid $PreparedImageVersionSpec.ImageVersionSpecUid -HostingUnitName azure -IdentityPoolName azurecatalog -CleanOnBoot -Scope @() -SecurityGroup @() -ServiceOffering "XDHyp:\HostingUnits\azure\serviceoffering.folder\Standard_B2s.serviceoffering" -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure\virtualprivatecloud.folder\azureresourcegroup.resourcegroup\azure-vnet-eastus.virtualprivatecloud\dev.network"} -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"StandardSSD_LRS`" /></CustomProperties>" -RunAsynchronously
Get-ProvTask -TaskId $Task.TaskId
$ProvScheme = Get-ProvScheme -ProvisioningSchemeName azurecatalog
Set-BrokerCatalog -Name $Catalog.Name -ProvisioningSchemeId $ProvScheme.ProvisioningSchemeUid
<!--NeedCopy-->