Automatisieren Sie die Erstellung von Amazon WorkSpaces Applications-Ressourcen mit AWS CloudFormation - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Automatisieren Sie die Erstellung von Amazon WorkSpaces Applications-Ressourcen mit AWS CloudFormation

Ram Kandaswamy, Amazon Web Services

Zusammenfassung

Dieses Muster enthält Codebeispiele und Schritte zur Automatisierung der Erstellung von Amazon WorkSpaces Applications-Ressourcen AWS Cloud mithilfe einer AWS CloudFormationVorlage. Das Muster zeigt Ihnen, wie Sie mithilfe eines CloudFormation Stacks die Erstellung Ihrer WorkSpaces Anwendungsressourcen, einschließlich eines Image Builders, eines Images, einer Flotteninstanz und eines Stacks, automatisieren können. Sie können Ihre WorkSpaces Anwendungsanwendung in einem HTML5 -kompatiblen Browser an Endbenutzer streamen, indem Sie entweder den Desktop- oder den Anwendungsbereitstellungsmodus verwenden.

Voraussetzungen und Einschränkungen

Voraussetzungen

Einschränkungen

  • Sie können die einer WorkSpaces Anwendungsinstanz zugeordnete AWS Identity and Access Management(IAM-) Rolle nicht mehr ändern, nachdem diese Instanz erstellt wurde.

  • Sie können keine Eigenschaften (wie das Subnetz oder die Sicherheitsgruppe) auf der WorkSpaces Applications Image Builder-Instanz ändern, nachdem dieser Image Builder erstellt wurde.

Architektur

Das folgende Diagramm zeigt, wie Sie die Erstellung von WorkSpaces Anwendungsressourcen mithilfe einer CloudFormation Vorlage automatisieren können.

Arbeitsablauf für die automatische Erstellung von WorkSpaces Anwendungsressourcen.

Das Diagramm zeigt den folgenden Workflow:

  1. Sie erstellen eine CloudFormation Vorlage auf der Grundlage des YAML-Codes im Abschnitt Zusätzliche Informationen dieses Musters.

  2. Die CloudFormation Vorlage erstellt einen CloudFormation Teststapel.

    1. (Optional) Sie erstellen eine Image Builder-Instanz mithilfe von WorkSpaces Applications.

    2. (Optional) Sie erstellen ein Windows-Abbild mithilfe Ihrer benutzerdefinierten Software.

  3. Der CloudFormation Stack erstellt eine WorkSpaces Applications-Flotteninstanz und einen Stack.

  4. Sie stellen Ihre WorkSpaces Anwendungsressourcen für Endbenutzer in einem HTML5 -kompatiblen Browser bereit.

Tools

  • Amazon WorkSpaces Applications ist ein vollständig verwalteter Anwendungs-Streaming-Service, mit dem Sie von überall aus sofort auf Ihre Desktop-Anwendungen zugreifen können. WorkSpaces Applications verwaltet die AWS Ressourcen, die für das Hosten und Ausführen Ihrer Anwendungen erforderlich sind, skaliert automatisch und bietet Ihren Benutzern bei Bedarf Zugriff.

  • AWS CloudFormationhilft Ihnen dabei, Ihre AWS Ressourcen zu modellieren und einzurichten, sie schnell und konsistent bereitzustellen und sie während ihres gesamten Lebenszyklus zu verwalten. Sie können eine Vorlage verwenden, um Ihre Ressourcen und ihre Abhängigkeiten zu beschreiben und sie zusammen als Stapel zu starten und zu konfigurieren, anstatt Ressourcen einzeln zu verwalten. Sie können Stacks über mehrere und hinweg verwalten AWS-Konten und AWS-Regionen bereitstellen.

Best Practices

  • Netzwerkzugriff für Image Builder korrekt konfigurieren — Starten Sie Image Builder in Virtual Private Cloud (VPC) -Subnetzen mit ordnungsgemäßem Internetzugang, indem Sie ein NAT-Gateway für den ausschließlich ausgehenden Internetzugang verwenden.

    Testen Sie die Netzwerkkonnektivität zu den erforderlichen Ressourcen (wie Anwendungsservern, Datenbanken und Lizenzservern), bevor Sie Images erstellen. Stellen Sie sicher, dass VPC-Routing-Tabellen Verbindungen zu allen erforderlichen Netzwerkressourcen zulassen. Weitere Informationen finden Sie in der WorkSpaces Anwendungsdokumentation unter Internetzugang.

  • Proaktive Überwachung der Flottenkapazität anhand der Servicekontingente — Die Kontingente für WorkSpaces Anwendungsinstanzen und -größen gelten pro AWS-Konto, pro AWS-Region. Wenn Sie mehrere Flotten in derselben Region haben, die denselben Instance-Typ und dieselbe Größe verwenden, muss die Gesamtzahl der Instances in allen Flotten in dieser Region kleiner oder gleich dem geltenden Kontingent sein. Weitere Informationen finden Sie unter Problembehandlung bei Flotten in der WorkSpaces Anwendungsdokumentation.

  • Testen Sie Anwendungen vor der Flottenbereitstellung im Image Builder Builder-Testmodus — Überprüfen Sie Anwendungen immer im Image Builder Builder-Testmodus, bevor Sie Images erstellen und für Flotten bereitstellen. Der Testmodus simuliert die eingeschränkten Berechtigungen, die Endbenutzer für Flotteninstanzen haben. Weitere Informationen finden Sie unter Problembehandlung bei Image Builders in der WorkSpaces Anwendungsdokumentation.

Epen

AufgabeDescriptionErforderliche Fähigkeiten

Installieren Sie benutzerdefinierte Software und erstellen Sie ein Image.

  1. Starten Sie Image Builder und wählen Sie die entsprechenden Instanztypen, das Subnetz, die Sicherheitsgruppe usw. aus.

  2. Verwenden Sie den Admin-Modus, während Sie eine Verbindung zur Instanz herstellen.

  3. Verwenden Sie den Image-Assistenten oder ein PowerShell Skript, um ein neues Windows-Image für Ihre benutzerdefinierte Software zu erstellen.

Anmerkung

Erwägen Sie, die AppLocker Windows-Funktion zu verwenden, um das Bild weiter zu sperren.

AWS DevOps, Cloud-Architekt
AufgabeDescriptionErforderliche Fähigkeiten

Aktualisieren Sie die CloudFormation Vorlage.

  1. Verwenden Sie den Code im Abschnitt Zusätzliche Informationen dieses Musters als YAML-Datei.

  2. Aktualisieren Sie die YAML-Datei mit den erforderlichen Werten für die Parameter in Ihrer Umgebung.

AWS-Systemadministrator, Cloud-Administrator, Cloud-Architekt, Allgemeines AWS, AWS-Administrator

Erstellen Sie mithilfe der Vorlage einen CloudFormation Stack.

  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die CloudFormation Konsole.

  2. Wählen Sie im Navigationsbereich Stacks aus.

  3. Wählen Sie Stack erstellen und dann Mit neuen Ressourcen (Standard) aus.

  4. Wählen Sie im Abschnitt Voraussetzung — Vorlage vorbereiten die Option Vorlage ist bereit aus.

  5. Wählen Sie im Abschnitt Vorlage angeben die Option Vorlagendatei hochladen aus.

  6. Wählen Sie Datei auswählen und wählen Sie dann Ihre aktualisierte CloudFormation Vorlage aus.

  7. Führen Sie die restlichen Schritte im Assistenten aus, um Ihren Stack zu erstellen.

App-Besitzer, AWS-Systemadministrator, Windows Engineer

Fehlerbehebung

ProblemLösung

Verschiedene Probleme

Weitere Informationen finden Sie in der WorkSpaces Anwendungsdokumentation unter Problembehandlung.

Zugehörige Ressourcen

Referenzen

Tutorials und Videos

Zusätzliche Informationen

Der folgende Code ist ein Beispiel für eine CloudFormation Vorlage, mit der Sie automatisch WorkSpaces Anwendungsressourcen erstellen können.

AWSTemplateFormatVersion: 2010-09-09 Parameters: SubnetIds: Type: 'List<AWS::EC2::Subnet::Id>' testSecurityGroup: Type: 'AWS::EC2::SecurityGroup::Id' ImageName: Type: String Resources: AppStreamFleet: Type: 'AWS::AppStream::Fleet' Properties: ComputeCapacity: DesiredInstances: 5 InstanceType: stream.standard.medium Name: appstream-test-fleet DisconnectTimeoutInSeconds: 1200 FleetType: ON_DEMAND IdleDisconnectTimeoutInSeconds: 1200 ImageName: !Ref ImageName MaxUserDurationInSeconds: 345600 VpcConfig: SecurityGroupIds: - !Ref testSecurityGroup SubnetIds: !Ref SubnetIds AppStreamStack: Type: 'AWS::AppStream::Stack' Properties: Description: AppStream stack for test DisplayName: AppStream test Stack Name: appstream-test-stack StorageConnectors: - ConnectorType: HOMEFOLDERS UserSettings: - Action: CLIPBOARD_COPY_FROM_LOCAL_DEVICE Permission: ENABLED - Action: CLIPBOARD_COPY_TO_LOCAL_DEVICE Permission: ENABLED - Action: FILE_DOWNLOAD Permission: ENABLED - Action: PRINTING_TO_LOCAL_DEVICE Permission: ENABLED AppStreamFleetAssociation: Type: 'AWS::AppStream::StackFleetAssociation' Properties: FleetName: appstream-test-fleet StackName: appstream-test-stack DependsOn: - AppStreamFleet - AppStreamStack