View a markdown version of this page

를 사용하여 Amazon WorkSpaces 애플리케이션 리소스 생성 자동화 AWS CloudFormation - 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

를 사용하여 Amazon WorkSpaces 애플리케이션 리소스 생성 자동화 AWS CloudFormation

Ram Kandaswamy, Amazon Web Services

요약

이 패턴은 AWS CloudFormation 템플릿을 AWS 클라우드 사용하여에서 Amazon WorkSpaces 애플리케이션 리소스 생성을 자동화하는 코드 샘플과 단계를 제공합니다. 이 패턴은 CloudFormation 스택을 사용하여 이미지 빌더, 이미지, 플릿 인스턴스 및 스택을 포함한 WorkSpaces 애플리케이션 리소스 생성을 자동화하는 방법을 보여줍니다. 데스크톱 또는 애플리케이션 전송 모드를 사용하여 HTML5-compliant 브라우저에서 최종 사용자에게 WorkSpaces 애플리케이션 애플리케이션을 스트리밍할 수 있습니다.

사전 조건 및 제한 사항

사전 조건 

제한 사항

  • WorkSpaces 애플리케이션 인스턴스가 생성된 후에는 해당 인스턴스와 연결된 AWS Identity and Access Management (IAM) 역할을 수정할 수 없습니다.

  • 해당 이미지 빌더가 생성된 후에는 WorkSpaces Applications 이미지 빌더 인스턴스의 속성(예: 서브넷 또는 보안 그룹)을 수정할 수 없습니다.

아키텍처

다음 다이어그램은 CloudFormation 템플릿을 사용하여 WorkSpaces 애플리케이션 리소스 생성을 자동화하는 방법을 보여줍니다.

WorkSpaces 애플리케이션 리소스를 자동으로 생성하기 위한 워크플로입니다.

이 다이어그램은 다음 워크플로를 보여줍니다.

  1. 이 패턴의 추가 정보 섹션에 있는 YAML 코드를 기반으로 CloudFormation 템플릿을 생성합니다.

  2. CloudFormation 템플릿은 CloudFormation 테스트 스택을 생성합니다.

    1. (선택 사항) WorkSpaces 애플리케이션을 사용하여 이미지 빌더 인스턴스를 생성합니다.

    2. (선택 사항) 사용자 지정 소프트웨어를 사용하여 Windows 이미지를 생성합니다.

  3. CloudFormation 스택은 WorkSpaces 애플리케이션 플릿 인스턴스 및 스택을 생성합니다.

  4. WorkSpaces 애플리케이션 리소스를 HTML5-compliant 브라우저의 최종 사용자에게 배포합니다.

도구

  • Amazon WorkSpaces 애플리케이션은 어디서나 데스크톱 애플리케이션에 즉시 액세스할 수 있는 완전 관리형 애플리케이션 스트리밍 서비스입니다. WorkSpaces 애플리케이션은 애플리케이션을 호스팅 및 실행하는 데 필요한 AWS 리소스를 관리하고, 자동으로 확장되며, 온디맨드 방식으로 사용자에게 액세스 권한을 제공합니다.

  • AWS CloudFormation를 사용하면 AWS 리소스를 모델링 및 설정하고, 리소스를 빠르고 일관되게 프로비저닝하고, 수명 주기 동안 관리할 수 있습니다. 템플릿을 사용하여 리소스와 해당 종속성을 설명하고 리소스를 개별적으로 관리하는 대신 스택으로 함께 시작 및 구성할 수 있습니다. 여러 및에서 스택을 관리하고 프로비저닝할 수 AWS 계정 있습니다 AWS 리전.

모범 사례

  • 이미지 빌더에 대한 네트워크 액세스를 올바르게 구성 - 아웃바운드 전용 인터넷 액세스를 위해 NAT 게이트웨이를 사용하여 적절한 인터넷 액세스가 가능한 Virtual Private Cloud(VPC) 서브넷에서 이미지 빌더를 시작합니다.

    이미지를 생성하기 전에 필요한 리소스(예: 애플리케이션 서버, 데이터베이스 및 라이선스 서버)에 대한 네트워크 연결을 테스트합니다. VPC 라우팅 테이블이 필요한 모든 네트워크 리소스에 대한 연결을 허용하는지 확인합니다. 자세한 내용은 WorkSpaces 애플리케이션 설명서의 인터넷 액세스를 참조하세요.

  • 서비스 할당량을 기준으로 플릿 용량을 사전에 모니터링 - WorkSpaces 애플리케이션 인스턴스 유형 및 크기 할당량은 당 AWS 계정, 당입니다 AWS 리전. 동일한 리전에 동일한 인스턴스 유형과 크기를 사용하는 플릿이 여러 개 있는 경우 해당 리전 내 모든 플릿의 총 인스턴스 수는 할당량보다 작거나 같아야 합니다. 자세한 내용은 WorkSpaces 애플리케이션 설명서의 플릿 문제 해결을 참조하세요.

  • 플릿 배포 전에 Image Builder 테스트 모드에서 애플리케이션 테스트 - 이미지를 생성하고 플릿에 배포하기 전에 항상 Image Builder 테스트 모드에서 애플리케이션을 검증합니다. 테스트 모드는 최종 사용자가 플릿 인스턴스에 대해 갖는 제한된 권한을 시뮬레이션합니다. 자세한 내용은 WorkSpaces 애플리케이션 설명서의 이미지 빌더 문제 해결을 참조하세요.

에픽

작업설명필요한 기술

맞춤형 소프트웨어를 설치하고 이미지를 생성하세요.

  1. 이미지 빌더를 시작하고 관련 인스턴스 유형, 서브넷, 보안 그룹 등을 선택합니다.

  2. 인스턴스에 연결하는 동안 관리자 모드를 사용합니다.

  3. 이미지 어시스턴트 또는 PowerShell 스크립트를 사용하여 사용자 지정 소프트웨어에 대한 새 Windows 이미지를 생성합니다.

참고

이미지를 추가로 잠그려면 Windows AppLocker 기능을 사용하는 것이 좋습니다.

AWS DevOps, 클라우드 아키텍트
작업설명필요한 기술

CloudFormation 템플릿을 업데이트합니다.

  1. 이 패턴의 추가 정보 섹션에 있는 코드를 YAML 파일로 사용합니다.

  2. 사용자 환경의 파라미터에 필요한 값으로 YAML 파일을 업데이트합니다.

AWS 시스템 관리자, 클라우드 관리자, 클라우드 아키텍트, 일반 AWS, AWS 관리자

템플릿을 사용하여 CloudFormation 스택을 생성합니다.

  1. 에 로그인 AWS Management Console 하고 CloudFormation 콘솔을 엽니다.

  2. 탐색 창에서 스택을 선택합니다.

  3. 스택 생성을 선택한 다음 새 리소스 사용(표준)을 선택합니다.

  4. 사전 조건 - 템플릿 준비 섹션에서 템플릿 준비 완료를 선택합니다.

  5. 템플릿 지정 섹션에서 템플릿 파일 업로드를 선택합니다.

  6. 파일 선택을 선택한 다음 업데이트된 CloudFormation 템플릿을 선택합니다.

  7. 마법사의 나머지 단계를 완료하여 스택을 생성합니다.

앱 소유자, AWS 시스템 관리자, Windows 엔지니어

문제 해결

문제Solution

다양한 문제

자세한 내용은 WorkSpaces 애플리케이션 설명서의 문제 해결을 참조하세요.

관련 리소스

참조

자습서 및 동영상

추가 정보

다음 코드는 WorkSpaces 애플리케이션 리소스를 자동으로 생성하는 데 사용할 수 있는 CloudFormation 템플릿의 예입니다.

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