기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
RES 지원 Amazon Machine Image(AMIs)를 사용하면 사용자 지정 AMIs에 가상 데스크톱 인스턴스(VDIs)에 대한 RES 종속성을 사전 설치할 수 있습니다. RES 지원 AMIs 사용하면 미리 베이킹된 이미지를 사용하는 VDI 인스턴스의 부팅 시간이 향상됩니다. EC2 Image Builder를 사용하여 AMIs 빌드하고 새 소프트웨어 스택으로 등록할 수 있습니다. Image Builder에 대한 자세한 내용은 Image Builder 사용 설명서를 참조하세요.
시작하기 전에 최신 버전의 RES를 배포해야 합니다.
주제
RES 환경에 액세스하기 위한 IAM 역할 준비
EC2 Image Builder에서 RES 환경 서비스에 액세스하려면 RES-EC2InstanceProfileForImageBuilder라는 IAM 역할을 생성하거나 수정해야 합니다. Image Builder에서 사용할 IAM 역할을 구성하는 방법에 대한 자세한 내용은 Image Builder 사용 설명서의 AWS Identity and Access Management (IAM)을 참조하세요.
역할에는 다음이 필요합니다.
-
Amazon EC2 서비스를 포함하는 신뢰할 수 있는 관계입니다.
-
AmazonSSMManagedInstanceCore 및 EC2InstanceProfileForImageBuilder 정책.
-
배포된 RES 환경에 대한 DynamoDB 및 Amazon S3 액세스가 제한된 사용자 지정 RES 정책입니다.
(이 정책은 고객 관리형 또는 고객 인라인 정책 문서일 수 있습니다.)
-
먼저 IAM -> 정책 -> 정책 생성과 같이 역할에 연결될 새 정책을 생성합니다.
-
정책 편집기에서 JSON을 선택합니다.
-
여기에 표시된 정책을 복사하여 편집기에 붙여넣고, 해당하는 경우 원하는
{AWS-Region}
,{AWS-Account-ID}
및{RES-EnvironmentName}
을 바꿉니다.RES 정책:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "RESDynamoDBAccess", "Effect": "Allow", "Action": "dynamodb:GetItem", "Resource": "arn:aws:dynamodb:
{AWS-Region}
:{AWS-Account-ID}
:table/{RES-EnvironmentName}
.cluster-settings", "Condition": { "ForAllValues:StringLike": { "dynamodb:LeadingKeys": [ "global-settings.gpu_settings.*", "global-settings.package_config.*", "cluster-manager.host_modules.*", "identity-provider.cognito.enable_native_user_login" ] } } }, { "Sid": "RESS3Access", "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::{RES-EnvironmentName}
-cluster-{AWS-Region}
-{AWS-Account-ID}
/idea/vdc/res-ready-install-script-packages/*", "arn:aws:s3:::research-engineering-studio-{AWS-Region}
/host_modules/*" ] } ] } -
다음을 선택하고 이름과 선택적 설명을 제공하여 정책 생성을 완료합니다.
-
역할을 생성하려면 먼저 IAM -> 역할 -> 역할 생성으로 이동합니다.
-
신뢰할 수 있는 엔터티 유형에서 "AWS service"를 선택합니다.
-
서비스 또는 사용 사례 드롭다운에서 EC2를 선택합니다.
-
사용 사례 섹션에서 EC2를 선택한 후 다음을 선택합니다.
-
를 검색한 다음 이전에 생성한 정책의 이름을 선택합니다.
-
다음을 선택하고 이름과 선택적 설명을 제공하여 역할 생성을 완료합니다.
-
새 역할을 선택하고 신뢰 관계가 다음과 일치하는지 확인합니다.
신뢰할 수 있는 관계 엔터티:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
EC2 Image Builder 구성 요소 생성
Image Builder 사용 설명서의 Image Builder 콘솔을 사용하여 구성 요소 생성 지침을 따릅니다.
구성 요소 세부 정보를 입력합니다.
-
유형에서 빌드를 선택합니다.
-
이미지 운영 체제(OS)에서 Linux 또는 Windows를 선택합니다.
-
구성 요소 이름에와 같은 의미 있는 이름을 입력합니다
research-and-engineering-studio-vdi-<operating-system>
. -
구성 요소의 버전 번호를 입력하고 선택적으로 설명을 추가합니다.
-
정의 문서에 다음 정의 파일을 입력합니다. 오류가 발생하면 YAML 파일은 공간에 민감하며 가장 가능성이 높은 원인입니다.
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance # with the License. A copy of the License is located at # # http://www.apache.org/licenses/LICENSE-2.0 # # or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES # OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions # and limitations under the License. name: research-and-engineering-studio-vdi-linux description: An RES EC2 Image Builder component to install required RES software dependencies for Linux VDI. schemaVersion: 1.0 parameters: - AWSAccountID: type: string description: RES Environment AWS Account ID - RESEnvName: type: string description: RES Environment Name - RESEnvRegion: type: string description: RES Environment Region - RESEnvReleaseVersion: type: string description: RES Release Version phases: - name: build steps: - name: PrepareRESBootstrap action: ExecuteBash onFailure: Abort maxAttempts: 3 inputs: commands: - 'mkdir -p /root/bootstrap/logs' - 'mkdir -p /root/bootstrap/latest' - name: DownloadRESLinuxInstallPackage action: S3Download onFailure: Abort maxAttempts: 3 inputs: - source: 's3://{{ RESEnvName }}-cluster-{{ RESEnvRegion }}-{{ AWSAccountID }}/idea/vdc/res-ready-install-script-packages/linux/res_linux_install_{{ RESEnvReleaseVersion }}.tar.gz' destination: '/root/bootstrap/res_linux_install_{{ RESEnvReleaseVersion }}.tar.gz' expectedBucketOwner: '{{ AWSAccountID }}' - name: RunInstallScript action: ExecuteBash onFailure: Abort maxAttempts: 3 inputs: commands: - 'tar -xvf {{ build.DownloadRESLinuxInstallPackage.inputs[0].destination }} -C /root/bootstrap/latest' - '/bin/bash /root/bootstrap/latest/virtual-desktop-host-linux/install.sh -r {{ RESEnvRegion }} -n {{ RESEnvName }} -g NONE' - name: FirstReboot action: Reboot onFailure: Abort maxAttempts: 3 inputs: delaySeconds: 0 - name: RunInstallPostRebootScript action: ExecuteBash onFailure: Abort maxAttempts: 3 inputs: commands: - '/bin/bash /root/bootstrap/latest/virtual-desktop-host-linux/install_post_reboot.sh' - name: SecondReboot action: Reboot onFailure: Abort maxAttempts: 3 inputs: delaySeconds: 0
-
선택적 태그를 생성하고 구성 요소 생성을 선택합니다.
EC2 Image Builder 레시피 준비
EC2 Image Builder 레시피는 새 이미지를 생성하기 위한 출발점으로 사용할 기본 이미지를 정의합니다. 새 이미지를 정의하는 동시에 이미지를 사용자 정의하고 모든 것이 예상대로 작동하는지 확인하기 위해 사용자가 추가하는 구성 요소 집합도 정의합니다. 레시피를 생성하거나 수정하여 필요한 RES 소프트웨어 종속성을 사용하여 대상 AMI를 구성해야 합니다. 레시피에 대한 자세한 내용은 레시피 관리를 참조하세요.
RES는 다음 이미지 운영 체제를 지원합니다.
-
Amazon Linux 2(x86 및 ARM64)
-
Ubuntu 22.04.3(x86)
-
RHEL 8(x86) 및 9(x86)
-
Windows 2019, 2022(x86)
-
에서 EC2 Image Builder 콘솔을 엽니다https://console.aws.amazon.com/imagebuilder
. -
저장된 리소스에서 이미지 레시피를 선택합니다.
-
이미지 레시피 생성을 선택합니다.
-
고유한 이름과 버전 번호를 입력합니다.
-
RES에서 지원하는 기본 이미지를 선택합니다.
-
인스턴스 구성에서 SSM 에이전트가 사전 설치되지 않은 경우 해당 에이전트를 설치합니다. 사용자 데이터 및 기타 필요한 사용자 데이터에 정보를 입력합니다.
참고
SSM 에이전트를 설치하는 방법에 대한 자세한 내용은 다음을 참조하세요.
-
Linux 기반 레시피의 경우 Amazon 관리형
aws-cli-version-2-linux
빌드 구성 요소를 레시피에 추가합니다. RES 설치 스크립트는를 AWS CLI 사용하여 DynamoDB 클러스터 설정의 구성 값에 대한 VDI 액세스를 제공합니다. Windows에는이 구성 요소가 필요하지 않습니다. -
Linux 또는 Windows 환경을 위해 생성된 EC2 Image Builder 구성 요소를 추가하고 필요한 파라미터 값을 입력합니다. AWSAccountID, RESEnvName, RESEnvRegion 및 RESEnvReleaseVersion 파라미터는 필수 입력입니다.
중요
Linux 환경의 경우
aws-cli-version-2-linux
먼저 빌드 구성 요소가 추가된 순서대로 이러한 구성 요소를 추가해야 합니다. -
(권장) Amazon 관리형
simple-boot-test-<linux-or-windows>
테스트 구성 요소를 추가하여 AMI를 시작할 수 있는지 확인합니다. 이는 최소 권장 사항입니다. 요구 사항에 맞는 다른 테스트 구성 요소를 선택할 수 있습니다. -
필요한 경우 선택적 섹션을 작성하고 원하는 다른 구성 요소를 추가한 다음 레시피 생성을 선택합니다.
EC2 Image Builder 인프라 구성
인프라 구성을 사용하여 Image Builder가 Image Builder 이미지를 빌드하고 테스트하는 데 사용하는 Amazon EC2 인프라를 지정할 수 있습니다. RES와 함께 사용하려면 새 인프라 구성을 생성하거나 기존 인프라 구성을 사용하도록 선택할 수 있습니다.
-
새 인프라 구성을 생성하려면 인프라 구성 생성을 참조하세요.
-
기존 인프라 구성을 사용하려면 인프라 구성을 업데이트합니다.
Image Builder 인프라를 구성하려면:
-
IAM 역할에에서 이전에 구성한 역할을 입력합니다RES 환경에 액세스하기 위한 IAM 역할 준비.
-
인스턴스 유형에서 메모리가 4GB 이상인 유형을 선택하고 선택한 기본 AMI 아키텍처를 지원합니다. Amazon EC2 인스턴스 유형을 참조하세요
. -
VPC, 서브넷 및 보안 그룹의 경우 소프트웨어 패키지를 다운로드하려면 인터넷 액세스를 허용해야 합니다. 또한 RES 환경의
cluster-settings
DynamoDB 테이블 및 Amazon S3 클러스터 버킷에 대한 액세스가 허용되어야 합니다.
Image Builder 이미지 파이프라인 구성
Image Builder 이미지 파이프라인은 기본 이미지, 빌드 및 테스트를 위한 구성 요소, 인프라 구성 및 배포 설정을 수집합니다. RES 지원 AMIs에 대한 이미지 파이프라인을 구성하려면 새 파이프라인을 생성하거나 기존 파이프라인을 사용하도록 선택할 수 있습니다. 자세한 내용은 Image Builder 사용 설명서의 AMI 이미지 파이프라인 생성 및 업데이트를 참조하세요.
-
에서 Image Builder 콘솔을 엽니다https://console.aws.amazon.com/imagebuilder
. -
탐색 창에서 이미지 파이프라인을 선택합니다.
-
이미지 파이프라인 생성을 선택합니다.
-
고유한 이름, 선택적 설명, 일정 및 빈도를 입력하여 파이프라인 세부 정보를 지정합니다.
-
레시피 선택에서 기존 레시피 사용을 선택하고에서 생성된 레시피를 선택합니다EC2 Image Builder 레시피 준비. 레시피 세부 정보가 올바른지 확인합니다.
-
이미지 생성 프로세스 정의에서 사용 사례에 따라 기본 또는 사용자 지정 워크플로를 선택합니다. 대부분의 경우 기본 워크플로로 충분합니다. 자세한 내용은 EC2 Image Builder 파이프라인의 이미지 워크플로 구성을 참조하세요.
-
인프라 구성 정의에서 기존 인프라 구성 선택을 선택하고에서 생성된 인프라 구성을 선택합니다EC2 Image Builder 인프라 구성. 인프라 세부 정보가 올바른지 확인합니다.
-
배포 설정 정의에서 서비스 기본값을 사용하여 배포 설정 생성을 선택합니다. 출력 이미지는 RES 환경 AWS 리전 과 동일한에 있어야 합니다. 서비스 기본값을 사용하면 Image Builder가 사용되는 리전에서 이미지가 생성됩니다.
-
파이프라인 세부 정보를 검토하고 파이프라인 생성을 선택합니다.
Image Builder 이미지 파이프라인 실행
구성된 출력 이미지를 생성하려면 이미지 파이프라인을 시작해야 합니다. 이미지 레시피의 구성 요소 수에 따라 빌드 프로세스에 최대 1시간이 걸릴 수 있습니다.
이미지 파이프라인을 실행하려면:
-
이미지 파이프라인에서에서 생성된 파이프라인을 선택합니다Image Builder 이미지 파이프라인 구성.
-
작업에서 파이프라인 실행을 선택합니다.
RES에 새 소프트웨어 스택 등록
-
의 지침에 따라 소프트웨어 스택을 등록소프트웨어 스택(AMIs)합니다.
-
AMI ID에에 내장된 출력 이미지의 AMI ID를 입력합니다Image Builder 이미지 파이프라인 실행.