本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 AWS 自動化 AppStream 2.0 資源的建立 CloudFormation
由拉姆·康達斯瓦米(AWS)創建
環境:生產 | 技術:終端使用者運算 CloudNative;成本管理 DevOps;SaaS | 工作量:Microsoft |
AWS 服務:Amazon AppStream 2.0;AWS CloudFormation |
Summary
此模式提供程式碼範例和步驟,以使用 AWS CloudFormation 範本在亞 Amazon Web Services (AWS) 雲端中自動建立 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 資源。
該圖顯示以下工作流程:
![自動建立 AppStream 2.0 資源的工作流程。](images/pattern-img/4f0205f5-5b91-4832-9f0f-2135ae866226/images/d4315625-19e3-47ae-b46c-4645f5fe734e.png)
您可以根據此 CloudFormation 模式的其他資訊部分中的 YAML 程式碼建立 AWS 範本。
AWS CloudFormation 範本會建立 AWS CloudFormation 測試堆疊。
(選擇性) 您可以使用 AppStream 2.0 建立映像產生器執行個體。
(選擇性) 您可以使用自訂軟體建立 Windows 映像檔。
AWS CloudFormation 堆疊會建立 AppStream 2.0 叢集執行個體和堆疊。
您可以在符合 HTML5 標準的瀏覽器上將 AppStream 2.0 資源部署給使用者。
技術堆疊
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 工程師 |
相關資源
參考
教學課程和影片
其他資訊
下列程式碼是 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