本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 自動建立 AppStream 2.0 資源 AWS CloudFormation
由 Ram Kandaswamy 建立 (AWS)
環境:生產 | 技術:最終使用者運算; CloudNative成本管理 DevOps;SaaS | 工作負載:Microsoft |
AWS 服務:Amazon AppStream 2.0; AWS CloudFormation |
Summary
此模式提供程式碼範例和步驟,以使用 AWS CloudFormation 範本在 Amazon Web Services (AWS) Cloud 中自動建立 Amazon AppStream 2.0 資源。此模式會示範如何使用AWS CloudFormation 堆疊自動建立 AppStream 2.0 應用程式資源,包括映像建置器、映像、機群執行個體和堆疊。您可以使用桌面或應用程式交付模式,在 HTML5合規的瀏覽器上將 AppStream 2.0 應用程式串流給最終使用者。
先決條件和限制
先決條件
限制
建立執行個體後,您無法修改與 AppStream 2.0 執行個體相關聯的 AWS Identity and Access Management (IAM) 角色。
建立映像建置器之後,您無法修改 AppStream 2.0 映像建置器執行個體上的屬性 (例如子網路或安全群組)。
架構
下圖說明如何使用 AWS CloudFormation 範本自動建立 AppStream 2.0 資源。
該圖顯示以下工作流程:
您可以根據此模式其他資訊區段中的YAML程式碼建立AWS CloudFormation 範本。
AWS CloudFormation 範本會建立AWS CloudFormation 測試堆疊。
(選用) 您可以使用 AppStream 2.0 建立映像建置器執行個體。
(選用) 您可以使用自訂軟體建立 Windows 映像。
AWS CloudFormation 堆疊會建立 AppStream 2.0 機群執行個體和堆疊。
您可以將 AppStream 2.0 資源部署到 HTML5合規瀏覽器上的最終使用者。
技術堆疊
Amazon AppStream 2.0
AWS CloudFormation
工具
Amazon AppStream 2.0 是一項完全受管的應用程式串流服務,可讓您隨時隨地立即存取桌面應用程式。 AppStream 2.0 可管理託管和執行應用程式所需的AWS資源、自動擴展,以及隨需提供使用者存取權。
AWS CloudFormation 可協助您建立和設定AWS資源模型、快速且一致地佈建資源,以及在整個生命週期中管理資源。您可以使用 範本來描述您的資源及其相依性,並一起啟動和設定這些資源作為堆疊,而不是個別管理資源。您可以在多個AWS帳戶和AWS區域管理和佈建堆疊。
史詩
任務 | 描述 | 所需的技能 |
---|---|---|
安裝自訂軟體並建立映像。 |
注意:考慮使用 Windows AppLocker 功能進一步鎖定映像。 | AWS DevOps、雲端架構師 |
任務 | 描述 | 所需的技能 |
---|---|---|
更新AWS CloudFormation 範本。 |
| AWS 系統管理員、雲端管理員、雲端架構師、一般 AWS、AWS管理員 |
使用 範本建立AWS CloudFormation 堆疊。 |
| 應用程式擁有者、AWS系統管理員、Windows Engineer |
相關資源
參考
教學課程和影片
其他資訊
下列程式碼是AWS CloudFormation 範本的範例,可讓您自動建立 AppStream 2.0 資源。
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