Citrix Virtual Apps and Desktops

Microsoft Azure Resource Manager-Virtualisierungsumgebungen

Folgen Sie diesen Anleitungen, wenn Sie mit Microsoft Azure Resource Manager virtuelle Maschinen in Ihrer Umgebung bereitstellen.

Sie sollten mit folgenden Elementen vertraut sein:

Einschränkungen

Berücksichtigen Sie beim Verwenden von Azure Resource Manager die folgende Einschränkung:

  • Dieses Produkt unterstützt keine VDAs in einer Windows Virtual Desktop-Umgebung. Muss WVD unterstützt werden, verwenden Sie Citrix Virtual Apps and Desktops Service oder Citrix Virtual Apps and Desktops Standard für Azure.

Bedarfsgesteuertes Provisioning in Azure

Wenn Sie Maschinenkataloge mit Maschinenerstellungsdiensten (MCS) in Azure Resource Manager erstellen, bietet das bedarfsgesteuerte Provisioning in Azure folgende Vorteile:

  • Geringere Speicherkosten
  • Schnellere Katalogerstellung
  • Schnellere Energievorgänge bei virtuellen Maschinen (VM)

Die Verfahren zum Erstellen von Hostverbindungen und MCS-Maschinenkatalogen in Studio sind beim bedarfsgesteuerten Provisioning die gleichen. Der Unterschied liegt in Art und Zeitpunkt der Ressourcenerstellung und -verwaltung in Azure und in der VM-Sichtbarkeit im Azure-Portal.

Wenn MCS einen Katalog erstellt hat, werden die VMs während des Provisioningvorgangs in Azure erstellt.

Beim bedarfsgesteuerten Provisioning in Azure werden VMs nur erstellt, wenn Citrix Virtual Apps and Desktops nach Abschluss des Provisionings eine Einschaltaktion initiiert. VM sind im Azure-Portal nur sichtbar, wenn sie ausgeführt werden. (In Studio sind VMs unabhängig vom Ausführungsstatus immer sichtbar.)

Wenn Sie einen MCS-Katalog erstellen, werden im Azure-Portal die Ressourcengruppen, Netzwerksicherheitsgruppe, Speicherkonten, Netzwerkschnittstellen, Basisimages und Identitätsdatenträger angezeigt. VMs werden erst dann im Azure-Portal angezeigt, wenn Citrix Virtual Apps and Desktops eine VM-Einschaltaktion startet. Der Status der VM ändert sich dann in Studio in Ein.

  • Bei gepoolten Maschinen sind OS-Datenträger und Zurückschreibcache nur vorhanden, wenn die VM vorhanden ist. Durch gepoolte Maschinen kann viel Speicher eingespart werden, wenn Sie Ihre Maschinen routinemäßig herunterfahren (z. B. außerhalb der Arbeitszeiten).
  • Bei dedizierten Maschinen wird der Betriebssystemdatenträger beim ersten Einschalten der VM erstellt. Es bleibt im Speicher, bis die Maschine gelöscht wird.

Das Initiieren einer Ausschaltaktion für eine VM führt dazu, dass Azure sie löscht. Die VM wird nicht mehr im Azure-Portal angezeigt. In Studio ändert sich der Status der VM in Aus.

Vor Einführung des bedarfsgesteuerten Provisionings erstellte Kataloge

VMs in Katalogen, die erstellt wurden, bevor Citrix Virtual Apps and Desktops das bedarfsgesteuerte Provisioning von Azure unterstützte (Mitte 2017), sind im Azure-Portal unabhängig von ihrem Ausführungsstatus sichtbar. Sie können diese VMs nicht in Maschinen mit bedarfsgesteuertem Provisioning konvertieren.

Um in den Genuss der Leistungsverbesserungen und verringerten Speicherkosten des bedarfsgesteuerten Provisionings zu kommen, erstellen Sie Kataloge mit MCS.

Azure Managed Disks

Azure Managed Disks ist ein flexibles Datenträgerspeichersystem, das Sie zusammen mit per MCS erstellten Maschinenkatalogen als Alternative zu herkömmlichen Speicherkonten verwenden können.

Das Managed Disks-Feature erleichtert die Erstellung und Verwaltung von Speicherkonten. Es bietet eine einfache und hochverfügbare Lösung zum Erstellen und Verwalten von Datenträgern. Sie können verwaltete Datenträger als Masterimage und als VM verwenden. Die Verwendung verwalteter Datenträger kann die Erstellung und Aktualisierung von Maschinenkatalogen beschleunigen. Weitere Informationen finden Sie unter Informationen zu verwalteten Datenträgern.

Maschinenkataloge verwenden standardmäßig verwaltete Datenträger. Sie können diese Standardeinstellung bei der Katalogerstellung außer Kraft setzen.

Verwenden verwalteter Datenträger

Bei der Erstellung eines Maschinenkatalogs in Studio werden auf der Seite Masterimage des Assistenten verwaltete Datenträger zusätzlich zu VMs und virtuellen Festplatten aufgelistet. Nicht alle Azure-Regionen unterstützen das Managed Disks-Feature. Verwaltete Datenträger werden in der Liste für alle Regionen angezeigt, die für die Hostverbindung des Katalogs sichtbar sind.

Die Zeit für die Katalogerstellung ist optimal, wenn Image und Katalog in derselben Region sind.

Das Managed Disks-Feature unterstützt derzeit nicht das Kopieren von Datenträgern zwischen Azure-Regionen. Wenn Sie ein Image in einer anderen Region auswählen, als der, in der der Katalog von MCS bereitgestellt wird, wird das Image in eine VHD in einem herkömmlichen Speicherkonto kopiert. Das Image wird im Katalogbereich angezeigt und dann wieder in einen verwalteten Datenträger konvertiert.

Auf der Seite Speicher- und Lizenztypen des Katalogerstellungsassistenten können Sie ein Kontrollkästchen zur Verwendung konventioneller Speicherkonten anstelle verwalteter Datenträger aktivieren. Sie können das Kontrollkästchen nicht aktivieren, wenn das Provisioning in einer Azure-Region erfolgt, die keine verwalteten Datenträger unterstützt.

Erstellen einer Verbindung mit Azure Resource Manager

Informationen zu den Assistenten zum Erstellen einer Verbindung finden Sie unter Verbindungen und Ressourcen. Die nachfolgenden Informationen gelten für Azure Resource Manager-Verbindungen.

Überlegungen:

  • Dienstprinzipale müssen für das Abonnement die Teilnehmerrolle haben.
  • Beim Erstellen der ersten Verbindung fordert Azure Sie auf, die erforderlichen Berechtigungen zu erteilen. Sie müssen sich für zukünftige Verbindungen neu authentifizieren, Ihre Zustimmung wird jedoch in Azure gespeichert und die Aufforderung nicht wieder angezeigt.
  • Für die Authentifizierung verwendete Konten müssen Co-Administrator des Abonnements sein.
  • Das für die Authentifizierung verwendete Konto muss Mitglied des Verzeichnisses des Abonnements sein. Es gibt zwei Arten von Konten, auf die Sie achten sollten: “Arbeitsplatz oder Schule” und “Persönliches Microsoft-Konto”. Weitere Informationen hierzu finden Sie unter CTX219211.
  • Sie können ein vorhandenes Microsoft-Konto verwenden, indem Sie es als Mitglied des Abonnementverzeichnisses hinzufügen. Es kann jedoch zu Komplikationen kommen, wenn dem Benutzer vorher Gastzugriff auf eine der Ressourcen des Verzeichnisses gewährt wurde. In dem Fall gibt es einen Platzhaltereintrag im Verzeichnis, der dem Konto nicht die erforderlichen Berechtigungen gewährt und es wird ein Fehler zurückgegeben.

    Um das Zugriffsproblem zu beheben, entfernen Sie die Ressourcen aus dem Verzeichnis und fügen Sie sie explizit wieder hinzu. Dabei ist jedoch Vorsicht geboten, denn dies hat unbeabsichtigte Auswirkungen auf andere Ressourcen, auf die das Konto zugreifen kann.

  • Es gibt ein bekanntes Problem, bei dem bestimmte Konten, die eigentlich Mitglieder sind, als Verzeichnisgäste erkannt werden. Konten, die als Gäste erkannt wurden, treten in der Regel mit älteren, etablierten Verzeichniskonten auf. Fügen Sie als Workaround dem Verzeichnis jeweils ein Konto hinzu, das den richtigen Mitgliedschaftswert erhält.
  • Ressourcengruppen sind Container für Ressourcen und enthalten Ressourcen aus ihrer eigenen und aus anderen Regionen. Ressourcengruppen können verwirrend sein, wenn Sie erwarten, dass die Ressourcen in der Region einer Ressourcengruppe angezeigt werden.
  • Stellen Sie sicher, dass Ihr Netzwerk und Subnetz groß genug zum Hosten der benötigten Maschinenzahl ist. Die Netzwerkgröße erfordert etwas Planung, doch Microsoft kann Ihnen helfen, die richtigen Werte anzugeben und bietet Empfehlungen für die erforderliche Adressraumkapazität.

Es gibt zwei Möglichkeiten, eine Hostverbindung mit Azure Resource Manager zu herzustellen:

  • Authentifizierung bei Azure Resource Manager zum Erstellen eines Dienstprinzipals
  • Verwenden der Informationen eines zuvor erstellten Dienstprinzipals für die Verbindung mit Azure Resource Manager

Authentifizierung bei Azure Resource Manager zum Erstellen eines Dienstprinzipals

Bevor Sie anfangen, stellen Sie Folgendes sicher:

  • Sie haben ein Benutzerkonto des Azure Active Directory-Mandanten Ihres Abonnements.
  • Das Azure Active Directory-Benutzerkonto ist Co-Administrator des Azure-Abonnements, das Sie für die Bereitstellung von Ressourcen verwenden möchten.

Führen Sie im Assistenten zum Einrichten einer Site oder zum Hinzufügen einer Verbindung und von Ressourcen folgende Schritte aus:

  1. Wählen Sie auf der Seite Verbindung den Verbindungstyp Microsoft Azure. Wählen Sie dann Ihre Azure Cloud-Umgebung aus.
  2. Geben Sie auf der Seite Verbindungsdetails die ID Ihres Azure-Abonnements und einen Namen für die Verbindung ein. Der Verbindungsname muss aus 1–64 Zeichen bestehen, er darf nicht ausschließlich aus Leerzeichen bestehen und er darf keine nicht alphanumerischen Zeichen enthalten. Nachdem Sie die Abonnement-ID und den Verbindungsnamen eingegeben haben, wird die Schaltfläche Neu erstellen verfügbar.
  3. Geben Sie den Benutzernamen und das Kennwort des Azure Active Directory-Kontos ein.
  4. Klicken Sie auf Anmelden.
  5. Klicken Sie auf Akzeptieren, um Citrix Virtual Apps and Desktops die aufgelisteten Berechtigungen zu erteilen. In Citrix Virtual Apps and Desktops wird ein Dienstprinzipal erstellt, der die Verwaltung von Azure Resource Manager-Ressourcen für den angegebenen Benutzer ermöglicht.
  6. Nachdem Sie auf Akzeptieren geklickt haben, kehren Sie auf die Seite Verbindung in Studio zurück. Nach der erfolgreichen Authentifizierung bei Azure werden die Schaltflächen Neu erstellen und Vorhandene verwenden durch Verbunden ersetzt und ein grünes Häkchen für die erfolgreiche Verbindung mit Ihrem Azure-Abonnement angezeigt wird.
  7. Geben Sie an, welche Tools zum Erstellen der virtuellen Maschinen verwendet werden sollen, und klicken Sie dann auf Weiter. (Sie kommen über diese Seite im Assistenten nur hinaus, wenn Sie sich bei Microsoft Azure authentifiziert und die Erteilung der erforderlichen Berechtigungen akzeptiert haben.)
  8. Ressourcen umfassen Region und Netzwerk.

    • Wählen Sie auf der Seite Region eine Region aus.
    • Geben Sie auf der Seite Netzwerk einen Ressourcennamen zur Identifizierung der Kombination aus Region und Netzwerk in Studio ein. Der Name muss aus 1–64 Zeichen bestehen. Der Ressourcenname darf nicht ausschließlich aus Leerzeichen bestehen und er darf keine nicht alphanumerischen Zeichen enthalten.
    • Wählen Sie eine Kombination aus virtuellem Netzwerk und Ressourcengruppe. Da mehrere virtuelle Netzwerke den gleichen Namen haben können, erzielen Sie durch die Kombination aus Netzwerknamen und Ressourcengruppe Einmaligkeit. Wenn Sie auf der vorherigen Seite eine Region auswählen, die keine virtuellen Netzwerke hat, werden Sie zu dieser Seite zurückgeleitet. Wählen Sie eine Region mit virtuellen Netzwerken aus.
  9. Schließen Sie den Assistenten ab.

Verwenden der Informationen eines zuvor erstellten Dienstprinzipals für die Verbindung mit Azure Resource Manager

Zum manuellen Erstellen eines Dienstprinzipals stellen Sie eine Verbindung mit Ihrem Azure Resource Manager-Abonnement her und verwenden Sie die im nachfolgenden Abschnitt aufgeführten PowerShell-Cmdlets.

Voraussetzungen:

  • $SubscriptionId: Azure Resource Manager-SubscriptionID des Abonnements, für das Sie VDAs bereitstellen möchten.
  • $AADUser: Azure AD-Benutzerkonto des Abonnement-AD-Mandanten. Legen Sie $AADUser als Co-Administrator des Abonnements fest.
  • $ApplicationName: Name der Anwendung, die in Azure AD erstellt werden soll.
  • $ApplicationPassword: Kennwort für die Anwendung. Verwenden Sie dieses Kennwort als Anwendungsgeheimnis beim Erstellen der Hostverbindung.

Führen Sie zum Erstellen eines Dienstprinzipals folgende Schritte aus:

  1. Stellen Sie eine Verbindung mit Ihrem Azure Resource Manager-Abonnement her.

    Login-AzureRmAccount

  2. Wählen Sie das Azure Resource Manager-Abonnement, in dem Sie den Dienstprinzipal erstellen möchten.

    Select-AzureRmSubscription -SubscriptionID $SubscriptionId

  3. Erstellen Sie die Anwendung im AD-Mandanten.

    $AzureADApplication = New-AzureRmADApplication -DisplayName $ApplicationName -HomePage "https://localhost/$ApplicationName" -IdentifierUris https://$ApplicationName -Password $ApplicationPassword

  4. Erstellen Sie einen Dienstprinzipal.

    New-AzureRmADServicePrincipal -ApplicationId $AzureADApplication.ApplicationId

  5. Weisen Sie dem Dienstprinzipal eine Rolle zu.

    New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $AzureADApplication.ApplicationId –scope /subscriptions/$SubscriptionId

  6. Notieren Sie die im Ausgabefenster der PowerShell-Konsole angezeigte Anwendungs-ID (ApplicationId). Sie müssen diese ID beim Erstellen der Hostverbindung angeben.

Führen Sie im Assistenten zum Einrichten einer Site oder zum Hinzufügen einer Verbindung und von Ressourcen folgende Schritte aus:

  1. Wählen Sie auf der Seite Verbindung den Verbindungstyp Microsoft Azure und Ihre Azure-Umgebung.
  2. Geben Sie auf der Seite Verbindungsdetails die ID Ihres Azure-Abonnements und einen Namen für die Verbindung ein. Der Verbindungsname muss aus 1–64 Zeichen bestehen, er darf nicht nur aus Leerzeichen bestehen oder nur aus nicht-alphanumerischen Zeichen.
  3. Klicken Sie auf Vorhandene verwenden. Geben Sie die Abonnement-ID, den Namen des Abonnements, die Authentifizierungs-URL, die Verwaltungs-URL, das Speichersuffix, die Active Directory- oder Mandanten-ID, die Anwendungs-ID und das Anwendungsgeheimnis für den vorhandenen Dienstprinzipal an. Nachdem Sie die Details eingegeben haben, ist die Schaltfläche OK aktiviert. Klicken Sie auf OK.
  4. Geben Sie an, welche Tools zum Erstellen der virtuellen Maschinen verwendet werden sollen, und klicken Sie dann auf Weiter. Die von Ihnen eingegebenen Dienstprinzipalinformationen werden zum Herstellen der Verbindung mit Ihrem Azure-Abonnement verwendet. (Sie können im Assistenten erst fortfahren, wenn Sie gültige Angaben für die Option Vorhandene verwenden gemacht haben.)
  5. Ressourcen umfassen Region und Netzwerk.

    • Wählen Sie auf der Seite Region eine Region aus.
    • Geben Sie auf der Seite Netzwerk einen Ressourcennamen zur Identifizierung der Kombination aus Region und Netzwerk in Studio ein. Der Name muss aus 1-64 Zeichen bestehen. Der Ressourcenname darf nicht ausschließlich aus Leerzeichen bestehen und er darf keine nicht alphanumerischen Zeichen enthalten.
    • Wählen Sie eine Kombination aus virtuellem Netzwerk und Ressourcengruppe. (Da mehrere virtuelle Netzwerke den gleichen Namen haben können, erzielen Sie durch die Kombination aus Netzwerknamen und Ressourcengruppe Einmaligkeit.) Wenn Sie auf der vorherigen Seite eine Region ohne virtuelle Netzwerke gewählt haben, müssen Sie zu der Seite zurückkehren und eine Region wählen, die virtuelle Netzwerke enthält.
  6. Schließen Sie den Assistenten ab.

Erstellen eines Maschinenkatalogs unter Verwendung eines Azure Resource Manager-Masterimages

Diese Informationen ergänzen die Anleitungen unter Erstellen von Maschinenkatalogen.

Ein Masterimage wird als Vorlage zum Erstellen der VMs in einem Maschinenkatalog verwendet. Erstellen Sie vor dem Erstellen des Maschinenkatalogs ein Masterimage in Azure Resource Manager. Allgemeine Informationen über Masterimages finden Sie im Artikel “Erstellen von Maschinenkatalogen”.

Für das Erstellen eines Maschinenkatalogs in Studio gilt Folgendes:

  • Die Seiten Betriebssystem und Maschinenverwaltung enthalten keine Azure-spezifischen Informationen. Folgen Sie den Anweisungen unter Erstellen von Maschinenkatalogen.
  • Wählen Sie auf der Seite Masterimage eine Ressourcengruppe aus. Navigieren Sie durch die Container zu der Azure-VHD, die Sie als Masterimage verwenden möchten. Auf der VHD muss ein Citrix VDA installiert sein. Wenn die VHD einer VM angeschlossen ist, muss die VM angehalten werden.
  • Die Seite Speicher- und Lizenztypen wird nur angezeigt, wenn Sie ein Azure Resource Manager-Masterimage verwenden.

    Wählen Sie den Speichertyp (Standard oder Premium). Der gewählte Speichertyp bestimmt, welche Maschinengrößen auf der Seite Virtuelle Maschinen angeboten werden. Bei beiden Speichertypen werden mehrere synchrone Kopien der Daten in einem einzigen Datencenter erstellt. Weitere Informationen über Speichertypen und Speicherreplikation bei Azure finden Sie in den folgenden Artikeln:

    Wählen Sie aus, ob vorhandene lokale Windows Server-Lizenzen verwendet werden sollen. Bei Verwendung solcher Lizenzen in Kombination mit lokalen Windows Server-Images wird Azure Hybrid Use Benefits (HUB) verwendet. Weitere Details finden Sie unter https://azure.microsoft.com/pricing/hybrid-use-benefit/.

    HUB reduziert die Kosten für das Ausführen von VMs in Azure auf die Grundgebühr für Computekapazität. Es verzichtet auf den Preis zusätzlicher Windows Server-Lizenzen aus der Azure-Galerie. Bringen Sie Ihre eigenen on-premises Windows Server-Images in Azure, um HUB zu verwenden. Images aus dem Azure-Katalog werden nicht unterstützt. Lokale Windows Client-Lizenzen werden derzeit nicht unterstützt.

    Überprüfen Sie, ob die bereitgestellten virtuellen Maschinen erfolgreich HUB verwenden. Führen Sie den PowerShell Befehl Get-AzureRmVM -ResourceGroup MyResourceGroup -Name MyVM aus und überprüfen Sie, ob der Lizenztyp Windows_Server ist. Weitere Anweisungen finden Sie unter https://docs.microsoft.com/en-us/azure/virtual-machines/windows/hybrid-use-benefit-licensing/.

  • Geben Sie auf der Seite VMs an, wie viele VMs Sie erstellen möchten. Sie müssen mindestens eine angeben. Wählen Sie eine Maschinengröße. Nach dem Erstellen eines Maschinenkatalogs können Sie die Maschinengröße nicht mehr ändern. Wenn Sie später eine andere Größe wünschen, löschen Sie den Maschinenkatalog und erstellen Sie einen neuen mit demselben Masterimage und der gewünschten Größe.

    VM-Namen dürfen keine nicht-ASCII- oder Sonderzeichen enthalten.

  • Mit MCS: Wählen Sie auf der Seite Ressourcengruppen aus, ob Sie neue Ressourcengruppen erstellen oder vorhandene verwenden.

    Wenn Sie neue Ressourcengruppen erstellen möchten, klicken Sie auf Weiter.

    Wenn Sie vorhandene Ressourcengruppen verwenden möchten, wählen Sie Gruppen in der Liste Zum Bereitstellen verfügbare Ressourcengruppen aus. Wählen Sie genügend Gruppen aus, um die Maschinen aufzunehmen, die Sie im Katalog erstellen. Studio zeigt eine Nachricht an, wenn Sie zu wenige auswählen. Wählen Sie ggf. mehr als die erforderliche Mindestanzahl aus, wenn Sie dem Katalog später weitere VMs hinzufügen möchten. Sie können einem Katalog nach dessen Erstellung keine weiteren Ressourcengruppen mehr hinzufügen.

    Weitere Informationen finden Sie unter Azure-Ressourcengruppen (#azure-resource-groups).

  • Die Seiten Netzwerkkarten, Computerkonten und Zusammenfassung enthalten keine Azure-spezifischen Informationen. Folgen Sie den Anweisungen unter Erstellen von Maschinenkatalogen.

Schließen Sie den Assistenten ab.

Löschen von Maschinenkatalogen

Wenn Sie einen Azure Resource Manager-Maschinenkatalog löschen, werden die zugeordneten Maschinen und Ressourcengruppen aus Azure gelöscht, selbst wenn Sie angeben, dass sie beibehalten werden sollen.

Azure-Ressourcengruppen

Azure Provisioning-Ressourcengruppen sind eine Methode des Provisionings von VMs, über die Benutzern Anwendungen und Desktops bereitgestellt werden. Fügen Sie vorhandene, leere Azure-Ressourcengruppen hinzu, wenn Sie in Studio einen MCS-Maschinenkatalog erstellen, oder lassen Sie neue Ressourcengruppen erstellen.

Informationen zu Azure-Ressourcengruppen finden Sie in der Dokumentation von Microsoft.

Anforderungen

  • Jede Ressourcengruppe kann bis zu 240 VMs aufnehmen. Die Region, in der Sie den Katalog erstellen, muss ausreichend leere Ressourcengruppen enthalten. Wenn Sie beim Erstellen eines Maschinenkatalogs vorhandene Ressourcengruppen verwenden möchten, müssen Sie genügend Gruppen wählen, um die Anzahl der Maschinen im Katalog aufzunehmen. Wenn Sie beispielsweise im Assistenten zum Erstellen von Katalogen 500 Maschinen angeben, wählen Sie mindestens drei verfügbare Ressourcengruppen aus.

    Sie können einem Maschinenkatalog nach dessen Erstellung keine weiteren Ressourcengruppen mehr hinzufügen. Fügen Sie daher genügend Ressourcengruppen hinzu, damit auch für später hinzugefügte Maschinen noch Kapazität vorhanden ist.

  • Erstellen Sie leere Ressourcengruppen in derselben Region wie die Hostverbindung.
  • Wenn Sie Ressourcengruppen für jeden MCS-Katalog erstellen möchten, konfigurieren Sie den Azure-Dienstprinzipal, der der Hostverbindung zugeordnet ist. Dieser Prinzipal muss die Berechtigung zum Erstellen und Löschen von Ressourcengruppen haben. Wenn bestehende leere Ressourcengruppen verwendet werden sollen, muss der Azure-Dienstprinzipal, der der Hostverbindung zugeordnet ist, die Teilnehmerrolle für diese leeren Ressourcengruppen haben.
  • Wenn Sie in Studio eine Hostverbindung mit der Option Neu erstellen erstellen, erhält der erstellte Dienstprinzipal die Teilnehmerrolle für den Abonnementbereich. Alternativ können Sie die Verbindung mit der Option Vorhandene verwenden erstellen, und einen bestehenden Abonnementbereichs-Dienstprinzipal angeben. Verwenden Sie die Option Neu erstellen, um den Dienstprinzipal in Studio zu erstellen. Der Prinzipal hat die erforderlichen Berechtigungen zum Erstellen und Löschen neuer Ressourcengruppen oder für das Provisioning in vorhandene leere Ressourcengruppen.
  • Dienstprinzipale für eingeschränkte Bereiche müssen mit PowerShell erstellt werden. Bei Verwendung eines Dienstprinzipals mit eingeschränktem Gültigkeitsbereich müssen Sie außerdem mit PowerShell oder über das Azure-Portal leere Ressourcengruppen für jeden Katalog erstellen, in dem MCS VMs bereitstellen soll.

    Wenn Sie für die Hostverbindung einen Dienstprinzipal mit eingeschränktem Gültigkeitsbereich verwenden und die Masterimage-Ressourcengruppe auf der Seite Masterimage des Katalogerstellungsassistenten nicht angezeigt wird, liegt dies wahrscheinlich daran, dass der Dienstprinzipal keine Berechtigung Microsoft.Resources/subscriptions/resourceGroups/read zum Auflisten der Masterimage-Ressourcengruppe hat. Schließen Sie den Assistenten, erteilen Sie dem Dienstprinzipal die Berechtigung (siehe Blogpost) und starten Sie den Assistenten neu. Es kann bis zu 10 Minuten dauern, bis das Update in Azure in Studio erscheint.

Informationen zu Azure-Dienstprinzipalen

Für das Provisioning von Maschinen in Azure Resource Manager, muss einem Plug-in Zugriff auf Ihr Azure-Abonnement gewährt werden. Diese Berechtigungen werden über einen Dienstprinzipal erteilt, dem Berechtigungen für die relevanten Azure-Ressourcen zugewiesen wurden. Ein Dienstprinzipal dient im Prinzip demselben Zweck wie ein Benutzerkonto. Er stellt die eine Azure Active Directory-Identität des Plug-Ins dar, die Anmeldeinformationen zur Authentifizierung und Berechtigungen für Azure-Ressourcen umfasst. Wie Benutzerkonten werden Dienstprinzipale über die rollenbasierten Zugriffssteuerung (RBAC) konfiguriert.

Abhängig von der Berechtigungsdefinition klassifizieren wir Dienstprinzipale als:

  • Dienstprinzipale mit Abonnementgeltungsbereich oder als

  • Dienstprinzipale mit eingeschränktem Gültigkeitsbereich

Dienstprinzipale mit Abonnementgeltungsbereich

Dienstprinzipale mit Abonnementgeltungsbereich haben die Berechtigung Mitwirkender für alle Ressourcen im Abonnement, wodurch sie einfach zu erstellen und zu verwalten sind. Citrix Studio automatisiert das Erstellen von Dienstprinzipalen mit Abonnementgeltungsbereich. Sie können auch manuell in PowerShell erstellt werden. Mit diesen Prinzipalen kann das Azure Resource Manager-Plug-In Azure-Ressourcengruppen erstellen und die Ressourcenverwaltung vollständig automatisieren. Der Nachteil besteht darin, dass das Plug-In über Berechtigungen für Ressourcen im Abonnement verfügt, die nichts mit den Ressourcen zu tun haben, die das Plug-In verwaltet.

Mit der Rolle Mitwirkender kann das Plug-In alle Ressourcen im Abonnement erstellen, löschen, lesen und schreiben. Die Berechtigungen erstrecken sich nicht auf Objekte in Azure Active Directory, auch können Dienstprinzipale mit Abonnementgeltungsbereich anderen Benutzern oder Dienstprinzipalen keinen Zugriff auf Ressourcen gewähren.

Dienstprinzipale mit eingeschränktem Gültigkeitsbereich

Dienstprinzipale mit eingeschränktem Gültigkeitsbereich ermöglichen dem Azure Resource Manager-Plug-In Zugriff auf einen von Ihnen definierten Satz von Ressourcen. Azure erfordert Dienstprinzipale mit Abonnementgeltungsbereich zum Erstellen von Ressourcengruppen. Bei Verwendung von Dienstprinzipalen mit eingeschränktem Gültigkeitsbereich kann das Plug-In keine Ressourcengruppen erstellen. Zusätzlich zu den Dienstprinzipalen müssen Sie für jeden Katalog, für den Maschinen bereitgestellt werden sollen, einen Pool von Ressourcengruppen bereitstellen.

In Citrix Studio können weder Dienstprinzipale noch Kataloge mit eingeschränktem Gültigkeitsbereich erstellt werden. Beide Aufgaben müssen mit PowerShell ausgeführt werden. Sobald ein Katalog erstellt wurde, kann er jedoch wie jeder andere in Studio verwaltet werden. Dazu gehören auch das Hinzufügen und Löschen von Maschinen. Wenn Sie einen bestehenden Dienstprinzipal mit eingeschränktem Gültigkeitsbereich mit einem neuen Ressourcengruppenpool verwenden möchten, müssen Sie dem Dienstprinzipal mit PowerShell explizit Berechtigungen hinzufügen.

Ermitteln der Azure-Abonnement-Zugriffsanforderungen

Die Techniken und Beispiele in den folgenden Abschnitten beziehen sich auf gängige Anforderungen und müssen je nach tatsächlicher Situation modifiziert werden.

Ziehen Sie in folgenden Fällen die Verwendung eines Dienstprinzipals mit Abonnementgeltungsbereich in Erwägung:

  • Sie wünschen eine möglichst einfache Verwaltung.

  • Sie möchten die Verwendung von PowerShell vermeiden und alles über Citrix Studio verwalten.

  • Sie nutzen Ihr Azure-Abonnement dediziert für einen Citrix Virtual Apps and Desktops Service.

  • Sie installieren Citrix Virtual Apps and Desktops für eine Machbarkeitsstudie.

  • Die Administratoren von Citrix Virtual Apps and Desktops haben Zugriff als Mitwirkende zum Azure-Abonnementbereich.

Ziehen Sie in folgenden Fällen die Verwendung eines Dienstprinzipals mit eingeschränktem Gültigkeitsbereich in Erwägung:

  • Ihr Azure-Abonnement wird für mehrere unabhängige Dienste verwendet.

  • Die Azure-Administratoren haben unterschiedliche Abonnementberechtigungen abhängig von ihrer Rolle.

  • Die Sicherheitsstandards Ihres Unternehmens erfordern eine detaillierte Zugriffssteuerung.

  • Sie verfügen bereits über einen Prozess zum Erstellen von Dienstprinzipalen mit eingeschränktem Gültigkeitsbereich.

Tipp:

Sie können untergeordnete Abonnements erstellen, die als Teil Ihres primären Abonnements in Rechnung gestellt werden und auf das standardmäßige Azure Active Directory Ihres primären Abonnements verweisen. Durch diese Konfiguration haben Sie einen weiteren Mechanismus zur Steuerung des Zugriffs auf nicht verwandte Ressourcen.

Planen eines Dienstprinzipals mit eingeschränktem Gültigkeitsbereich

Bevor Sie einen Katalog für einen Dienstprinzipal mit eingeschränktem Gültigkeitsbereich erstellen, ermitteln Sie die Zahl der erforderlichen Ressourcengruppen zum Hosten der anfänglichen und zukünftigen Anzahl virtueller Maschinen. Aufgrund einer Einschränkung in den Maschinenerstellungsdiensten können nach der Katalogerstellung keine Ressourcengruppen mehr hinzugefügt werden.

Bereitstellen eines Katalogs pro Ressourcengruppenpool

Das Azure Resource Manager-Plug-In erstellt die erforderliche Infrastruktur in jeder Ressourcengruppe. Die Ressourcengruppe besteht aus Speicherkonten, Sicherheitsgruppen, Netzwerkschnittstellen, virtuellen Maschinen usw. Speicherkonten werden bei Bedarf erstellt, wenn Maschinen zum Katalog hinzugefügt werden. Die Größe eines Katalogs kann daher bis auf eine durch die Größe des Ressourcengruppenpools und Azure-Abonnementkontingente festgelegte Obergrenze wachsen. Speicherkonten werden erst wieder gelöscht, wenn der Katalog gelöscht wird. Da jede virtuelle Maschine gelöscht werden kann, kann es dazu kommen, dass leere Speicherkonten entstehen. Das kommt selten vor, da virtuelle Maschinen in der Regel per Zufallsprinzip über die verfügbaren Speicherkonten verteilt werden. Maschinen müssen mühsam ausgewählt werden, indem der Inhalt von Speicherkonten überprüft wird, um ein Speicherkonto absichtlich zu leeren.

Azure beschränkt die Anzahl der virtuellen Maschinen in einer Ressourcengruppe auf 800, doch das Azure Resource Manager-Plug-In verwendet eine andere Kennzahl. Ein standardmäßiger Azure-Datenträger hat ein Limit von 500 IOPS und ein Standardspeicherkonto hat ein IOPS-Limit von 20.000. Aus diesem Grund stellt das Plug-In maximal 40 Maschinen für ein Speicherkonto bereit. Dieses Limit gilt sowohl für Standard- als auch für Premiumspeicher. Außerdem erstellt das Plug-In maximal 19 Speicherkonten in einer Ressourcengruppe.

Die Grundformel für die Berechnung der Anzahl der Ressourcengruppen basierend auf der maximalen Anzahl von Maschinen ist somit:

Anzahl der Ressourcengruppen = Obergrenze (maximale Anzahl der Maschinen/(40 x 19))

Das Azure Resource Manager-Plug-In geht davon aus, dass es einen Ressourcengruppenpool exklusiv verwendet. Es gibt keine benutzererstellten Ressourcen in einer der angegebenen Ressourcengruppen.

Grundlagen der rollenbasierten Zugriffssteuerung (RBAC) in Azure.

Der Zugriff auf Azure-Ressourcen wird gewährt, indem einem Dienstprinzipal in einem bestimmten Bereich eine RBAC-Rolle zugewiesen wird. Der Bereich kann ein Abonnement, eine Ressourcengruppe oder eine Ressource sein. Ressourcen sind in einer Kapselungshierarchie angeordnet und die durch die Rolle definierten Berechtigungen gelten für alle Ressourcen unterhalb des Bereichs, auf den sie angewendet wird. Eine auf ein Abonnement angewendete Rolle wird auf alle Ressourcen im Abonnement angewendet. Eine auf eine Ressourcengruppe angewendete Rolle wird auf alle Ressourcen in der Ressourcengruppe angewendet.

Bei der Azure-Ressourcenhierarchie können nur Dienstprinzipale mit Berechtigungen für den Abonnementbereich Ressourcengruppen erstellen. Das ist nicht ideal, da Anwendungen wie das Plug-In daran gehindert werden, Ressourcengruppen bei Bedarf für eine logische Gruppe zu erstellen und Ressourcen zu verwalten. Dies ist nur möglich, wenn sie haben ein hohes Maß an Berechtigungen für das ganze Abonnement haben.

Azure bietet viele integrierte Rollen und unterstützt auch die Definition benutzerdefinierter Rollen. Weitere Informationen zu benutzerdefinierten Rollen in der Azure-RBAC finden Sie unter Benutzerdefinierte Rollen für Azure-Ressourcen.

Erstellen eines Dienstprinzipals mit Abonnementgeltungsbereich

In diesem Beispiel wird gezeigt, wie ein Dienstprinzipal mit Abonnementgeltungsbereich erstellt wird. Anhand der Informationen kann eine Azure-Verbindung in Citrix Studio erstellt werden. Sie können einen vorhandenen Dienstprinzipal verwenden oder eine Azure-Verbindung manuell in PowerShell erstellen.

param(
[string]$applicationName = "SubscriptionScopeSP",
[Parameter(Mandatory=$true)][string]$applicationPassword,
[Parameter(Mandatory=$true)][string]$subscriptionId
)

$application = New-AzureRmADApplication -DisplayName $applicationName -HomePage "https://localhost/$applicationName" `
-IdentifierUris "https://$applicationName" -Password $applicationPassword

New-AzureRmADServicePrincipal -ApplicationId $application.ApplicationId

# Wait for the service principal to become available
Start-Sleep -s 60

New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $application.ApplicationId `
-scope "/subscriptions/$subscriptionId"

Write-Host ("Application ID: " + $application.ApplicationId)
<!--NeedCopy-->

Erstellen eines Dienstprinzipals mit eingeschränktem Gültigkeitsbereich

In diesem Abschnitt wird die Erstellung eines grundlegenden Dienstprinzipals mit eingeschränktem Gültigkeitsbereich mit Zuweisung von Berechtigungen im Ressourcengruppenbereich erläutert.

Das Azure Resource Manager-Plug-In benötigt Berechtigung für die folgenden Ressourcen:

  1. Masterimage-VHD

  2. Virtuelles Netzwerk für die Maschinen

  3. Ressourcengruppen, in denen die Maschinen bereitgestellt werden sollen

Zur Vereinfachung des Skripts wird davon ausgegangen, dass der Zugriff der Rolle “Mitwirkender” im Ressourcengruppenbereich gewährt werden kann. Das Azure Resource Manager-Plug-In hat die Berechtigung der Rolle “Mitwirkender” für die Ressourcengruppe, in der die Image-VHD gespeichert ist, für die Ressourcengruppe, die das virtuelle Netzwerk enthält, und für den Ressourcengruppenpool, in dem die Maschinen bereitgestellt werden.

param(
[string]$applicationName = "BasicNarrowScopeSP",
[Parameter(Mandatory=$true)][string]$applicationPassword,
[Parameter(Mandatory=$true)][string]$subscriptionId,
[Parameter(Mandatory=$true)][string[]]$resourceGroups
)

$application = New-AzureRmADApplication -DisplayName $applicationName -HomePage "https://localhost/$applicationName" `
-IdentifierUris "https://$applicationName" -Password $applicationPassword

New-AzureRmADServicePrincipal -ApplicationId $application.ApplicationId

# Wait for the service principal to become available
Start-Sleep -s 60

New-AzureRmRoleAssignment -RoleDefinitionName Citrix-Network-Usage-Reader -ServicePrincipalName $application.ApplicationId `
-scope "/subscriptions/$subscriptionId/"

foreach ($rg in $resourceGroups)
{
  New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $application.ApplicationId `
  -scope "/subscriptions/$subscriptionId/resourcegroups/$rg"
}

Write-Host ("Application ID: " + $application.ApplicationId)
<!--NeedCopy-->

Erstellen eines Dienstprinzipals mit eingeschränktem Gültigkeitsbereich über benutzerdefinierte Rollen

Azure umfasst viele integrierte RBAC-Rollen. Citrix verwendet die Rolle “Mitwirkender” wie im vorherigen Abschnitt. Wie bereits erwähnt, hat das Azure Resource Manager-Plug-In dadurch geringfügig mehr Berechtigungen als unbedingt erforderlich. Mit dem Verfahren in diesem Abschnitt wird eine benutzerdefinierte Rolle definiert und der Zugriff stärker eingeschränkt. Falls gewünscht, kann der Zugriff über weitere benutzerdefinierte Rollen und die direkte Anwendung von Rollen auf Image und Netzwerkressourcen blockiert werden.

Hinweis:

Die erforderlichen Berechtigungen können sich ändern.

Verwenden Sie die folgenden Berechtigungen zum Festlegen einer benutzerdefinierten Rolle für den Zugriff auf das virtuelle Netzwerk und das Masterimage im Ressourcengruppenbereich.

Masterimage-VHD.

Für die Katalogerstellung:

  • Microsoft.Storage/storageAccounts/read

  • Microsoft.Storage/storageAccounts/listKeys/action

Für zukünftige Citrix Studio-Unterstützung:

  • Microsoft.Resources/subscriptions/resourceGroups/read

Virtuelles Netzwerk für die Maschinen:

  • Microsoft.Network/virtualNetworks/read

  • Microsoft.Network/virtualNetworks/subnets/join/action

Ressourcengruppen für bereitgestellte Maschinen.

Es ist möglich, eine weitere benutzerdefinierte Rolle mit den nachfolgenden Berechtigungen zu erstellen, doch der Einfachheit halber wird im Beispiel die Rolle “Mitwirkender” für die Ressourcengruppen mit den Maschinen verwendet. Diese Ressourcengruppen enthalten keine Ressourcen, die nicht vom Azure Resource Manager-Plug-In erstellt werden. Durch die Verwendung der Rolle “Mitwirkender” ist es eher unwahrscheinlich, dass Änderungen am Plug-In Änderungen am Dienstprinzipal erfordern:

  • Microsoft.Compute/virtualMachines/*

  • Microsoft.Network/networkInterfaces/*

  • Microsoft.Network/networkSecurityGroups/*

  • Microsoft.Resources/deployments/*

  • Microsoft.Resources/subscriptions/resourceGroups/read

  • Microsoft.Storage/storageAccounts/*

  • Microsoft.Storage/storageAccounts/listKeys/action

Benutzerdefinierte Citrix Virtual Apps and Desktops-Zugriffsrollen.

Erstellen Sie eine benutzerdefinierte Rolle, indem Sie diese zuerst in der JSON definieren:

{
  "Name": "Citrix-Custom-Reader",
  "Description": "Grants access to Citrix XenDesktop images and virtual networks.",
  "Actions": [
    "Microsoft.Storage/storageAccounts/read",
    "Microsoft.Storage/storageAccounts/listKeys/action",
    "Microsoft.Network/virtualNetworks/read",
    "Microsoft.Network/virtualNetworks/subnets/join/action"
  ],
  "NotActions": [
  ],
  "AssignableScopes": [
    "/subscriptions/<YOUR-SUBSCRIPTION-ID>"
  ]
}
<!--NeedCopy-->

Erstellen Sie die Rolle unter Verweis auf die JSON-Definition:

New-AzureRmRoleDefinition -InputFile citrix-custom-reader.json
<!--NeedCopy-->

Verwenden Sie die neue benutzerdefinierte Rolle beim Erstellen des Dienstprinzipals:

param(
[string]$applicationName = "NarrowScopeSP",
[Parameter(Mandatory=$true)][string]$applicationPassword,
[Parameter(Mandatory=$true)][string]$subscriptionId,
[Parameter(Mandatory=$true)][string[]]$machineResourceGroups,
[Parameter(Mandatory=$true)][string]$imageResourceGroup,
[Parameter(Mandatory=$true)][string]$networkResourceGroup
)

$application = New-AzureRmADApplication -DisplayName $applicationName -HomePage "https://localhost/$applicationName" `
-IdentifierUris "https://$applicationName" -Password $applicationPassword

New-AzureRmADServicePrincipal -ApplicationId $application.ApplicationId

# Wait for the service principal to become available
Start-Sleep -s 60

New-AzureRmRoleAssignment -RoleDefinitionName Citrix-Network-Usage-Reader -ServicePrincipalName $application.ApplicationId `
-scope "/subscriptions/$subscriptionId/"

foreach ($rg in $machineResourceGroups)
{
  New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $application.ApplicationId `
  -scope "/subscriptions/$subscriptionId/resourcegroups/$rg"
}

New-AzureRmRoleAssignment -RoleDefinitionName Citrix-Custom-Reader -ServicePrincipalName $application.ApplicationId `
-scope "/subscriptions/$subscriptionId/resourcegroups/$imageResourceGroup"

New-AzureRmRoleAssignment -RoleDefinitionName Citrix-Custom-Reader -ServicePrincipalName $application.ApplicationId `
-scope "/subscriptions/$subscriptionId/resourcegroups/$networkResourceGroup"

Write-Host ("Application ID: " + $application.ApplicationId)
<!--NeedCopy-->

Erstellen von Citrix Virtual Apps and Desktops-Azure-Verbindungen.

Eine Azure-Verbindung für Citrix Virtual Apps and Desktops kann in Citrix Studio mit einem vorhandenen Dienstprinzipal erstellt werden. Die Verbindung kann auch über PowerShell erstellt werden.

Im Folgenden finden Sie ein Beispiel für das Erstellen einer Verbindung in PowerShell:

param(
[string]$connectionName = "AzureConnection",
[Parameter(Mandatory=$true)][string]$applicationId,
[Parameter(Mandatory=$true)][string]$applicationPassword,
[Parameter(Mandatory=$true)][string]$subscriptionId,
[Parameter(Mandatory=$true)][string]$subscriptionName,
[Parameter(Mandatory=$true)][string]$tenantId
)

Add-PsSnapin Citrix*

$customProperties = @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Property xsi:type="StringProperty" Name="AuthenticationAuthority" Value="https://login.microsoftonline.com/"/>
 <Property xsi:type="StringProperty" Name="ManagementEndpoint" Value="https://management.azure.com/"/>
 <Property xsi:type="StringProperty" Name="StorageSuffix" Value="core.windows.net"/>
 <Property xsi:type="StringProperty" Name="TenantId" Value="$tenantId"/>
 <Property xsi:type="StringProperty" Name="SubscriptionId" Value="$subscriptionId"/>
 <Property xsi:type="StringProperty" Name="SubscriptionName" Value="$subscriptionName"/>
</CustomProperties>
"@

$connection = New-Item -ConnectionType "Custom" -CustomProperties $customProperties -HypervisorAddress @("https://management.azure.com/") `
-Path @("XDHyp:\Connections$connectionName") -Persist -PluginId "AzureRmFactory" -Scope @() `
-SecurePassword (ConvertTo-SecureString -AsPlainText -Force $applicationPassword) -UserName $applicationId

New-BrokerHypervisorConnection -HypHypervisorConnectionUid $connection.HypervisorConnectionUid

<!--NeedCopy-->

An dieser Stelle fügen Sie der Verbindung Ressourcen mit Studio oder PowerShell hinzu.

Erstellen von Katalogen für Citrix Virtual Apps and Desktops.

Im folgenden Beispiel werden die Citrix PowerShell-Snap-Ins zum Erstellen eines Citrix Virtual Apps and Desktops-Katalogs verwendet.

Da das Azure Resource Manager-Plug-In mit einem Dienstprinzipal mit eingeschränktem Gültigkeitsbereich keine Ressourcengruppen erstellen kann, müssen Sie folgende Schritte ausführen:

  1. Erstellen eines Ressourcengruppenpools

  2. Erteilen der Dienstprinzipalberechtigungen für alle Ressourcengruppen im Pool

  3. Auflisten jeder Ressourcengruppe im Pool in einer benutzerdefinierten Eigenschaft bei der Erstellung des Provisioningschemas

Die benutzerdefinierte Eigenschaft heißt ResourceGroups, der Wert ist eine durch Kommas getrennte Liste von Ressourcengruppennamen. Das Beispiel unten zeigt die Definition der benutzerdefinierten Eigenschaft.

Hinweis:

In der benutzerdefinierten Eigenschaft werden nur Ressourcengruppen aufgelistet, die für Maschinen bestimmt sind. Ressourcengruppen mit dem Image bzw. dem virtuellen Netzwerk werden nicht aufgelistet. Werden sie angegeben, versucht das Azure Resource Manager-Plug-In, Maschinen für diese Ressourcengruppen bereitzustellen, was zu einem unbeabsichtigtem Verhalten führen kann.

In dem Beispiel werden Maschinen in zwei Ressourcengruppen (xd-sales-1 und xd-sales-2) bereitgestellt:

Add-PsSnapin Citrix*

# The hosting unit name is the name of the Azure connection resources that should be used for this catalog
$hostingUnitName = "AzureHostingUnit"
$domain = "citrix.local"
$controllerAddress = ("ddc." + $domain)
$adminAddress = ($controllerAddress + ":80")
$catalogName = "catalog-name"
$network = "network-resource-group.resourcegroup\network-name"
$subnet = "subnet-name"
$serviceOffering = "Standard_A4"
$template = "image-resource-group.resourcegroup\imagestorage.storageaccount\images.container\image-name.vhd"

$customProperties = @" <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="StorageAccountType" Value="Standard_LRS" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="xd-sales-1, xd-sales-2" />
</CustomProperties>
"@

$identityPool = New-AcctIdentityPool -AdminAddress $adminAddress -AllowUnicode -Domain $domain `
    -IdentityPoolName $catalogName -NamingScheme "vm-#" -NamingSchemeType "Numeric" -Scope @()

$brokerCatalog = New-BrokerCatalog -AdminAddress $adminAddress -AllocationType "Random" -IsRemotePC $False `
    -MinimumFunctionalLevel "L7_9" -Name $catalogName -PersistUserChanges "Discard" -ProvisioningType "MCS" -Scope @() `
    -SessionSupport "MultiSession"

Write-Host $brokerCatalog

$provScheme = New-ProvScheme -AdminAddress $adminAddress -CleanOnBoot -CustomProperties $customProperties `
    -HostingUnitName $hostingUnitName -IdentityPoolName $catalogName `
    -MasterImageVM "XDHyp:\HostingUnits$hostingUnitName\image.folder$template.vhd" `
    -NetworkMapping @{"0"="XDHyp:\HostingUnits$hostingUnitName\virtualprivatecloud.folder$network.virtualprivatecloud$subnet.network"} `
    -ProvisioningSchemeName $catalogName -Scope @() -SecurityGroup @() `
    -ServiceOffering "XDHyp:\HostingUnits$hostingUnitName\serviceoffering.folder$serviceOffering.serviceoffering"

Write-Host $provScheme

Set-BrokerCatalog -AdminAddress $adminAddress -Name $catalogName -ProvisioningSchemeId $provScheme.ProvisioningSchemeUid

Add-ProvSchemeControllerAddress -AdminAddress $adminAddress.com -ControllerAddress $controllerAddress -ProvisioningSchemeName $catalogName
<!--NeedCopy-->

An dieser Stelle können Sie die Katalogseite in Citrix Studio aktualisieren und wie bei jedem anderen Katalog Maschinen hinzufügen und verwalten.

Konfigurieren von Ressourcengruppen für einen Maschinenkatalog in Studio

Auf der Seite Ressourcengruppen im Katalogerstellungsassistenten können Sie auswählen, ob neue Ressourcengruppen erstellt oder vorhandene verwendet werden sollen. Weitere Informationen finden Sie unter Erstellen eines Maschinenkatalogs unter Verwendung eines Azure Resource Manager-Masterimages.

Ressourcengruppen beim Löschen eines Maschinenkatalogs:

  • Wenn Sie Citrix Virtual Apps and Desktops beim Erstellen eines Maschinenkatalogs Ressourcengruppen erstellen lassen und den Katalog später löschen, werden auch die Ressourcengruppen und alle darin enthaltenen Ressourcen gelöscht.

  • Wenn Sie beim Erstellen eines Maschinenkatalogs bestehende Ressourcengruppen verwenden und den Katalog später löschen, werden alle in den Ressourcengruppen enthaltenen Ressourcen gelöscht, die Ressourcengruppen selbst bleiben jedoch erhalten.

Überlegungen, Einschränkungen und Problembehandlung

Wenn Sie bestehende Ressourcengruppen verwenden, wird die Liste verfügbarer Ressourcengruppen auf der Seite “Ressourcengruppen” im Katalogerstellungsassistenten nicht automatisch aktualisiert. Wenn Sie bei geöffneter Assistentenseite Berechtigungen für Ressourcengruppen in Azure erstellen oder hinzufügen, werden die Änderungen daher nicht in der Liste des Assistenten angezeigt. Zur Anzeige der Änderungen gehen Sie entweder zurück zur Seite Maschinenverwaltung, wo Sie die der Hostverbindung zugeordneten Ressourcen erneut auswählen, oder schließen Sie den Assistenten und starten Sie ihn neu. Es kann bis zu 10 Minuten dauern, bis in Azure gemachte Änderungen in Studio erscheinen.

Ressourcengruppen sollten nur in je einem Maschinenkatalog verwendet werden. Dies wird jedoch nicht erzwungen. Beispiel: Sie wählen beim Erstellen eines Katalogs 10 Ressourcengruppen aus, erstellen jedoch nur eine Maschine in dem Katalog. Neun der ausgewählten Ressourcengruppen bleiben leer, nachdem der Katalog erstellt wurde. Sie planen, die Gruppen später evtl. zum Erweitern der Kapazität zu verwenden, und behalten die Verknüpfung mit dem Katalog bei. Sie können einem Katalog nach dessen Erstellung keine weiteren Ressourcengruppen mehr hinzufügen. Daher ist es eine gute Idee, eventuelles künftiges Wachstum einzuplanen. Wenn nun ein anderer Katalog erstellt wird, werden die neun Ressourcengruppen in der Liste der verfügbaren Gruppen angezeigt. In Citrix Virtual Apps and Desktops wird derzeit nicht nachverfolgt, welche Ressourcengruppen welchen Katalogen zugeordnet sind. Es liegt an Ihnen, das zu überwachen.

Wenn der Dienstprinzipal Ihrer Verbindung auf leere Ressourcengruppen in verschiedenen Regionen zugreifen kann, werden die Gruppen aus allen Regionen in der Liste der verfügbaren Gruppen angezeigt. Achten Sie darauf, Ressourcengruppen der Region auszuwählen, in welcher der Maschinenkatalog erstellt wird.

Problembehandlung:

  • Ressourcengruppen werden nicht in der Liste auf der Seite “Ressourcengruppen” des Katalogerstellungsassistenten angezeigt.

    Der Dienstprinzipal muss die erforderlichen Berechtigungen für die Ressourcengruppen verfügen, die in der Liste angezeigt werden sollen. Siehe den Abschnitt “Anforderungen” oben.

  • Beim Hinzufügen von Maschinen zu einem zuvor erstellten Maschinenkatalog werden nicht alle Maschinen bereitgestellt.

    Nach Erstellen eines Katalog dürfen Sie beim späteren Hinzufügen weiterer Maschinen die Maschinenkapazität der ursprünglich für den Katalog ausgewählten Ressourcengruppen (240 pro Gruppe) nicht überschreiten. Sie können einem Katalog nach dessen Erstellung keine weiteren Ressourcengruppen mehr hinzufügen. Wenn Sie versuchen, mehr Maschinen hinzuzufügen als die vorhandenen Ressourcengruppen aufnehmen können, schlägt das Provisioning fehl.

    Beispiel: Sie erstellen einen Maschinenkatalog mit 300 VMs und 2 Ressourcengruppen. Die Ressourcengruppen können bis zu 480 VMs (2 x 240) aufnehmen. Wenn Sie später versuchen, dem Katalog 200 VMs hinzuzufügen, übersteigt dies die Kapazität der Ressourcengruppen (300 bestehende VMs + 200 neue = 500, doch die Ressourcengruppen können maximal 480 aufnehmen).

Weitere Informationen

Microsoft Azure Resource Manager-Virtualisierungsumgebungen