Google Cloud-Umgebungen
Citrix Virtual Apps and Desktops ermöglicht das Provisioning und Verwalten von Maschinen in Google Cloud. Dieser Artikel erläutert, wie Sie mit den Maschinenerstellungsdiensten (Machine Creation Services, MCS) virtuelle Maschinen in Citrix Virtual Apps oder Citrix Virtual Desktops bereitstellen.
Anforderungen
- Citrix Cloud-Konto. Das in diesem Artikel beschriebene Feature ist nur in Citrix Cloud verfügbar.
- Citrix DaaS-Abonnement. Weitere Informationen finden Sie unter Erste Schritte.
- Ein Google Cloud-Projekt. Das Projekt umfasst alle Rechenressourcen, die dem Maschinenkatalog zugeordnet sind. Dies kann ein bestehendes oder ein neues Projekt sein.
- Aktivieren Sie vier APIs in Ihrem Google Cloud-Projekt. Weitere Informationen finden Sie im Abschnitt Aktivieren von Google Cloud-APIs.
- Google Cloud-Dienstkonto. Das Dienstkonto dient zur Authentifizierung bei Google Cloud, um Zugriff auf das Projekt zu erhalten. Einzelheiten finden Sie unter Konfigurieren des Google Cloud-Dienstkontos.
- Aktivieren des privaten Google-Zugriffs Einzelheiten finden Sie unter Enable-private-google-access.
Aktivieren von Google Cloud-APIs
Um die Google Cloud-Funktionalität über die Oberfläche “Vollständige Konfiguration” von Citrix Virtual Apps and Desktops zu verwenden, müssen Sie diese APIs in Ihrem Google Cloud-Projekt aktivieren:
- Compute Engine-API
- Cloud Resource Manager-API
- Identitäts- und Zugriffsverwaltung (IAM)-API
- Cloud Build-API
Führen Sie in der Google Cloud-Konsole die folgenden Schritte aus:
-
Wählen Sie im oberen linken Menü APIs and Services > Dashboard.
-
Stellen Sie im Dashboard-Bildschirm sicher, dass die Compute Engine-API aktiviert ist. Wenn nicht, führen Sie folgende Schritte aus:
-
Gehen Sie zu APIs & Services > Library.
-
Geben Sie im Suchfeld den Begriff Compute Engine ein.
-
Wählen Sie in den Suchergebnissen Compute Engine API.
-
Wählen Sie Enable auf der Seite Compute Engine API.
-
-
Aktivieren Sie die Cloud Resource Manager-API.
-
Gehen Sie zu APIs & Services > Library.
-
Geben Sie im Suchfeld den Begriff Cloud Resource Manager ein.
-
Wählen Sie in den Suchergebnissen Cloud Resource Manager API.
-
Wählen Sie Enable auf der Seite Cloud Resource Manager-API. Der Status der API wird angezeigt.
-
-
Aktivieren Sie auch IAM-API und Cloud Build-API auf diese Weise.
Sie können die APIs auch mit Google Cloud Shell aktivieren. Gehen Sie hierzu folgendermaßen vor:
- Öffnen Sie die Google-Konsole und laden Sie die Cloud Shell.
-
Führen Sie in der Cloud Shell folgende vier Befehle aus:
- gcloud services enable compute.googleapis.com
- gcloud services enable cloudresourcemanager.googleapis.com
- gcloud services enable iam.googleapis.com
- gcloud services enable cloudbuild.googleapis.com
- Klicken Sie auf Authorize, wenn Sie die Cloud Shell dazu auffordert.
Dienstkonten konfigurieren und aktualisieren
Hinweis:
Ab dem 29. April 2024 führt GCP Änderungen am Standardverhalten von Cloud Build Services und der Verwendung von Dienstkonten ein. Weitere Informationen finden Sie unter Änderungen des Cloud Build-Dienstkontos. Ihre bestehenden Google-Projekte mit aktivierter Cloud Build API vor dem 29. April 2024 sind von dieser Änderung nicht betroffen. Wenn Sie jedoch das bestehende Cloud Build Service-Verhalten nach dem 29. April beibehalten möchten, können Sie die Organisationsrichtlinie erstellen oder anwenden, um die Durchsetzung der Einschränkungen zu deaktivieren, bevor Sie die Cloud Build API aktivieren. Daher ist der folgende Inhalt zweigeteilt: Vor dem 29. April 2024 und Nach dem 29. April 2024. Wenn Sie die neue Organisationsrichtlinie festlegen, folgen Sie dem Abschnitt Vor dem 29. April 2024.
Vor dem 29. April 2024
Citrix Cloud verwendet drei separate Dienstkonten im Google Cloud-Projekt:
-
Citrix Cloud-Dienstkonto: Dieses Dienstkonto ermöglicht Citrix Cloud den Zugriff auf das Google-Projekt, sowie Provisioning und Verwaltung von Maschinen. Dieses Dienstkonto authentifiziert sich bei Google Cloud mit einem von Google Cloud generierten Schlüssels.
Sie müssen dieses Dienstkonto manuell erstellen, wie hier beschrieben. Weitere Informationen finden Sie unter Citrix Cloud-Dienstkonto erstellen.
Sie können dieses Dienstkonto mit einer E-Mail-Adresse identifizieren. Beispiel:
<my-service-account>@<project-id>.iam.gserviceaccount.com
. -
Cloud Build-Dienstkonto: Dieses Dienstkonto wird automatisch bereitgestellt, nachdem Sie alle unter Enable Google Cloud APIs aufgeführten APIs aktiviert haben. Um alle automatisch erstellten Dienstkonten anzuzeigen, navigieren Sie in der Google Cloud-Konsole zu IAM & Admin > IAM und aktivieren Sie das Kontrollkästchen Include Google-provided role grants.
Sie können dieses Dienstkonto durch eine E-Mail-Adresse identifizieren, die mit der Projekt-ID und dem Wort cloudbuild beginnt. Beispiel:
<project-id>@cloudbuild.gserviceaccount.com
Überprüfen Sie, ob dem Dienstkonto die folgenden Rollen gewährt wurden. Wenn Sie Rollen hinzufügen müssen, folgen Sie den Schritten unter Cloud Build-Dienstkonto Rollen hinzufügen.
- Cloud Build-Dienstkonto
- Compute Instance-Administrator
- Dienstkontobenutzer
-
Cloud Compute-Dienstkonto: Dieses Dienstkonto wird von Google Cloud zu Instanzen hinzugefügt, die in Google Cloud erstellt wurden, sobald die Compute-API aktiviert wird. Dieses Konto hat die einfache IAM-Bearbeiterrolle, um die Operationen auszuführen. Wenn Sie jedoch die Standardberechtigung löschen, um eine präzisere Kontrolle zu haben, müssen Sie die Speicheradministratorrolle hinzufügen, für die die folgenden Berechtigungen erforderlich sind:
- resourcemanager.projects.get
- storage.objects.create
- storage.objects.get
- storage.objects.list
Sie können dieses Dienstkonto durch eine E-Mail-Adresse identifizieren, die mit der Projekt-ID und dem Wort compute beginnt. Beispiel: <project-id>-compute@developer.gserviceaccount.com
.
Citrix Cloud-Dienstkonto erstellen
Führen Sie folgende Schritte aus, um ein Citrix Cloud-Dienstkonto zu erstellen:
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > Service accounts.
- Wählen Sie auf der Seite Service accounts CREATE SERVICE ACCOUNT.
- Geben Sie auf der Seite Create service account die erforderlichen Informationen ein und wählen Sie dann CREATE AND CONTINUE.
-
Klicken Sie auf der Seite Grant this service account access to project auf das Dropdownmenü Select a role und wählen Sie die erforderlichen Rollen aus. Klicken Sie auf +ADD ANOTHER ROLE, wenn Sie weitere Rollen hinzufügen möchten.
Jedes Konto (persönlich oder Service) hat verschiedene Rollen, die das Management des Projekts definieren. Gewähren Sie diesem Dienstkonto die folgenden Rollen:
- Compute Admin
- Speicher-Administrator
- Cloud Build-Editor
- Dienstkontobenutzer
- Cloud Datastore User
- Cloud KMS Crypto Operator
Der Cloud KMS Crypto Operator benötigt die folgenden Berechtigungen:
- cloudkms.cryptoKeys.get
- cloudkms.cryptoKeys.list
- cloudkms.keyRings.get
- cloudkms.keyRings.list
Hinweis:
Aktivieren Sie alle APIs, um die vollständige Liste der beim Erstellen eines neuen Dienstkontos verfügbaren Rollen abzurufen.
- Klicken Sie auf CONTINUE
- Fügen Sie auf der Seite Grant users access to this service account Benutzer oder Gruppen hinzu, um ihnen Zugriff auf Aktionen in diesem Dienstkonto zu gewähren.
- Klicken Sie auf DONE.
- Navigieren Sie zur IAM-Hauptkonsole.
- Identifizieren Sie das erstellte Dienstkonto.
- Überprüfen Sie, ob die Rollen erfolgreich zugewiesen wurden.
Überlegungen:
Beachten Sie beim Erstellen des Servicekontos Folgendes:
- Die Schritte Grant this service account access to project und Grant users access to this service account sind optional. Wenn Sie diese optionalen Konfigurationsschritte überspringen, wird das neu erstellte Servicekonto nicht auf der Seite IAM & Admin > IAM angezeigt.
- Um die mit dem Servicekonto verknüpften Rollen anzuzeigen, fügen Sie die Rollen hinzu, ohne die optionalen Schritte zu überspringen. Dadurch wird sichergestellt, dass Rollen für das konfigurierte Servicekonto angezeigt werden.
Citrix Cloud-Dienstkontoschlüssel
Der Citrix Cloud-Dienstkontoschlüssel ist erforderlich, um eine Verbindung in Citrix DaaS herzustellen. Der Schlüssel ist in einer Anmeldeinformationsdatei (.json) enthalten. Nachdem Sie den Schlüssel erstellt haben, wird die Datei automatisch heruntergeladen und im Ordner Downloads gespeichert. Stellen Sie beim Erstellen des Schlüssels sicher, dass der Schlüsseltyp auf JSON festgelegt wird. Andernfalls kann die Citrix Oberfläche “Vollständige Konfiguration” sie nicht analysieren.
Um einen Dienstkontoschlüssel zu erstellen, navigieren Sie zu IAM & Admin > Dienstkonten und klicken Sie auf die E-Mail-Adresse des Citrix Cloud-Dienstkontos. Wechseln Sie zur Registerkarte Schlüssel und wählen Sie Schlüssel hinzufügen > Neuen Schlüssel erstellen. Achten Sie darauf, JSON als Schlüsseltyp auszuwählen.
Tipp:
Erstellen Sie Schlüssel auf der Seite Service accounts in der Google Cloud-Konsole. Es wird empfohlen, Schlüssel aus Sicherheitsgründen regelmäßig zu ändern. Sie stellen der Citrix Virtual Apps and Desktops-Anwendung neue Schlüssel durch Bearbeiten einer vorhandenen Google Cloud-Verbindung bereit.
Citrix Cloud-Dienstkonto Rollen hinzufügen
So fügen Sie einem Citrix Cloud-Dienstkonto Rollen hinzu:
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > IAM.
-
Suchen Sie auf der Seite IAM > PERMISSIONS das erstellte Dienstkonto, erkennbar an der E-Mail-Adresse.
Beispiel:
<my-service-account>@<project-id>.iam.gserviceaccount.com
- Wählen Sie das Bleistiftsymbol, um den Zugriff auf den Prinzipal des Dienstkontos zu bearbeiten.
- Wählen Sie auf der Seite Edit access to “project-id” für den ausgewählten Prinzipal ADD ANOTHER ROLE, um Ihrem Dienstkonto die erforderlichen Rollen nacheinander hinzuzufügen, und wählen Sie SAVE.
Cloud Build-Dienstkonto Rollen hinzufügen
So fügen Sie einem Cloud Build-Dienstkonto Rollen hinzu:
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > IAM.
-
Suchen Sie auf der Seite IAM das Cloud Build-Dienstkonto, erkennbar an einer E-Mail-Adresse, die mit der Projekt-ID und dem Wort cloudbuild beginnt.
Beispiel:
<project-id>@cloudbuild.gserviceaccount.com
- Wählen Sie das Bleistiftsymbol, um die Cloud Build-Kontorollen zu bearbeiten.
-
Wählen Sie auf der Seite Edit access to “project-id” für den ausgewählten Prinzipal ADD ANOTHER ROLE, um Ihrem Cloud Build-Dienstkonto die erforderlichen Rollen nacheinander hinzuzufügen, und wählen Sie SAVE.
Hinweis:
Aktivieren Sie alle APIs, um die vollständige Liste der Rollen abzurufen.
Nach dem 29. April 2024
Citrix Cloud verwendet zwei separate Dienstkonten im Google Cloud-Projekt:
-
Citrix Cloud-Dienstkonto: Dieses Dienstkonto ermöglicht Citrix Cloud den Zugriff auf das Google-Projekt, sowie Provisioning und Verwaltung von Maschinen. Dieses Dienstkonto authentifiziert sich bei Google Cloud mit einem von Google Cloud generierten Schlüssels.
Sie müssen dieses Dienstkonto manuell erstellen.
Sie können dieses Dienstkonto mit einer E-Mail-Adresse identifizieren. Beispiel:
<my-service-account>@<project-id>.iam.gserviceaccount.com
. -
Cloud Compute-Dienstkonto: Dieses Dienstkonto wird automatisch bereitgestellt, nachdem Sie alle unter Enable Google Cloud APIs aufgeführten APIs aktiviert haben. Um alle automatisch erstellten Dienstkonten anzuzeigen, navigieren Sie in der Google Cloud-Konsole zu IAM & Admin > IAM und aktivieren Sie das Kontrollkästchen Include Google-provided role grants. Dieses Konto hat die einfache IAM-Bearbeiterrolle, um die Operationen auszuführen. Wenn Sie jedoch die Standardberechtigung löschen, um eine präzisere Kontrolle zu haben, müssen Sie die Speicheradministratorrolle hinzufügen, für die die folgenden Berechtigungen erforderlich sind:
- resourcemanager.projects.get
- storage.objects.create
- storage.objects.get
- storage.objects.list
Sie können dieses Dienstkonto durch eine E-Mail-Adresse identifizieren, die mit der Projekt-ID und dem Wort compute beginnt. Beispiel:
<project-id>-compute@developer.gserviceaccount.com.
Überprüfen Sie, ob dem Dienstkonto die folgenden Rollen gewährt wurden.
- Cloud Build-Dienstkonto
- Compute Instance-Administrator
- Dienstkontobenutzer
Citrix Cloud-Dienstkonto erstellen
Führen Sie folgende Schritte aus, um ein Citrix Cloud-Dienstkonto zu erstellen:
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > Service accounts.
- Wählen Sie auf der Seite Service accounts CREATE SERVICE ACCOUNT.
- Geben Sie auf der Seite Create service account die erforderlichen Informationen ein und wählen Sie dann CREATE AND CONTINUE.
-
Klicken Sie auf der Seite Grant this service account access to project auf das Dropdownmenü Select a role und wählen Sie die erforderlichen Rollen aus. Klicken Sie auf +ADD ANOTHER ROLE, wenn Sie weitere Rollen hinzufügen möchten.
Jedes Konto (persönlich oder Service) hat verschiedene Rollen, die das Management des Projekts definieren. Gewähren Sie diesem Dienstkonto die folgenden Rollen:
- Compute Admin
- Speicher-Administrator
- Cloud Build-Editor
- Dienstkontobenutzer
- Cloud Datastore User
- Cloud KMS Crypto Operator
Der Cloud KMS Crypto Operator benötigt die folgenden Berechtigungen:
- cloudkms.cryptoKeys.get
- cloudkms.cryptoKeys.list
- cloudkms.keyRings.get
- cloudkms.keyRings.list
Hinweis:
Aktivieren Sie alle APIs, um die vollständige Liste der beim Erstellen eines neuen Dienstkontos verfügbaren Rollen abzurufen.
- Klicken Sie auf CONTINUE
- Fügen Sie auf der Seite Grant users access to this service account Benutzer oder Gruppen hinzu, um ihnen Zugriff auf Aktionen in diesem Dienstkonto zu gewähren.
- Klicken Sie auf DONE.
- Navigieren Sie zur IAM-Hauptkonsole.
- Identifizieren Sie das erstellte Dienstkonto.
- Überprüfen Sie, ob die Rollen erfolgreich zugewiesen wurden.
Überlegungen:
Beachten Sie beim Erstellen des Servicekontos Folgendes:
- Die Schritte Grant this service account access to project und Grant users access to this service account sind optional. Wenn Sie diese optionalen Konfigurationsschritte überspringen, wird das neu erstellte Servicekonto nicht auf der Seite IAM & Admin > IAM angezeigt.
- Um die mit dem Servicekonto verknüpften Rollen anzuzeigen, fügen Sie die Rollen hinzu, ohne die optionalen Schritte zu überspringen. Dadurch wird sichergestellt, dass Rollen für das konfigurierte Servicekonto angezeigt werden.
Citrix Cloud-Dienstkontoschlüssel
Der Citrix Cloud-Dienstkontoschlüssel ist erforderlich, um eine Verbindung in Citrix DaaS herzustellen. Der Schlüssel ist in einer Anmeldeinformationsdatei (.json) enthalten. Nachdem Sie den Schlüssel erstellt haben, wird die Datei automatisch heruntergeladen und im Ordner Downloads gespeichert. Stellen Sie beim Erstellen des Schlüssels sicher, dass der Schlüsseltyp auf JSON festgelegt wird. Andernfalls kann die Citrix Oberfläche “Vollständige Konfiguration” sie nicht analysieren.
Um einen Dienstkontoschlüssel zu erstellen, navigieren Sie zu IAM & Admin > Dienstkonten und klicken Sie auf die E-Mail-Adresse des Citrix Cloud-Dienstkontos. Wechseln Sie zur Registerkarte Schlüssel und wählen Sie Schlüssel hinzufügen > Neuen Schlüssel erstellen. Achten Sie darauf, JSON als Schlüsseltyp auszuwählen.
Tipp:
Erstellen Sie Schlüssel auf der Seite Service accounts in der Google Cloud-Konsole. Es wird empfohlen, Schlüssel aus Sicherheitsgründen regelmäßig zu ändern. Sie stellen der Citrix Virtual Apps and Desktops-Anwendung neue Schlüssel durch Bearbeiten einer vorhandenen Google Cloud-Verbindung bereit.
Citrix Cloud-Dienstkonto Rollen hinzufügen
So fügen Sie einem Citrix Cloud-Dienstkonto Rollen hinzu:
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > IAM.
-
Suchen Sie auf der Seite IAM > PERMISSIONS das erstellte Dienstkonto, erkennbar an der E-Mail-Adresse.
Beispiel:
<my-service-account>@<project-id>.iam.gserviceaccount.com
- Wählen Sie das Bleistiftsymbol, um den Zugriff auf den Prinzipal des Dienstkontos zu bearbeiten.
- Wählen Sie auf der Seite Edit access to “project-id” für den ausgewählten Prinzipal ADD ANOTHER ROLE, um Ihrem Dienstkonto die erforderlichen Rollen nacheinander hinzuzufügen, und wählen Sie SAVE.
Rollen zum Cloud Compute-Dienstkonto hinzufügen
So fügen Sie Rollen zum Cloud Compute-Dienstkonto hinzu:
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > IAM.
-
Suchen Sie auf der Seite IAM das Cloud Build-Dienstkonto, erkennbar an einer E-Mail-Adresse, die mit der Projekt-ID und dem Wort compute beginnt.
Beispiel:
<project-id>-compute@developer.gserviceaccount.com
- Wählen Sie das Bleistiftsymbol, um die Cloud Build-Kontorollen zu bearbeiten.
-
Wählen Sie auf der Seite Edit access to “project-id” für den ausgewählten Prinzipal ADD ANOTHER ROLE, um Ihrem Cloud Build-Dienstkonto die erforderlichen Rollen nacheinander hinzuzufügen, und wählen Sie SAVE.
Hinweis:
Aktivieren Sie alle APIs, um die vollständige Liste der Rollen abzurufen.
Speicherberechtigungen und Bucket-Verwaltung
Citrix DaaS verbessert die Fehlermeldung im Cloud-Build für den Google Cloud-Dienst. Der Dienst führt Builds in Google Cloud aus. Citrix DaaS erstellt ein Storage-Bucket mit dem Namen citrix-mcs-cloud-build-logs-{region}-{5 random characters}
, in dem die Google Cloud-Dienste Protokollinformationen für den Build erfassen. Für das Bucket ist festgelegt, dass dessen Inhalt nach 30 Tagen gelöscht wird. Für diesen Vorgang muss die Google Cloud-Berechtigung des für die Verbindung verwendeten Dienstkontos auf storage.buckets.update
festgelegt sein. Hat das Dienstkonto diese Berechtigung nicht, ignoriert Citrix DaaS Fehler und setzt die Katalogerstellung fort. Ohne diese Berechtigung werden Build-Protokolle immer größer und erfordern eine manuelle Bereinigung.
Aktivieren des privaten Google-Zugriffs
Wenn der Netzwerkschnittstelle einer VM keine externe IP-Adresse zugewiesen ist, werden Pakete nur an andere interne IP-Adressenziele gesendet. Wenn Sie den privaten Zugriff aktivieren, stellt die VM eine Verbindung zu den von der Google-API und den zugehörigen Diensten verwendeten externen IP-Adressen her.
Hinweis:
Unabhängig davon, ob der private Google-Zugriff aktiviert ist, müssen alle VMs mit und ohne öffentliche IP-Adresse auf öffentliche Google-APIs zugreifen können, vor allem dann, wenn Netzwerkgeräte von Drittanbietern in der Umgebung installiert sind.
Damit eine VM im Subnetz ohne öffentliche IP-Adresse für das MCS-Provisioning auf die Google-APIs zugreifen kann, führen Sie folgende Schritte aus:
- Rufen Sie in Google Cloud VPC network configuration auf.
- Aktivieren Sie im Fenster “Subnet details” die Option Private Google access.
Weitere Informationen finden Sie unter Konfigurieren des privaten Google-Zugriffs.
Wichtig:
Wenn Ihr Netzwerk so konfiguriert ist, dass der VM-Zugriff auf das Internet unterbunden wird, vergewissern Sie sich, dass Ihre Organisation das mit der Aktivierung des privaten Google-Zugriffs für das Subnetz der VMs verbundene Risiko einzugehen bereit ist.
Hinzufügen einer Verbindung
Folgen Sie den Anweisungen unter Erstellen einer Verbindung und von Ressourcen. Die folgende Beschreibung erläutert, wie Sie eine Hostverbindung einrichten:
-
Wählen Sie unter Verwalten > Konfiguration im linken Bereich Hosting.
-
Wählen Sie in der Aktionsleiste Verbindung und Ressourcen hinzufügen.
-
Wählen Sie auf der Seite Verbindung die Optionen Neue Verbindung erstellen und Citrix-Provisioningtools und wählen Sie Weiter.
- Verbindungstyp. Wählen Sie im Menü die Option Google Cloud.
- Verbindungsname. Geben Sie einen Namen für die Verbindung ein.
-
Wählen Sie auf der Seite Region einen Projektnamen aus dem Menü aus, wählen Sie die Region, in der sich die gewünschten Ressourcen befinden, und wählen Sie Weiter.
-
Geben Sie auf der Seite Netzwerk einen Ressourcennamen ein, wählen Sie ein virtuelles Netzwerk aus dem Menü aus, wählen Sie einen Teilbereich (Subset) und wählen Sie Weiter. Mit dem Ressourcennamen kann diese Kombination von Region und Netzwerk identifiziert werden. Virtuelle Netzwerke mit dem Namenssuffix (Shared) sind freigegebene VPCs. Wenn Sie eine IAM-Rolle auf Subnetzebene für eine freigegebene VPC konfigurieren, werden nur bestimmte Subnetze der freigegebenen VPC in der Subnetzliste angezeigt.
Hinweis:
- Der Ressourcenname muss aus 1–64 Zeichen bestehen, er darf nicht ausschließlich aus Leerzeichen bestehen, und folgende Zeichen sind nicht erlaubt:
\ / ; : # . * ? = < > | [ ] { } " ' ( ) ' )
.
- Der Ressourcenname muss aus 1–64 Zeichen bestehen, er darf nicht ausschließlich aus Leerzeichen bestehen, und folgende Zeichen sind nicht erlaubt:
-
Überprüfen Sie die Informationen auf der Seite Zusammenfassung und wählen Sie Fertigstellen, um das Fenster Verbindung und Ressourcen hinzufügen zu schließen.
Nach dem Erstellen der Verbindung und der Ressourcen wird die erstellte Verbindung samt Ressourcen aufgelistet. Wählen Sie zum Konfigurieren der Verbindung diese aus und wählen Sie in der Aktionsleiste die entsprechende Option.
Sie können außerdem die unter der Verbindung erstellten Ressourcen löschen, umbenennen oder testen. Wählen Sie hierfür die Ressource unter der Verbindung aus und wählen Sie in der Aktionsleiste die entsprechende Option.
Vorbereiten einer Master-VM-Instanz und eines nichtflüchtigen Speichers
Tipp:
Nichtflüchtiger Speicher (Persistent Disk) ist der Google Cloud-Begriff für den virtuellen Datenträger.
Zur Vorbereitung Ihrer Master-VM-Instanz erstellen und konfigurieren Sie zunächst eine VM-Instanz mit Eigenschaften, die der gewünschten Konfiguration für die geklonten VDA-Instanzen im geplanten Maschinenkatalog entsprechen. Die Konfiguration gilt nicht nur für Größe und Typ der Instanz. Sie umfasst auch Instanzattribute wie Metadaten, Tags, GPU-Zuweisungen, Netzwerktags und Dienstkontoeigenschaften.
MCS verwendet dann Ihre Master-VM-Instanz, um die Google Cloud-Instanzvorlage zu erstellen. Auf der Basis der Instanzvorlage werden dann die geklonten VDA-Instanzen erstellt, die den Maschinenkatalog umfassen. Geklonte Instanzen erben die Eigenschaften der Master-VM-Instanz (mit Ausnahme der Eigenschaften für VPC, Subnetz und nichtflüchtigen Speicher), aus der die Instanzvorlage erstellt wurde.
Nachdem Sie die Eigenschaften der Master-VM-Instanz konfiguriert haben, starten Sie die Instanz und bereiten den nichtflüchtigen Speicher für die Instanz vor.
Es wird empfohlen, manuell einen Snapshot des Speichers zu erstellen. Dies ermöglicht eine aussagekräftige Benennung zum Nachverfolgen von Versionen, bietet mehr Optionen zum Verwalten früherer Versionen des Masterimages und spart Zeit beim Erstellen des Maschinenkatalogs. Wenn Sie keinen eigenen Snapshot erstellen, erstellt MCS einen temporären Snapshot, der bei Abschluss der Bereitstellung gelöscht wird.
Maschinenkatalog erstellen
Hinweis:
Erstellen Sie Ihre Ressourcen, bevor Sie einen Maschinenkatalog erstellen. Verwenden Sie bei der Konfiguration von Maschinenkatalogen die von Google Cloud festgelegten Namenskonventionen. Weitere Informationen finden Sie unter Richtlinien zur Bucket- und Objektbenennung.
Folgen Sie den Anweisungen unter Erstellen von Maschinenkatalogen.
Verwalten von Maschinenkatalogen
Informationen zum Hinzufügen von Maschinen zu einem Katalog, zum Aktualisieren von Maschinen und zum Rollback eines Updates finden Sie unter Verwalten von Maschinenkatalogen.
Energieverwaltung
Citrix DaaS ermöglicht die Energieverwaltung von Google Cloud-Maschinen. Mit dem Knoten Suchen im Navigationsbereich finden Sie die Maschine, für die Sie eine Energieverwaltung festlegen möchten. Folgende Energieaktionen stehen zur Verfügung:
- Löschen
- Starten
- Neu starten
- Neustart erzwingen
- Herunterfahren
- Herunterfahren erzwingen
- Zu Bereitstellungsgruppe hinzufügen
- Tags verwalten
- Wartungsmodus einschalten
Sie können die Energieverwaltung für Google Cloud-Maschinen auch mit Autoscale aktivieren. Fügen Sie hierfür die Google Cloud-Maschinen einer Bereitstellungsgruppe hinzu und aktivieren Sie Autoscale für diese Bereitstellungsgruppe. Weitere Hinweise zu Autoscale finden Sie unter Autoscale.
Schutz vor versehentlichem Löschen von Maschinen
Citrix DaaS ermöglicht den Schutz von MCS-Ressourcen in Google Cloud vor versehentlichem Löschen. Konfigurieren Sie die bereitgestellte VM, indem Sie das Flag deletionProtection
auf TRUE setzen.
Standardmäßig werden mit MCS oder dem Google Cloud-Plug-In bereitgestellte VMs mit aktiviertem InstanceProtection erstellt. Die Implementierung gilt für persistente und nicht persistente Kataloge. Nicht persistente Kataloge werden aktualisiert, wenn die Instanzen anhand der Vorlage neu erstellt werden. Für bestehende persistente Maschinen können Sie das Flag in der Google Cloud-Konsole festlegen. Weitere Informationen zum Festlegen des Flags finden Sie in der Google-Dokumentation. Neue Maschinen, die zu persistenten Katalogen hinzugefügt wurden, werden mit aktiviertem Flag deletionProtection
erstellt
Der Versuch, eine VM-Instanz, für die das Flag deletionProtection
festgelegt ist, zu löschen, schlägt fehl. Wenn Sie jedoch die Berechtigung compute.instances.setDeletionProtection
oder die IAM-Rolle Compute-Administrator haben, können Sie das Flag zurücksetzen, damit die Ressource gelöscht werden kann.
Importieren manuell erstellter Google Cloud-Maschinen
Sie können eine Verbindung zu Google Cloud herstellen und dann einen Katalog mit Google Cloud-Maschinen erstellen. Anschließend können Sie Google Cloud-Maschinen manuell mit Citrix DaaS neu starten. Das Feature ermöglicht folgende Aktionen:
- Manuell erstellte Google Cloud-Maschinen mit Multisitzungs-OS in einen Citrix Virtual Apps and Desktops-Maschinenkatalog importieren.
- Manuell erstellte Google Cloud-Maschinen mit Multisitzungs-OS aus einem Citrix Virtual Apps and Desktops-Katalog entfernen.
- Energieverwaltung von Multisitzungs-OS-Maschinen in Google Cloud über vorhandene Energieverwaltungsfunktionen von Citrix Virtual Apps and Desktops. Richten Sie beispielsweise einen Neustartplan für diese Maschinen ein.
Hierfür ist es nicht erforderlich, vorhandene Bereitstellungsworkflows für Citrix Virtual Apps and Desktops zu ändern oder vorhandene Features zu entfernen. Es wird empfohlen, Maschinen mit MCS in der Oberfläche “Vollständige Konfiguration” von Citrix DaaS bereitzustellen, anstatt manuell erstellte Google Cloud-Maschinen zu importieren.
Freigegebene virtuelle private Cloud
Freigegebene VPCs umfassen ein Hostprojekt, aus dem die freigegebenen Subnetze zur Verfügung gestellt werden, sowie mindestens ein Dienstprojekt, das die Ressource verwendet. Freigegebene VPCs sind gute Optionen für größere Installationen, da sie eine zentrale Steuerung, Nutzung und Verwaltung gemeinsam genutzter Google-Cloud-Ressourcen bieten. Weitere Informationen finden Sie auf der Google-Dokumentationssite.
Mit diesem Feature unterstützt Maschinenerstellungsdienste (MCS) das Provisioning und die Verwaltung von Maschinenkatalogen, die in freigegebenen VPCs bereitgestellt werden. Diese Unterstützung entspricht funktional der derzeitigen für lokale VPCs, weist aber in zwei Bereichen Unterschiede auf:
- Sie müssen dem Dienstkonto, das zum Erstellen der Hostverbindung verwendet wird, zusätzliche Berechtigungen erteilen. Dadurch kann MCS auf freigegebene VPC-Ressourcen zugreifen und diese nutzen.
- Sie müssen zwei Firewallregeln (eine für den eingehenden und eine für den ausgehenden Datenverkehr) erstellen. Die Firewallregeln werden beim Imagemastering verwendet.
Neue Berechtigungen erforderlich
Beim Erstellen der Hostverbindung ist ein Google Clouddienstkonto mit bestimmten Berechtigungen erforderlich. Diese zusätzlichen Berechtigungen müssen allen Dienstkonten erteilt werden, die zum Erstellen von Hostverbindungen für die freigegebene VPC verwendet werden.
Tipp:
Die zusätzlichen Berechtigungen sind für Citrix DaaS nicht neu. Sie werden verwendet, um die Verwendung lokaler VPCs zu erleichtern. Bei freigegebenen VPCs ermöglichen die zusätzlichen Berechtigungen den Zugriff auf andere freigegebene VPC-Ressourcen.
Dem Dienstkonto, das der Hostverbindung zugeordnet ist, müssen bis zu vier zusätzliche Berechtigungen erteilt werden, um eine freigegebene VPC zu unterstützen:
- compute.firewalls.list: Diese Berechtigung ist obligatorisch. Mit ihr kann MCS die Liste der Firewallregeln auf der freigegebenen VPC abrufen.
- compute.networks.list: Diese Berechtigung ist obligatorisch. Damit kann MCS die freigegebenen VPC-Netzwerke identifizieren, die dem Dienstkonto zur Verfügung stehen.
- compute.subnetworks.list: Diese Berechtigung ist je nach Verwendung der VPCs optional. Damit kann MCS die Subnetze der sichtbaren, freigegebenen VPCs identifizieren. Diese Berechtigung ist für die Verwendung lokaler VPCs erforderlich, muss aber auch im Hostprojekt für freigegebene VPCs zugewiesen werden.
- compute.subnetworks.use: Diese Berechtigung ist je nach Verwendung der VPCs optional. Sie ist zur Verwendung von Subnetzressourcen in den bereitgestellten Maschinenkatalogen erforderlich. Diese Berechtigung ist für die Verwendung lokaler VPCs erforderlich, muss aber auch im Hostprojekt für freigegebene VPCs zugewiesen werden.
Berücksichtigen Sie bei der Verwendung dieser Berechtigungen, dass es, basierend auf dem Berechtigungstyp, verschiedene Ansätze zum Erstellen des Maschinenkatalogs gibt:
- Berechtigung auf Projektebene:
- Ermöglicht Zugriff auf alle freigegebenen VPCs im Hostprojekt.
- Erfordert, dass dem Dienstkonto die Berechtigungen 3 und 4 zugewiesen sind.
- Berechtigung auf Subnetzebene:
- Ermöglicht den Zugriff auf einzelne Subnetze in der freigegebenen VPC.
- Die Berechtigungen 3 und 4 gehören zur Zuweisung auf Subnetzebene und müssen daher dem Dienstkonto nicht direkt zugewiesen werden.
Wählen Sie das Konzept aus, der Ihren Anforderungen und Sicherheitsstandards entspricht.
Tipp:
Weitere Informationen zu den Unterschieden zwischen Berechtigungen auf Projektebene und Subnetzebene finden Sie in der Google Cloud-Dokumentation.
Firewallregeln
Bei der Vorbereitung eines Maschinenkatalogs wird ein Maschinenabbild vorbereitet, das als Masterimage-Systemdatenträger für den Katalog dient. Bei diesem Vorgang wird der Datenträger vorübergehend an eine virtuelle Maschine angefügt. Die VM muss in einer isolierten Umgebung ausgeführt werden, die jeglichen eingehenden und ausgehenden Netzwerkdatenverkehr verhindert. Dies wird durch zwei Alles-abweisen-Firewallregeln verwirklicht: eine für eingehenden und eine für ausgehenden Datenverkehr. Bei Verwendung Google Cloud-lokaler VCPs erstellt MCS diese Firewall im lokalen Netzwerk und wendet sie für das Mastering auf die Maschine an. Nach Abschluss des Masterings werden die Firewallregeln aus dem Image entfernt.
Es wird empfohlen, die Anzahl der neuen Berechtigungen, die für die Verwendung freigegebener VPCs erforderlich sind, auf ein Minimum zu beschränken. Freigegebene VPCs sind wichtige Unternehmensressourcen, für die in der Regel strenge Sicherheitsprotokolle gelten. Erstellen Sie daher im Hostprojekt zwei Firewallregeln für die freigegebenen VPC-Ressourcen: eine für eingehenden und eine für ausgehenden Datenverkehr. Weisen Sie diesen die höchste Priorität zu. Wenden Sie auf beide Regeln über den folgenden Wert ein neues Ziel-Tag an:
citrix-provisioning-quarantine-firewall
Wenn MCS einen Maschinenkatalog erstellt oder aktualisiert, sucht es nach Firewallregeln mit diesem Ziel-Tag. Es prüft die Regeln auf Richtigkeit und wendet sie auf die Maschine an, die zur Vorbereitung des Masterimages für den Katalog verwendet wird. Werden die Firewallregeln nicht gefunden oder die gefundenen Regeln haben die falsche Priorität, wird folgende Meldung (oder eine mit ähnlichem Wortlaut) angezeigt:
"Unable to find valid INGRESS and EGRESS quarantine firewall rules for VPC <name> in project <project>. " Please ensure you have created 'deny all' firewall rules with the network tag ‘citrix-provisioning-quarantine-firewall' and proper priority." "Refer to Citrix Documentation for details."
Konfigurieren der freigegebenen VPC
Führen Sie vor dem Hinzufügen der freigegebenen VPC als Hostverbindung in der Oberfläche “Vollständige Konfiguration” von Citrix DaaS die folgenden Schritte aus, um die Dienstkonten aus dem betreffenden Projekt hinzuzufügen:
- IAM-Rolle erstellen.
- Fügen Sie der IAM-Rolle des Hostprojekts für die freigegebene VPC das Dienstkonto hinzu, das zum Erstellen einer CVAD-Hostverbindung verwendet wird.
- Fügen Sie der IAM-Rolle des Hostprojekts für die freigegebene VPC das Cloud Build-Dienstkonto aus dem Projekt hinzu, das Sie bereitstellen möchten.
- Firewallregeln erstellen.
IAM-Rolle erstellen
Wählen Sie die Zugriffsebene der Rolle: Projektebene oder (eingeschränkter) Subnetzebene.
Zugriff auf Projektebene für die IAM-Rolle. Weisen Sie einer IAM-Rolle auf Projektebene die folgenden Berechtigungen zu:
- compute.firewalls.list
- compute.networks.list
- compute.subnetworks.list
- compute.subnetworks.use
Führen Sie zum Erstellen einer IAM-Rolle auf Projektebene folgende Schritte aus:
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > Roles.
- Wählen Sie CREATE ROLE auf der Seite Roles.
- Geben Sie auf der Seite Create Role einen Rollennamen ein. Wählen Sie ADD PERMISSIONS.
- Fügen Sie auf der Seite Add permissions der Rolle Berechtigungen hinzu. Um eine Berechtigung hinzuzufügen, geben Sie deren Namen in das Feld Filter table ein. Wählen Sie die Berechtigung aus und wählen Sie ADD.
- Wählen Sie CREATE.
IAM-Rolle auf Subnetzebene. Bei dieser Rolle werden die Berechtigungen compute.subnetworks.list
und compute.subnetworks.use
nach Auswahl von CREATE ROLE ausgelassen. Für diese IAM-Zugriffsebene müssen die Berechtigungen compute.firewalls.list
und compute.networks.list
auf die neue Rolle angewendet werden.
Führen Sie zum Erstellen einer IAM-Rolle auf Subnetzebene folgende Schritte aus:
- Navigieren Sie in der Google Cloud-Konsole zu VPC network > Shared VPC. Auf der Seite Shared VPC werden die Subnetze der freigegebenen VPC-Netzwerke des Hostprojekts angezeigt.
- Wählen Sie auf der Seite Shared VPC das Subnetz aus, auf das Sie zugreifen möchten.
- Wählen Sie oben rechts ADD MEMBER, um ein Dienstkonto hinzuzufügen.
- Führen Sie auf der Seite Add members die folgenden Schritte aus:
- Geben Sie im Feld New members den Namen des Dienstkontos ein und wählen Sie dann im Menü das Dienstkonto aus.
- Wählen Sie das Feld Select a Roll und dann Compute Network User.
- Wählen Sie SAVE.
- Gehen Sie in der Google Cloud-Konsole zu IAM & Admin > Roles.
- Wählen Sie CREATE ROLE auf der Seite Roles.
- Geben Sie auf der Seite Create Role einen Rollennamen ein. Wählen Sie ADD PERMISSIONS.
- Fügen Sie auf der Seite Add permissions der Rolle Berechtigungen hinzu. Um eine Berechtigung hinzuzufügen, geben Sie deren Namen in das Feld Filter table ein. Wählen Sie die Berechtigung aus und wählen Sie ADD.
- Wählen Sie CREATE.
Hinzufügen eines Dienstkontos zur IAM-Rolle des Hostprojekts
Führen Sie nach dem Erstellen einer IAM-Rolle die folgenden Schritte aus, um ein Dienstkonto für das Hostprojekt hinzuzufügen:
- Gehen Sie in der Google Cloud-Konsole zum Hostprojekt und dann zu IAM & Admin > IAM.
- Wählen Sie auf der Seite IAM die Option ADD, um ein Dienstkonto hinzuzufügen.
- Führen Sie auf der Seite Add members folgende Schritte aus:
- Geben Sie im Feld New members den Namen des Dienstkontos ein und wählen Sie dann im Menü das Dienstkonto aus.
- Wählen Sie ein Rollenfeld, geben Sie die erstellte IAM-Rolle ein und wählen Sie dann im Menü die Rolle.
- Wählen Sie SAVE.
Das Dienstkonto ist damit für das Hostprojekt konfiguriert.
Cloud Build-Dienstkonto zur freigegebenen VPC hinzufügen
Jedes Google Cloud-Abonnement hat ein Dienstkonto, das denselben Namen trägt wie die Projekt-ID, gefolgt von cloudbuild.gserviceaccount
. Beispiel: 705794712345@cloudbuild.gserviceaccount
.
Die Projekt-ID Ihres Projekts ermitteln Sie, indem Sie in der Google Cloud-Konsole Home und Dashboard auswählen:
Die ID wird im Bereich Project Info unter Project Number angezeigt.
Zum Hinzufügen des Cloud Build-Dienstkontos zur freigegebenen VPC führen Sie folgende Schritte aus:
- Gehen Sie in der Google Cloud-Konsole zum Hostprojekt und dann zu IAM & Admin > IAM.
- Wählen Sie ADD auf der Seite Permissions, um ein Konto hinzuzufügen.
- Führen Sie auf der Seite Add members die folgenden Schritte aus:
- Geben Sie im Feld New members den Namen des Cloud Build-Kontos ein und wählen Sie dann im Menü das Dienstkonto aus.
- Wählen Sie das Feld Select a role, geben Sie
Computer Network User
ein und wählen Sie dann im Menü die Rolle. - Wählen Sie SAVE.
Erstellen von Firewallregeln
Beim Mastering kopiert MCS das ausgewählte Maschinenabbild und bereitet damit den Masterimage-Systemdatenträger für den Katalog vor. Beim Masterings fügt MCS den Datenträger an eine temporäre virtuelle Maschine an und führt dann Vorbereitungsskripts aus. Die VM muss in einer isolierten Umgebung ausgeführt werden, die jeglichen eingehenden und ausgehenden Netzwerkdatenverkehr verhindert. Um eine isolierte Umgebung zu erstellen, erfordert MCS zwei Alles-abweisen-Firewallregeln (eine Eingangsregel und eine Ausgangregel). Erstellen Sie daher zwei Firewallregeln im Hostprojekt:
- Gehen Sie in der Google Cloud-Konsole zum Hostprojekt und dann zu VPC network > Firewall.
- Wählen Sie auf der Seite Firewall die Option CREATE FIREWALL RULE.
- Führen Sie auf der Seite Create a firewall rule die folgenden Schritte aus:
- Name. Geben Sie einen Namen für die Regel ein.
- Network. Wählen Sie das freigegebene VPC-Netzwerk aus, für das die Firewallregel für eingehenden Datenverkehr gilt.
- Priority. Je kleiner der Wert ist, desto höher ist die Priorität der Regel. Citrix empfiehlt einen kleinen Wert (z. B. 10).
- Direction of traffic. Wählen Sie Ingress.
- Action on match. Wählen Sie Deny.
- Targets. Verwenden Sie die Standardeinstellung Specified target tags.
-
Target tags. Geben Sie
citrix-provisioning-quarantine-firewall
ein. - Source filter. Verwenden Sie die Standardeinstellung IP ranges.
-
Source IP ranges. Geben Sie einen Bereich ein, der den gesamten Datenverkehr abdeckt. Geben Sie
0.0.0.0/0
ein. - Protocols and ports. Wählen Sie Deny all.
- Wählen Sie CREATE, um die Regel zu erstellen.
- Wiederholen Sie die Schritte 1 bis 4, um eine weitere Regel zu erstellen. Wählen Sie für Direction of traffic die Option Egress.
Hinzufügen einer Verbindung
Fügen Sie eine Verbindung zu den Google Cloud-Umgebungen hinzu. Siehe Eine Verbindung hinzufügen.
Aktivieren der Zonenauswahl
Citrix Virtual Apps and Desktops unterstützt die Zonenauswahl. Bei der Zonenauswahl geben Sie die Zonen an, in denen VMs erstellt werden sollen. Mithilfe der Zonenauswahl können Administratoren die Einzelmandantenknoten in Zonen ihrer Wahl platzieren. Um die Einzelmandantenfähigkeit zu konfigurieren, müssen Sie folgende Schritte in Google Cloud ausführen:
- Reservieren eines Google Cloud-Knotens für einzelne Mandanten
- Erstellen des VDA-Masterimages
Einen Google Cloud-Sole-Mandantenknoten reservieren
Informationen zum Reservieren eines Einzelmandantenknotens finden Sie in der Dokumentation zu Google Cloud.
Wichtig:
Eine Knotenvorlage wird zur Bezeichnung der Leistungsmerkmale des Systems verwendet, das in der Knotengruppe reserviert ist. Zu diesen Merkmalen gehören die Anzahl der virtuellen GPUs, der dem Knoten zugewiesene Arbeitsspeicher und der für die auf dem Knoten erstellten Maschinen verwendete Maschinentyp. Weitere Informationen finden Sie in der Dokumentation zu Google Cloud.
Erstellen des VDA-Masterimages
Um Maschinen auf dem Knoten für einzelne Mandanten erfolgreich bereitzustellen, müssen Sie beim Erstellen eines Master-VM-Images zusätzliche Schritte ausführen. Maschineninstanzen in Google Cloud besitzen die Eigenschaft node affinity labels. Bei Instanzen, die als Masterimage für auf Knoten für einzelne Mandanten bereitgestellte Kataloge verwendet werden, muss das Knotenaffinitätslabel mit dem Namen der Zielknotengruppe übereinstimmen. Um dies zu erreichen, beachten Sie Folgendes:
- Legen Sie für neue Instanzen das Knotenaffinitätslabel bei deren Erstellung in der Google Cloud-Konsole fest. Weitere Informationen finden Sie unter Festlegen des Knotenaffinitätslabels beim Erstellen einer Instanz.
- Legen Sie für bestehende Instanzen das Knotenaffinitätslabel über die gcloud-Befehlszeile fest. Weitere Informationen finden Sie unter Festlegen des Knotenaffinitätslabels für eine bestehende Instanz.
Hinweis:
Wenn Sie die Einzelmandantenfähigkeit mit einer freigegebenen VPC verwenden möchten, lesen Sie den Abschnitt Freigegebene virtuelle private Cloud.
Festlegen des Knotenaffinitätslabels beim Erstellen einer Instanz
Zum Festlegen des Knotenaffinitätslabels führen Sie folgende Schritte aus:
-
Navigieren Sie in der Google Cloud-Konsole zu Compute Engine > VM instances.
-
Wählen Sie auf der Seite VM instances die Option Create instance.
-
Geben Sie auf der Seite Instance creation die erforderlichen Informationen an und wählen Sie management, security, disks, networking, sole tenancy, um das Einstellungsfenster zu öffnen.
-
Wählen Sie Browse auf der Registerkarte Sole tenancy, um die verfügbaren Knotengruppen im aktuellen Projekt anzuzeigen. Die Seite Sole-tenant node wird mit einer Liste der verfügbaren Knotengruppen angezeigt.
-
Wählen Sie auf der Seite Sole-tenant node die gewünschte Knotengruppe aus der Liste aus und wählen Sie Select, um zur Registerkarte Sole tenancy zurückzukehren. Das Feld “node affinity labels” wird mit den ausgewählten Informationen ausgefüllt. Mit dieser Einstellung wird sichergestellt, dass aus der Instanz erstellte Maschinenkataloge für die ausgewählte Knotengruppe bereitgestellt werden.
-
Wählen Sie Create, um die Instanz zu erstellen.
Festlegen des Knotenaffinitätslabels für eine bestehende Instanz
Zum Festlegen des Knotenaffinitätslabels führen Sie folgende Schritte aus:
-
Legen Sie im Google Cloud Shell-Terminalfenster ein Knotenaffinitätslabel mit dem Befehl gcloud compute instances fest. Der gcloud-Befehl muss die folgenden Informationen enthalten:
-
Name der VM. Verwenden Sie beispielsweise eine bestehende VM namens
s*2019-vda-base
.* -
Name der Knotengruppe. Verwenden Sie den zuvor erstellten Knotengruppennamen. Beispiel:
mh-sole-tenant-node-group-1
. -
Die Zone, in der sich die Instanz befindet. Die VM kann sich beispielsweise in
*us-east-1b* zone
befinden.
Geben Sie beispielsweise den folgenden Befehl im Terminalfenster ein:
gcloud compute instances set-scheduling "s2019-vda-base" --node-group="mh-sole-tenant-node-group-1" --zone="us-east1-b"
Weitere Informationen zum Befehl gcloud compute instances finden Sie in der Google Developer Tools-Dokumentation unter https://cloud.google.com/sdk/gcloud/reference/beta/compute/instances/set-scheduling.
-
Name der VM. Verwenden Sie beispielsweise eine bestehende VM namens
-
Navigieren Sie zu der Seite VM instance details der Instanz und prüfen Sie, ob das Feld Node Affinities das Label enthält.
Maschinenkatalog erstellen
Nach dem Festlegen des Knotenaffinitätslabels konfigurieren Sie den Maschinenkatalog.
Preview: Verwenden vom Kunden verwalteter Verschlüsselungsschlüssel (CMEK)
Sie können vom Kunden verwaltete Verschlüsselungsschlüssel (Customer Managed Encryption Keys, CMEK) für MCS-Kataloge verwenden. Wenn Sie das Feature verwenden, weisen Sie dem Compute Engine Service-Agent die Google Cloud Key Management Service CryptoKey Encrypter/Decrypter
-Rolle zu. Das Citrix DaaS-Konto muss über die richtigen Berechtigungen in dem Projekt verfügen, in dem der Schlüssel gespeichert ist. Weitere Informationen finden Sie unter Ressourcen mit Cloud KMS-Schlüsseln schützen.
Ihr Compute Engine Service Agent folgt folgendem Format: service-<Project _Number>@compute-system.iam.gserviceaccount.com
. Dieses unterscheidet sich von dem standardmäßigen Compute Engine Service-Konto.
Hinweis:
Dieses Compute Engine Service-Konto wird möglicherweise nicht in den IAM-Berechtigungen der Google-Konsole angezeigt. Verwenden Sie in solchen Fällen den Befehl
gcloud
, wie unter Ressourcen mit Cloud KMS-Schlüsseln schützen beschrieben.
Zuweisen von Berechtigungen zum Citrix DaaS-Konto
Google Cloud KMS-Berechtigungen können auf verschiedene Art und Weise konfiguriert werden. Sie können entweder die KMS-Berechtigungen auf Projektebene oder auf Ressourcenebene bereitstellen. Weitere Informationen finden Sie unter Berechtigungen und Rollen.
Berechtigungen auf Projektebene
Sie können dem Citrix DaaS-Konto Berechtigungen auf Projektebene zum Durchsuchen von Cloud KMS-Ressourcen zuweisen. Erstellen Sie dazu eine benutzerdefinierte Rolle und fügen Sie die folgenden Berechtigungen hinzu:
cloudkms.keyRings.list
cloudkms.keyRings.get
cloudkms.cryptokeys.list
cloudkms.cryptokeys.get
Weisen Sie die benutzerdefinierte Rolle Ihrem Citrix DaaS-Konto zu. Dadurch können Sie regionale Schlüssel im relevanten Projekt im Bestand durchsuchen.
Berechtigungen auf Ressourcenebene
Gehen Sie für die zweite Option – Berechtigungen auf Ressourcenebene – in der Google Cloud-Konsole zu dem cryptoKey
, den Sie für die MCS-Bereitstellung verwenden. Fügen Sie das Citrix DaaS-Konto einem Schlüsselbund oder Schlüssel hinzu, den Sie für die Katalogbereitstellung verwenden.
Tipp:
Mit dieser Option können Sie keine regionalen Schlüssel für Ihr Projekt im Bestand durchsuchen, da das Citrix DaaS-Konto keine Listenberechtigungen auf Projektebene für die Cloud KMS-Ressourcen hat. Sie können jedoch Kataloge mit CMEK bereitstellen, indem Sie die korrekte
cryptoKeyId
in den benutzerdefinierten Eigenschaften fürProvScheme
angeben wie unten beschrieben.
Provisioning mit vom Kunden verwalteten Verschlüsselungsschlüsseln (CMEK) mit benutzerdefinierte Eigenschaften
Geben Sie beim Erstellen Ihres Provisioningschemas über PowerShell eine CryptoKeyId
-Eigenschaft in ProvScheme CustomProperties
an. Beispiel:
'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="<yourCryptoKeyId>" />
</CustomProperties>'
<!--NeedCopy-->
Die cryptoKeyId
muss im folgenden Format angegeben werden:
projectId:location:keyRingName:cryptoKeyName
Wenn Sie beispielsweise den Schlüssel my-example-key
im Schlüsselbund my-example-key-ring
in der Region us-east1
und Projekt-ID my-example-project-1
verwenden möchten, sehen die benutzerdefinierten ProvScheme
-Einstellungen in etwa so aus:
'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:us-east1:my-example-key-ring:my-example-key" />
</CustomProperties>'
<!--NeedCopy-->
Alle zu dem Provisioningschema gehörenden, per MCS bereitgestellten Datenträger und Images verwenden diesen kundenverwalteten Verschlüsselungsschlüssel.
Tipp:
Wenn Sie globale Schlüssel verwenden, muss der Kundeneigenschaftenort anstelle des Namens der Region (im obigen Beispiel us-east1)
global
sein. Beispiel:<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:global:my-example-key-ring:my-example-key" />
.
Wechsel vom Kunden verwalteter Schlüssel
Google Cloud unterstützt keinen Wechsel von Schlüsseln für bestehende persistente Datenträger bzw. Images. Sobald eine Maschine bereitgestellt ist, ist sie an die zum Zeitpunkt ihrer Erstellung verwendete Schlüsselversion gebunden. Es kann jedoch eine neue Schlüsselversion erstellt werden, die dann für neu bereitgestellte Maschinen bzw. Ressourcen verwendet, die erstellt werden, wenn ein Katalog mit einem neuen Masterimage aktualisiert wird.
Wichtige Überlegungen zu Schlüsselbunden
Schlüsselbunde können nicht umbenannt oder gelöscht werden. Außerdem können bei ihrer Konfiguration unerwartete Gebühren anfallen. Wenn Sie einen Schlüsselbund löschen, zeigt Google Cloud eine Fehlermeldung an:
Sorry, you can't delete or rename keys or key rings. We were concerned about the security implications of allowing multiple keys or key versions over time to have the same resource name, so we decided to make names immutable. (And you can't delete them, because we wouldn't be able to do a true deletion--there would still have to be a tombstone tracking that this name had been used and couldn't be reused).
We're aware that this can make things untidy, but we have no immediate plans to change this.
If you want to avoid getting billed for a key or otherwise make it unavailable, you can do so by deleting all the key versions; neither keys nor key rings are billed for, just the active key versions within the keys.
<!--NeedCopy-->
Tipp:
Weitere Informationen finden Sie unter Bearbeiten oder Löschen eines Schlüsselbunds von der Konsole.
Kompatibilität mit einheitlichem Zugriff auf Bucket-Ebene
Citrix DaaS ist kompatibel mit der Richtlinie zum einheitlichen Zugriff auf Bucket-Ebene von Google Cloud. Diese Funktion erweitert die Verwendung der IAM-Richtlinie, die Berechtigungen für ein Dienstkonto erteilt, um die Bearbeitung von Ressourcen (einschließlich Storage-Buckets) zu ermöglichen. Durch einheitlichen Zugriff auf Bucket-Ebene können Sie in Citrix DaaS per Zugriffssteuerungsliste (ACL) den Zugriff auf Storage-Buckets oder darin gespeicherte Objekte zu steuern. Einen Überblick über den einheitlichen Zugriff auf Bucket-Ebene in Google Cloud finden Sie unter Einheitlicher Zugriff auf Bucket-Ebene. Informationen zur Konfiguration finden Sie unter Anfordern des einheitlichen Zugriffs auf Bucket-Ebene.
Service-Endpunkt-URLs
Sie müssen Zugriff auf die folgenden URLs haben:
https://oauth2.googleapis.com
https://cloudresourcemanager.googleapis.com
https://compute.googleapis.com
https://storage.googleapis.com
https://cloudbuild.googleapis.com
Google Cloud-Projekte
Es gibt grundsätzlich zwei Arten von Google Cloud-Projekten:
- Bereitstellungsprojekt: Hier besitzt das aktuelle Administratorkonto die bereitgestellten Maschinen im Projekt. Das Projekt wird auch als “lokales Projekt” bezeichnet.
- Freigegebene-VPC-Projekt: Projekt, in dem im Bereitstellungsprojekt erstellte Maschinen die VPC aus dem Freigegebene-VPC-Projekt verwenden. Das für das Bereitstellungsprojekt verwendete Administratorkonto hat in diesem Projekt eingeschränkte Berechtigungen, spezifisch hat es nur Berechtigungen zur Verwendung der VPC.
Erforderliche GCP-Berechtigungen
Dieser Abschnitt enthält die vollständige Liste der GCP-Berechtigungen. Verwenden Sie sämtliche Berechtigungen, wie im Abschnitt angegeben, um eine ordnungsgemäße Funktionalität sicherzustellen.
Hinweis:
Ab dem 29. April 2024 führt GCP Änderungen am Standardverhalten von Cloud Build Services und der Verwendung von Dienstkonten ein. Weitere Informationen finden Sie unter Änderungen des Cloud Build-Dienstkontos. Ihre bestehenden Google-Projekte mit aktivierter Cloud Build API vor dem 29. April 2024 sind von dieser Änderung nicht betroffen. Wenn Sie jedoch das bestehende Cloud Build Service-Verhalten nach dem 29. April beibehalten möchten, können Sie die Organisationsrichtlinie erstellen oder anwenden, um die Durchsetzung der Einschränkungen zu deaktivieren, bevor Sie die API aktivieren. Wenn Sie die neue Organisationsrichtlinie festlegen, können Sie weiterhin den vorhandenen Berechtigungen in diesem Abschnitt und den Elementen folgen, die als Vor der Änderung des Cloud Build Service-Kontos markiert sind. Wenn nicht, folgen Sie den vorhandenen Berechtigungen und Elementen, die als Nach der Änderung des Cloud Build Service-Kontos markiert sind.
Hostverbindung erstellen
-
Mindestberechtigungen für das Citrix Cloud-Dienstkonto im Bereitstellungsprojekt:
compute.instanceTemplates.list compute.instances.list compute.networks.list compute.projects.get compute.regions.list compute.subnetworks.list compute.zones.list resourcemanager.projects.get <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute Admin
- Cloud Datastore User
-
Weitere für die freigegebene VPC für das Citrix Cloud-Dienstkonto im Freigegebene-VPC-Projekt erforderliche Berechtigungen:
compute.networks.list compute.subnetworks.list resourcemanager.projects.get <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute Network User
Energieverwaltung virtueller Maschinen
Mindestberechtigungen, die für das Citrix Cloud-Dienstkonto im Bereitstellungsprojekt erforderlich sind, wenn Kataloge nur mit Energieverwaltung verwendet werden:
compute.instanceTemplates.list
compute.instances.list
compute.instances.get
compute.instances.reset
compute.instances.resume
compute.instances.start
compute.instances.stop
compute.instances.suspend
compute.networks.list
compute.projects.get
compute.regions.list
compute.subnetworks.list
compute.zones.list
resourcemanager.projects.get
compute.zoneOperations.get
<!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute Admin
- Cloud Datastore User
Erstellen, Aktualisieren oder Löschen von VMs
-
Mindestberechtigungen für das Citrix Cloud-Dienstkonto im Bereitstellungsprojekt:
cloudbuild.builds.create cloudbuild.builds.get cloudbuild.builds.list compute.acceleratorTypes.list compute.diskTypes.get compute.diskTypes.list compute.disks.create compute.disks.createSnapshot compute.disks.delete compute.disks.get compute.disks.list compute.disks.setLabels compute.disks.use compute.disks.useReadOnly compute.firewalls.create compute.firewalls.delete compute.firewalls.list compute.globalOperations.get compute.images.create compute.images.delete compute.images.get compute.images.list compute.images.setLabels compute.images.useReadOnly compute.instanceTemplates.create compute.instanceTemplates.delete compute.instanceTemplates.get compute.instanceTemplates.list compute.instanceTemplates.useReadOnly compute.instances.attachDisk compute.instances.create compute.instances.delete compute.instances.detachDisk compute.instances.get compute.instances.list compute.instances.reset compute.instances.resume compute.instances.setDeletionProtection compute.instances.setLabels compute.instances.setMetadata compute.instances.setServiceAccount compute.instances.setTags compute.instances.start compute.instances.stop compute.instances.suspend compute.machineTypes.get compute.machineTypes.list compute.networks.list compute.networks.updatePolicy compute.nodeGroups.list compute.nodeTemplates.get compute.projects.get compute.regions.list compute.snapshots.create compute.snapshots.delete compute.snapshots.list compute.snapshots.get compute.snapshots.setLabels compute.snapshots.useReadOnly compute.subnetworks.get compute.subnetworks.list compute.subnetworks.use compute.zoneOperations.get compute.zoneOperations.list compute.zones.get compute.zones.list iam.serviceAccounts.actAs resourcemanager.projects.get storage.buckets.create storage.buckets.delete storage.buckets.get storage.buckets.list storage.buckets.update storage.objects.create storage.objects.delete storage.objects.get storage.objects.list compute.networks.get compute.resourcePolicies.use <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute Admin
- Speicher-Administrator
- Cloud Build-Editor
- Dienstkontobenutzer
- Cloud Datastore User
-
Weitere für die freigegebene VPC für das Citrix Cloud-Dienstkonto im Freigegebene-VPC-Projekt erforderliche Berechtigungen zur Erstellung einer Hostingeinheit unter Verwendung der VPC und des Subnetzes aus dem Freigegebene-VPC-Projekt:
compute.firewalls.list compute.networks.list compute.projects.get compute.regions.list compute.subnetworks.get compute.subnetworks.list compute.subnetworks.use compute.zones.list resourcemanager.projects.get <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute Network User
- Cloud Datastore User
-
(Vor der Änderung des Cloud Build Service-Kontos): Mindestberechtigungen für das Cloud Build-Dienstkonto im Bereitstellungprojekt, die vom Google Cloud Build-Dienst beim Herunterladen des Anweisungsdatenträgers auf MCS erfordert werden:
-
(Nach der Änderung des Cloud Build Service-Kontos): Mindestberechtigungen für das Cloud Compute-Dienstkonto im Bereitstellungprojekt, die vom Google Cloud Compute Service beim Herunterladen des Anweisungsdatenträgers auf MCS erfordert werden:
compute.disks.create compute.disks.delete compute.disks.get compute.disks.list compute.disks.setLabels compute.disks.use compute.disks.useReadOnly compute.images.get compute.images.list compute.images.useReadOnly compute.instances.create compute.instances.delete compute.instances.get compute.instances.getSerialPortOutput compute.instances.list compute.instances.setLabels compute.instances.setMetadata compute.instances.setServiceAccount compute.machineTypes.list compute.networks.get compute.networks.list compute.projects.get compute.subnetworks.list compute.subnetworks.use compute.subnetworks.useExternalIp compute.zoneOperations.get compute.zones.list iam.serviceAccounts.actAs logging.logEntries.create pubsub.topics.publish resourcemanager.projects.get source.repos.get source.repos.list storage.buckets.create storage.buckets.get storage.buckets.list storage.objects.create storage.objects.delete storage.objects.get storage.objects.list <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Cloud Build Service-Konto (Nach der Änderung des Cloud Build Service-Kontos ist es das Cloud Compute Service-Konto)
- Compute Instance-Administrator
- Dienstkontobenutzer
-
Mindestberechtigungen für das Cloud Compute-Dienstkonto im Bereitstellungprojekt, die vom Google Cloud Build-Dienst beim Herunterladen des Anweisungsdatenträgers auf MCS erfordert werden:
resourcemanager.projects.get storage.objects.create storage.objects.get storage.objects.list <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute Network User
- Storage Account User
- Cloud Datastore User
- (Vor der Änderung des Cloud Build Service-Kontos): Zusätzliche Berechtigungen für die freigegebene VPC für das Cloud Build-Dienstkonto im Bereitstellungprojekt, die vom Google Cloud Build-Dienst beim Herunterladen des Anweisungsdatenträgers auf MCS erfordert werden:
-
(Nach der Änderung des Cloud Build Service-Kontos): Zusatzberechtigungen für das Cloud Compute-Dienstkonto für Shared VPC im Bereitstellungprojekt, die vom Google Cloud Compute Service beim Herunterladen des Anweisungsdatenträgers auf MCS erfordert werden:
compute.firewalls.list compute.networks.list compute.subnetworks.list compute.subnetworks.use resourcemanager.projects.get <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute Network User
- Storage Account User
- Cloud Datastore User
-
Zusätzliche Berechtigungen für den Cloud-Schlüsselverwaltungsdienst (KMS) für das Citrix Cloud-Dienstkonto im Bereitstellungsprojekt:
cloudkms.cryptoKeys.get cloudkms.cryptoKeys.list cloudkms.keyRings.get cloudkms.keyRings.list <!--NeedCopy-->
Die folgenden von Google definierten Rollen haben die oben aufgeführten Berechtigungen:
- Compute KMS Viewer
Allgemeine Berechtigungen
Im Folgenden sind die Berechtigungen für das Citrix Cloud-Dienstkonto im Provisioning-Projekt für alle in MCS unterstützten Funktionen aufgeführt. Diese Berechtigungen ab jetzt die beste Kompatibilität:
resourcemanager.projects.get
cloudbuild.builds.create
cloudbuild.builds.get
cloudbuild.builds.list
compute.acceleratorTypes.list
compute.diskTypes.get
compute.diskTypes.list
compute.disks.create
compute.disks.createSnapshot
compute.disks.delete
compute.disks.get
compute.disks.setLabels
compute.disks.use
compute.disks.useReadOnly
compute.firewalls.create
compute.firewalls.delete
compute.firewalls.list
compute.globalOperations.get
compute.images.create
compute.images.delete
compute.images.get
compute.images.list
compute.images.setLabels
compute.images.useReadOnly
compute.instanceTemplates.create
compute.instanceTemplates.delete
compute.instanceTemplates.get
compute.instanceTemplates.list
compute.instanceTemplates.useReadOnly
compute.instances.attachDisk
compute.instances.create
compute.instances.delete
compute.instances.detachDisk
compute.instances.get
compute.instances.list
compute.instances.reset
compute.instances.resume
compute.instances.setDeletionProtection
compute.instances.setLabels
compute.instances.setMetadata
compute.instances.setTags
compute.instances.start
compute.instances.stop
compute.instances.suspend
compute.instances.update
compute.instances.updateAccessConfig
compute.instances.updateDisplayDevice
compute.instances.updateSecurity
compute.instances.updateShieldedInstanceConfig
compute.instances.updateShieldedVmConfig
compute.machineTypes.get
compute.machineTypes.list
compute.networks.list
compute.networks.updatePolicy
compute.nodeGroups.list
compute.nodeTemplates.get
compute.projects.get
compute.regions.list
compute.snapshots.create
compute.snapshots.delete
compute.snapshots.list
compute.snapshots.get
compute.snapshots.setLabels
compute.snapshots.useReadOnly
compute.subnetworks.get
compute.subnetworks.list
compute.subnetworks.use
compute.subnetworks.useExternalIp
compute.zoneOperations.get
compute.zoneOperations.list
compute.zones.get
compute.zones.list
resourcemanager.projects.get
storage.buckets.create
storage.buckets.delete
storage.buckets.get
storage.buckets.list
storage.buckets.update
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
cloudkms.cryptoKeys.get
cloudkms.cryptoKeys.list
cloudkms.keyRings.get
cloudkms.keyRings.list
compute.disks.list
compute.instances.setServiceAccount
compute.networks.get
compute.networks.use
compute.networks.useExternalIp
iam.serviceAccounts.actAs
compute.resourcePolicies.use
<!--NeedCopy-->
Weitere Informationen
In diesem Artikel
- Anforderungen
- Aktivieren von Google Cloud-APIs
- Dienstkonten konfigurieren und aktualisieren
- Aktivieren des privaten Google-Zugriffs
- Hinzufügen einer Verbindung
- Vorbereiten einer Master-VM-Instanz und eines nichtflüchtigen Speichers
- Maschinenkatalog erstellen
- Verwalten von Maschinenkatalogen
- Energieverwaltung
- Schutz vor versehentlichem Löschen von Maschinen
- Importieren manuell erstellter Google Cloud-Maschinen
- Freigegebene virtuelle private Cloud
- Aktivieren der Zonenauswahl
- Preview: Verwenden vom Kunden verwalteter Verschlüsselungsschlüssel (CMEK)
- Kompatibilität mit einheitlichem Zugriff auf Bucket-Ebene
- Service-Endpunkt-URLs
- Google Cloud-Projekte
- Erforderliche GCP-Berechtigungen
- Weitere Informationen