

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

# 제품 배포
<a name="deploy-the-product"></a>

**참고**  
이 제품은 [AWS CloudFormation 템플릿과 스택을 ](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-whatis-concepts.html) 사용하여 배포를 자동화합니다. CloudFormation 템플릿은이 제품에 포함된 AWS 리소스와 해당 속성을 설명합니다. CloudFormation 스택은 템플릿에 설명된 리소스를 프로비저닝합니다.

제품을 시작하기 전에이 가이드의 앞부분에서 설명한 [비용](plan-your-deployment.md#plan-your-deployment-cost), [아키텍처](architecture-overview.md), [ 네트워크 보안](plan-your-deployment.md#plan-your-deployment-security) 및 기타 고려 사항을 검토하세요.

**Topics**
+ [사전 조건](prerequisites.md)
+ [외부 리소스 생성](create-external-resources.md)
+ [1단계: 제품 시작](launch-the-product.md)
+ [2단계: 처음 로그인](first-sign-in.md)

# 사전 조건
<a name="prerequisites"></a>

**Topics**
+ [관리 사용자를 AWS 계정 사용하여 생성](#aws-account)
+ [Amazon EC2 SSH 키 페어 생성](#create-ssh-key-pair)
+ [서비스 할당량 증가](#increase-service-quotas)
+ [Cognito 사용자 풀 생성(선택 사항)](#create-cognito-user-pool)
+ [사용자 지정 도메인 생성(선택 사항)](#create-public-domain)
+ [도메인 생성(GovCloud만 해당)](#create-domain-govcloud)
+ [외부 리소스 제공](#external-resources)
+ [환경에서 LDAPS 구성(선택 사항)](#configure-ldaps)
+ [Microsoft Active Directory에 대한 서비스 계정 설정](#service-account-ms-ad)
+ [프라이빗 VPC 구성(선택 사항)](#private-vpc)

## 관리 사용자를 AWS 계정 사용하여 생성
<a name="aws-account"></a>

관리 사용자가 AWS 계정 있는이 있어야 합니다.

1. [https://portal.aws.amazon.com/billing/signup](https://portal.aws.amazon.com/billing/signup)을 엽니다.

1. 온라인 지시 사항을 따르세요.

   등록 절차 중 전화 또는 텍스트 메시지를 받고 전화 키패드로 확인 코드를 입력하는 과정이 있습니다.

   에 가입하면 AWS 계정*AWS 계정 루트 사용자*이 생성됩니다. 루트 사용자에게는 계정의 모든 AWS 서비스 및 리소스에 액세스할 권한이 있습니다. 보안 모범 사례는 사용자에게 관리 액세스 권한을 할당하고, 루트 사용자만 사용하여 [루트 사용자 액세스 권한이 필요한 작업](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)을 수행하는 것입니다.

## Amazon EC2 SSH 키 페어 생성
<a name="create-ssh-key-pair"></a>

Amazon EC2 SSH 키 페어가 없는 경우 하나를 생성해야 합니다. 자세한 내용은 *Amazon EC2 사용 설명서*의 [Amazon EC2를 사용하여 키 페어 생성](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html)을 참조하세요.

## 서비스 할당량 증가
<a name="increase-service-quotas"></a>

가장 좋은 방법은 다음에 대한 [서비스 할당량을 늘리는 것입니다](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html).
+ [ Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html)
  + NAT 게이트웨이당 탄력적 IP 주소 할당량을 5개에서 8개로 늘립니다.
  + 가용 영역당 NAT 게이트웨이를 5개에서 10개로 늘립니다.
+ [ Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
  + EC2-VPC 탄력적 IPs에서 10개로 늘립니다.

 AWS 계정에는 각 AWS 서비스에 대한 기본 할당량이 있습니다. 다르게 표시되지 않는 한 리전별로 각 할당량이 적용됩니다. 일부 할당량에 대한 증가를 요청할 수 있으며 다른 할당량은 늘릴 수 없습니다. 자세한 내용은 [이 제품의 AWS 서비스에 대한 할당량](plan-your-deployment.md#quotas-for-aws-services-in-this-product) 단원을 참조하십시오.

## Cognito 사용자 풀 생성(선택 사항)
<a name="create-cognito-user-pool"></a>

RES를 설치할 때 사용자 및 클라이언트 인증을 위해 기존 Cognito 사용자 풀을 가져올 수 있습니다. 그렇지 않으면 RES는 새 Cognito 사용자 풀을 자동으로 생성합니다. 기존 사용자 풀에는 다음과 같은 가입 사용자 지정 속성이 있어야 합니다.


| 이름 | Type | 최소값/길이 | 최대 값/길이 | Mutable | 
| --- | --- | --- | --- | --- | 
| 사용자 지정:aws\$1region | 문자열 |  |  | TRUE | 
| 사용자 지정:클러스터\$1이름 | 문자열 |  |  | TRUE | 
| 사용자 지정:password\$1last\$1set  | 숫자 |  |  | TRUE | 
| 사용자 지정:password\$1max\$1age | 숫자 |  |  | TRUE | 
| 사용자 지정:uid | 숫자 | 2000200001 | 4294967294 | TRUE | 

## 사용자 지정 도메인 생성(선택 사항)
<a name="create-public-domain"></a>

사용자에게 친숙한 URL의 경우 제품에 사용자 지정 도메인을 사용하는 것이 가장 좋습니다. 사용자 지정 도메인을 제공하고 *선택적으로* 해당 도메인에 대한 인증서를 제공할 수 있습니다.

외부 리소스 스택에는 사용자가 제공하는 사용자 지정 도메인에 대한 인증서를 생성하는 프로세스가 있습니다. 도메인이 있고 외부 리소스 스택의 인증서 생성 기능을 사용하려는 경우이 단계를 건너뛸 수 있습니다.

또는 다음 단계에 따라 Amazon Route 53을 사용하여 도메인을 등록하고를 사용하여 도메인의 인증서를 가져옵니다 AWS Certificate Manager.

1. 지침에 따라 Route 53에 [도메인을 등록](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-register.html#register_new_console)합니다. 확인 이메일을 받게 됩니다.

1. 도메인의 호스팅 영역을 검색합니다. Route 53는 이를 자동으로 생성합니다.

   1. Route 53 콘솔을 엽니다.

   1. 왼쪽 탐색 창에서 **호스팅 영역을** 선택합니다.

   1. 도메인 이름에 대해 생성된 호스팅 영역을 열고 **호스팅 영역 ID**를 복사합니다.

1. 를 AWS Certificate Manager 열고 다음 단계에 따라 [도메인 인증서를 요청합니다](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html). 솔루션을 배포하려는 리전에 있는지 확인합니다.

1. 탐색에서 **인증서 나열**을 선택하고 인증서 요청을 찾습니다. 요청은 보류 중이어야 합니다.

1. **인증서 ID**를 선택하여 요청을 엽니다.

1. **도메인** 섹션에서 ** Route 53에서 레코드 생성을** 선택합니다. 요청을 처리하는 데 약 10분이 걸립니다.

1. 인증서가 발급되면 **인증서 상태** 섹션에서 **ARN**을 복사합니다.

## 도메인 생성(GovCloud만 해당)
<a name="create-domain-govcloud"></a>

 AWS GovCloud 리전에 배포하고 Research and Engineering Studio용 사용자 지정 도메인을 사용하는 경우 이러한 사전 조건 단계를 완료해야 합니다.

1. 퍼블릭 호스팅 도메인이 생성된 상용 파티션 AWS 계정에 [ 인증서 CloudFormation 스택](https://console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/quickcreate?templateURL=https://s3.amazonaws.com/aws-hpc-recipes/main/recipes/security/public_certs/assets/main.yaml)을 배포합니다.

1. **인증서 CloudFormation 출력**에서 및 `CertificateARN`를 찾아 기록해 둡니다`PrivateKeySecretARN`.

1. GovCloud 파티션 계정에서 `CertificateARN` 출력 값을 사용하여 보안 암호를 생성합니다. 새 보안 암호 ARN을 기록하고가 보안 암호 값에 액세스할 `vdc-gateway` 수 있도록 보안 암호에 두 개의 태그를 추가합니다.

   1. res:ModuleName = virtual-desktop-controller 

   1. res:EnvironmentName = [환경 이름](res-demo일 수 있음) 

1. GovCloud 파티션 계정에서 `PrivateKeySecretARN` 출력 값을 사용하여 보안 암호를 생성합니다. 새 보안 암호 ARN을 기록하고가 보안 암호 값에 액세스할 `vdc-gateway` 수 있도록 보안 암호에 두 개의 태그를 추가합니다.

   1. res:ModuleName = virtual-desktop-controller

   1. res:EnvironmentName = [환경 이름](res-demo일 수 있음)

## 외부 리소스 제공
<a name="external-resources"></a>

의 Research and Engineering Studio는 배포 시 다음과 같은 외부 리소스가 존재할 것으로 AWS 예상합니다.
+ **네트워킹(VPC, 퍼블릭 서브넷 및 프라이빗 서브넷)**

  여기에서 RES 환경, Active Directory(AD) 및 공유 스토리지를 호스팅하는 데 사용되는 EC2 인스턴스를 실행합니다.
+ **스토리지(Amazon EFS)**

  스토리지 볼륨에는 가상 데스크톱 인프라(VDI)에 필요한 파일과 데이터가 포함됩니다.
+ **디렉터리 서비스(AWS Directory Service for Microsoft Active Directory) **

  디렉터리 서비스는 사용자를 RES 환경에 인증합니다.
+ **키-값 페어(사용자 이름, 암호) 형식의 Active Directory 서비스 계정 사용자 이름과 암호가 포함된 보안 암호**

  Research and Engineering Studio는를 사용하여 서비스 계정 암호를 포함하여 사용자가 제공하는 [보안 암호](secrets-management.md)에 액세스합니다[AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html).

**주의**  
동기화하려는 모든 Active Directory(AD) 사용자에게 유효한 이메일 주소를 제공해야 합니다.

**작은 정보**  
데모 환경을 배포하고 이러한 외부 리소스를 사용할 수 없는 경우 AWS 고성능 컴퓨팅 레시피를 사용하여 외부 리소스를 생성할 수 있습니다. 계정에 리소스를 배포[외부 리소스 생성](create-external-resources.md)하려면 다음 섹션인를 참조하세요.  
an AWS GovCloud 리전의 데모 배포의 경우의 사전 조건 단계를 완료해야 합니다[도메인 생성(GovCloud만 해당)](#create-domain-govcloud).

## 환경에서 LDAPS 구성(선택 사항)
<a name="configure-ldaps"></a>

환경에서 LDAPS 통신을 사용하려는 경우 다음 단계를 완료하여 인증서를 생성하고 AWS Managed Microsoft AD (AD) 도메인 컨트롤러에 연결하여 AD와 RES 간에 통신을 제공해야 합니다.

1. 에 [대해 서버 측 LDAPS를 활성화하는 방법에 AWS Managed Microsoft AD](https://aws.amazon.com/blogs/security/how-to-enable-ldaps-for-your-aws-microsoft-ad-directory/) 제공된 단계를 따릅니다. LDAPS를 이미 활성화한 경우이 단계를 건너뛸 수 있습니다.

1. AD에 LDAPS가 구성되어 있는지 확인한 후 AD 인증서를 내보냅니다.

   1. Active Directory 서버로 이동합니다.

   1. 관리자로 PowerShell을 엽니다.

   1. 를 실행`certmgr.msc`하여 인증서 목록을 엽니다.

   1. 먼저 신뢰할 수 있는 루트 인증 기관을 연 다음 인증서를 열어 인증서 목록을 엽니다.

   1. AD 서버와 동일한 이름의 인증서를 선택하고 유지(또는 마우스 오른쪽 버튼 클릭)한 다음 **모든 작업을** 선택한 다음 **내보내기**를 선택합니다.

   1. **Base-64 인코딩된 X.509(.CER)**를 선택하고 **다음을** 선택합니다.

   1. 디렉터리를 선택한 **후 다음을** 선택합니다.

1.  AWS Secrets Manager다음에서 보안 암호를 생성합니다.

   Secrets Manager에서 보안 암호를 생성할 때, **보안 암호 유형**에서 **다른 유형의 보안 암호**를 선택하고 PEM으로 인코딩된 인증서를 **일반 텍스트** 필드에 붙여넣습니다.

1. 생성된 ARN을 기록하고에 `DomainTLSCertificateSecretARN` 파라미터로 입력합니다[1단계: 제품 시작](launch-the-product.md).

## Microsoft Active Directory에 대한 서비스 계정 설정
<a name="service-account-ms-ad"></a>

Microsoft Active Directory(AD)를 RES의 자격 증명 소스로 선택하면 AD에 프로그래밍 방식 액세스를 허용하는 서비스 계정이 있습니다. RES 설치의 일부로 서비스 계정의 자격 증명이 포함된 보안 암호를 전달해야 합니다. 보안 암호는 여기에 표시된 형식을 가져야 합니다.

![\[사용자 이름 및 암호 형식 예\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/images/res-secret-value-example.png)


또한 `username` 필드는 형식의 NT 스타일 로그온 이름을 지원하지 않습니다`DOMAIN\username`.

서비스 계정은 다음 함수를 담당합니다.
+ AD에서 사용자 동기화: RES는 웹 포털에 로그인할 수 있도록 AD에서 사용자를 동기화해야 합니다. 동기화 프로세스는 서비스 계정을 사용하여 LDAP(들)를 사용하여 AD를 쿼리하여 사용 가능한 사용자와 그룹을 결정합니다.
+ AD 도메인 조인: 인스턴스가 AD 도메인에 조인하는 Linux 가상 데스크톱 및 인프라 호스트에 대한 선택적 작업입니다. RES에서는 `DisableADJoin` 파라미터로 제어됩니다. 이 파라미터는 기본적으로 False로 설정되어 있습니다. 즉, Linux 가상 데스크톱은 기본 구성에서 AD 도메인에 조인을 시도합니다.
+ AD에 연결: Linux 가상 데스크톱 및 인프라 호스트는 조인하지 않으면 AD 도메인에 연결됩니다(`DisableADJoin` = True). 이 기능이 작동하려면 서비스 계정에 `UsersOU` 및의 사용자 및 그룹에 대한 읽기 액세스 권한도 필요합니다`GroupsOU`.

서비스 계정에는 다음 권한이 필요합니다.
+ 사용자를 동기화하고 AD에 연결하려면 → `UsersOU` 및의 사용자 및 그룹에 대한 읽기 액세스. `GroupsOU` 
+ AD 도메인에 조인하려면 →에서 `Computer` 객체를 생성합니다`ComputersOU`.

[ https://github.com/aws-samples/aws-hpc-recipes/blob/main/recipes/res/res\$1demo\$1env/assets/service\$1account.ps1](https://github.com/aws-samples/aws-hpc-recipes/blob/main/recipes/res/res_demo_env/assets/service_account.ps1) 스크립트는 적절한 서비스 계정 권한을 부여하는 방법의 예를 제공합니다. 자체 AD를 기반으로 수정할 수 있습니다.

## 프라이빗 VPC 구성(선택 사항)
<a name="private-vpc"></a>

격리된 VPC에 Research and Engineering Studio를 배포하면 조직의 규정 준수 및 거버넌스 요구 사항을 충족할 수 있도록 보안이 강화됩니다. 그러나 표준 RES 배포는 종속성을 설치하기 위해 인터넷 액세스에 의존합니다. 프라이빗 VPC에 RES를 설치하려면 다음 사전 조건을 충족해야 합니다.

**Topics**
+ [Amazon Machine Image(AMIs) 준비](#prep-ami)
+ [VPC 엔드포인트 설정](#private-vpc-endpoints)
+ [VPC 엔드포인트 없이 서비스에 연결](#connect-services-without-endpoints)
+ [프라이빗 VPC 배포 파라미터 설정](#vpc-deployment-parameters)

### Amazon Machine Image(AMIs) 준비
<a name="prep-ami"></a>

1. [ https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/latest/res-installation-scripts.tar.gz](https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/latest/res-installation-scripts.tar.gz) 종속성을 다운로드합니다. 격리된 VPC에 배포하려면 RES 인프라에 퍼블릭 인터넷 액세스 없이 종속성을 사용할 수 있어야 합니다.
**중요**  
RES 환경 버전이 최신 버전이 아닌 경우 다운로드 URI**latest**에서를 정확한 버전 번호(예: **2025.06**)로 바꿉니다.

1. Amazon S3 읽기 전용 액세스 권한과 신뢰할 수 있는 자격 증명을 Amazon EC2로 사용하여 IAM 역할을 생성합니다.

   1. IAM 콘솔([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/))을 엽니다.

   1. **역할**에서 **역할 생성을** 선택합니다.

   1. **신뢰할 수 있는 엔터티 선택** 페이지에서 다음을 수행합니다.
      + **신뢰할 수 있는 엔터티 유형**에서를 선택합니다 AWS 서비스.
      + 서비스 또는 **사용 사례**의 사용 사례에서 **EC2**를 선택하고 **다음을** 선택합니다. **** 

   1. **권한 추가**에서 다음 권한 정책을 선택한 **후 다음을** 선택합니다.
      + AmazonS3ReadOnlyAccess
      + AmazonSSMManagedInstanceCore
      + EC2InstanceProfileForImageBuilder

   1. **역할 이름** 및 **설명을** 추가한 다음 **역할 생성을** 선택합니다.

1. EC2 이미지 빌더 구성 요소를 생성합니다.

   1. 에서 EC2 Image Builder 콘솔을 엽니다[https://console.aws.amazon.com//imagebuilder](https://console.aws.amazon.com//imagebuilder).

   1. **저장된 리소스**에서 **구성 요소를** 선택하고 **구성 요소 생성을** 선택합니다.

   1. **구성 요소 생성** 페이지에서 다음 세부 정보를 입력합니다.
      + **구성 요소 유형**에서 **빌드**를 선택합니다.
      + **구성 요소 세부 정보**에서 다음을 선택합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/prerequisites.html)

   1. **구성 요소 생성** 페이지에서 **문서 콘텐츠 정의를** 선택합니다.

      1. 정의 문서 콘텐츠를 입력하기 전에 tar.gz 파일에 대한 파일 URI가 필요합니다. RES에서 제공하는 tar.gz 파일을 Amazon S3 버킷에 업로드하고 버킷 속성에서 파일의 URI를 복사합니다.

      1. 다음을 입력합니다.
**참고**  
`AddEnvironmentVariables`는 선택 사항이며 인프라 호스트에 사용자 지정 환경 변수가 필요하지 않은 경우 제거할 수 있습니다.  
`http_proxy` 및 `https_proxy` 환경 변수를 설정하는 경우 인스턴스가 프록시를 사용하여 localhost, 인스턴스 메타데이터 IP 주소 및 VPC 엔드포인트를 지원하는 서비스를 쿼리하지 못하도록 하려면 `no_proxy` 파라미터가 필요합니다.

         ```
         #  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-infrastructure
         description: An RES EC2 Image Builder component to install required RES software dependencies for infrastructure hosts.
         schemaVersion: 1.0
         
         parameters:
           - AWSRegion:
               type: string
               description: RES Environment AWS Region
         phases:
           - name: build
             steps:
                - name: DownloadRESInstallScripts
                  action: S3Download
                  onFailure: Abort
                  maxAttempts: 3
                  inputs:
                     - source: '<s3 tar.gz file uri>'
                       destination: '/root/bootstrap/res-installation-scripts/res-installation-scripts.tar.gz'
                - name: RunInstallScript
                  action: ExecuteBash
                  onFailure: Abort
                  maxAttempts: 3
                  inputs:
                     commands:
                         - 'cd /root/bootstrap/res-installation-scripts'
                         - 'tar -xf res-installation-scripts.tar.gz'
                         - 'cd scripts/infrastructure-host'
                         - '/bin/bash install.sh'
                - name: AddEnvironmentVariables
                  action: ExecuteBash
                  onFailure: Abort
                  maxAttempts: 3
                  inputs:
                     commands:
                         - |
                           echo -e "
                           http_proxy=http://<ip>:<port>
                           https_proxy=http://<ip>:<port>
                           no_proxy=127.0.0.1,169.254.169.254,169.254.170.2,localhost,{{ AWSRegion }}.res,{{ AWSRegion }}.vpce.amazonaws.com,{{ AWSRegion }}.elb.amazonaws.com,s3.{{ AWSRegion }}.amazonaws.com,s3.dualstack.{{ AWSRegion }}.amazonaws.com,ec2.{{ AWSRegion }}.amazonaws.com,ec2.{{ AWSRegion }}.api.aws,ec2messages.{{ AWSRegion }}.amazonaws.com,ssm.{{ AWSRegion }}.amazonaws.com,ssmmessages.{{ AWSRegion }}.amazonaws.com,kms.{{ AWSRegion }}.amazonaws.com,secretsmanager.{{ AWSRegion }}.amazonaws.com,sqs.{{ AWSRegion }}.amazonaws.com,elasticloadbalancing.{{ AWSRegion }}.amazonaws.com,sns.{{ AWSRegion }}.amazonaws.com,logs.{{ AWSRegion }}.amazonaws.com,logs.{{ AWSRegion }}.api.aws,elasticfilesystem.{{ AWSRegion }}.amazonaws.com,fsx.{{ AWSRegion }}.amazonaws.com,dynamodb.{{ AWSRegion }}.amazonaws.com,api.ecr.{{ AWSRegion }}.amazonaws.com,.dkr.ecr.{{ AWSRegion }}.amazonaws.com,kinesis.{{ AWSRegion }}.amazonaws.com,.data-kinesis.{{ AWSRegion }}.amazonaws.com,.control-kinesis.{{ AWSRegion }}.amazonaws.com,events.{{ AWSRegion }}.amazonaws.com,cloudformation.{{ AWSRegion }}.amazonaws.com,sts.{{ AWSRegion }}.amazonaws.com,application-autoscaling.{{ AWSRegion }}.amazonaws.com,monitoring.{{ AWSRegion }}.amazonaws.com,ecs.{{ AWSRegion }}.amazonaws.com,.execute-api.{{ AWSRegion }}.amazonaws.com
                            " >> /etc/environment launch template
         ```

   1. **구성 요소 생성**을 선택합니다.

1. Image Builder 이미지 레시피를 생성합니다.

   1. **레시피 생성** 페이지에서 다음을 입력합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/prerequisites.html)

   1. **레시피 생성**을 선택합니다.

1. Image Builder 인프라 구성을 생성합니다.

   1. **저장된 리소스**에서 **인프라 구성을** 선택합니다.

   1. **인프라 구성 생성**을 선택합니다.

   1. **인프라 구성 생성** 페이지에서 다음을 입력합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/prerequisites.html)

   1. **인프라 구성 생성**을 선택합니다.

1. 새 EC2 Image Builder 파이프라인을 생성합니다.

   1. **이미지 파이프라인**으로 이동하여 **이미지 파이프라인 생성을** 선택합니다.

   1. **파이프라인 세부 정보 지정** 페이지에서 다음을 입력하고 **다음을** 선택합니다.
      + 파이프라인 이름 및 선택적 설명
      + **빌드 일정**에서 일정을 설정하거나 AMI 베이킹 프로세스를 수동으로 시작하려면 **수동**을 선택합니다.

   1. **레시피 선택** 페이지에서 **기존 레시피 사용을** 선택하고 이전에 생성한 **레시피 이름을** 입력합니다. **다음**을 선택합니다.

   1. **이미지 프로세스 정의** 페이지에서 기본 워크플로를 선택하고 **다음을** 선택합니다.

   1. **인프라 구성 정의** 페이지에서 **기존 인프라 구성 사용을** 선택하고 이전에 생성한 인프라 구성의 이름을 입력합니다. **다음**을 선택합니다.

   1. **배포 설정 정의** 페이지에서 다음을 선택하여 선택합니다.
      + RES가 인프라 호스트 인스턴스를 제대로 시작할 수 있도록 출력 이미지는 배포된 RES 환경과 동일한 리전에 있어야 합니다. 서비스 기본값을 사용하면 EC2 Image Builder 서비스가 사용되는 리전에서 출력 이미지가 생성됩니다.
      + 여러 리전에 RES를 배포하려면 **새 배포 설정 생성을** 선택하고 여기에 리전을 더 추가할 수 있습니다.

   1. 선택 사항을 검토하고 **파이프라인 생성을** 선택합니다.

1. EC2 Image Builder 파이프라인을 실행합니다.

   1. **이미지 파이프라인**에서 생성한 파이프라인을 찾아 선택합니다.

   1. **작업을** 선택하고 **파이프라인 실행**을 선택합니다.

      파이프라인에서 AMI 이미지를 생성하는 데 약 45분에서 1시간이 걸릴 수 있습니다.

1. 생성된 AMI의 AMI ID를 기록하고에서 InfrastructureHostAMI 파라미터의 입력으로 사용합니다[1단계: 제품 시작](launch-the-product.md).

### VPC 엔드포인트 설정
<a name="private-vpc-endpoints"></a>

 RES를 배포하고 가상 데스크톱을 시작하려면 프라이빗 서브넷에 대한 액세스 권한이 AWS 서비스 필요합니다. 필요한 액세스를 제공하도록 VPC 엔드포인트를 설정해야 하며 각 엔드포인트에 대해이 단계를 반복해야 합니다.

1. 엔드포인트가 이전에 구성되지 않은 경우 [ 인터페이스 VPC 엔드포인트를 AWS 서비스 사용하여 액세스](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)에 제공된 지침을 따릅니다.

1. 두 가용 영역 각각에서 프라이빗 서브넷 하나를 선택합니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/prerequisites.html)

### VPC 엔드포인트 없이 서비스에 연결
<a name="connect-services-without-endpoints"></a>

VPC 엔드포인트를 지원하지 않는 서비스와 통합하려면 VPC의 퍼블릭 서브넷에 프록시 서버를 설정할 수 있습니다. AWS Identity Center를 ID 제공업체로 사용하여 Research and Engineering Studio 배포에 필요한 최소 액세스 권한을 가진 프록시 서버를 생성하려면 다음 단계를 따르세요.

1. RES 배포에 사용할 VPC의 퍼블릭 서브넷에서 Linux 인스턴스를 시작합니다.
   + Linux 패밀리 - Amazon Linux 2 또는 Amazon Linux 3
   + 아키텍처 - x86
   + 인스턴스 유형 - t2.micro 이상
   + 보안 그룹 - 0.0.0.0/0에서 포트 3128의 TCP

1. 인스턴스에 연결하여 프록시 서버를 설정합니다.

   1. http 연결을 엽니다.

   1. 모든 관련 서브넷에서 다음 도메인에 대한 연결을 허용합니다.
      + .amazonaws.com(일반 AWS 서비스의 경우)
      + .amazoncognito.com(Amazon Cognito용)
      + .awsapps.com(Identity Center용)
      + .signin.aws(Identity Center용)
      + .amazonaws-us-gov.com(Gv Cloud용)

   1. 다른 모든 연결을 거부합니다.

   1. 프록시 서버를 활성화하고 시작합니다.

   1. 프록시 서버가 수신 대기하는 PORT를 기록해 둡니다.

1. 프록시 서버에 대한 액세스를 허용하도록 라우팅 테이블을 구성합니다.

   1. VPC 콘솔로 이동하여 인프라 호스트 및 VDI 호스트에 사용할 서브넷의 라우팅 테이블을 식별합니다.

   1. 모든 수신 연결이 이전 단계에서 생성된 프록시 서버 인스턴스로 이동하도록 라우팅 테이블을 편집합니다.

   1. 인프라/VDIs에 사용할 모든 서브넷(인터넷 액세스 없음)의 라우팅 테이블에 대해이 작업을 수행합니다.

1. 프록시 서버 EC2 인스턴스의 보안 그룹을 수정하고 프록시 서버가 수신 대기하는 PORT에서 인바운드 TCP 연결을 허용하는지 확인합니다.

### 프라이빗 VPC 배포 파라미터 설정
<a name="vpc-deployment-parameters"></a>

에서는 CloudFormation 템플릿에 특정 파라미터를 [1단계: 제품 시작](launch-the-product.md)입력해야 합니다. 방금 구성한 프라이빗 VPC에 성공적으로 배포하려면 다음 파라미터를 명시된 대로 설정해야 합니다.


| 파라미터 | Input | 
| --- |--- |
| InfrastructureHostAMI | Use the infrastructure AMI ID created in [Amazon Machine Image(AMIs) 준비](#prep-ami). | 
| IsLoadBalancerInternetFacing | Set to false. | 
| LoadBalancerSubnets | Choose private subnets without internet access. | 
| InfrastructureHostSubnets | Choose private subnets without internet access. | 
| VdiSubnets | Choose private subnets without internet access. | 
|  [ClientIP]  | You can choose your VPC CIDR to allow access for all VPC IP addresses. | 
|  HttpProxy  | Example: http://10.1.2.3:123 | 
|  HttpsProxy  | Example: http://10.1.2.3:123 | 
|  NoProxy  | 예제: <pre>127.0.0.1,169.254.169.254,169.254.170.2,localhost,us-east-1.res,us-east-1.vpce.amazonaws.com,us-east-1.elb.amazonaws.com,s3.us-east-1.amazonaws.com,s3.dualstack.us-east-1.amazonaws.com,ec2.us-east-1.amazonaws.com,ec2.us-east-1.api.aws,ec2messages.us-east-1.amazonaws.com,ssm.us-east-1.amazonaws.com,ssmmessages.us-east-1.amazonaws.com,kms.us-east-1.amazonaws.com,secretsmanager.us-east-1.amazonaws.com,sqs.us-east-1.amazonaws.com,elasticloadbalancing.us-east-1.amazonaws.com,sns.us-east-1.amazonaws.com,logs.us-east-1.amazonaws.com,logs.us-east-1.api.aws,elasticfilesystem.us-east-1.amazonaws.com,fsx.us-east-1.amazonaws.com,dynamodb.us-east-1.amazonaws.com,api.ecr.us-east-1.amazonaws.com,.dkr.ecr.us-east-1.amazonaws.com,kinesis.us-east-1.amazonaws.com,.data-kinesis.us-east-1.amazonaws.com,.control-kinesis.us-east-1.amazonaws.com,events.us-east-1.amazonaws.com,cloudformation.us-east-1.amazonaws.com,sts.us-east-1.amazonaws.com,application-autoscaling.us-east-1.amazonaws.com,monitoring.us-east-1.amazonaws.com,ecs.us-east-1.amazonaws.com,.execute-api.us-east-1.amazonaws.com </pre>  | 

# 외부 리소스 생성
<a name="create-external-resources"></a>

이 CloudFormation 스택은 네트워킹, 스토리지, Active Directory 및 도메인 인증서( PortalDomainName이 제공된 경우)를 생성합니다. 제품을 배포하려면 이러한 외부 리소스를 사용할 수 있어야 합니다.

배포 전에 [ 레시피 템플릿을 다운로드할 수 있습니다](https://s3.amazonaws.com/aws-hpc-recipes/main/recipes/res/res_demo_env/assets/bi.yaml).

**배포 시간:** 약 40\$190분 

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/) CloudFormation 콘솔을 엽니다.
**참고**  
관리자 계정에 있는지 확인합니다.

1. 콘솔에서 [ 템플릿을](https://console.aws.amazon.com/cloudformation/home#/stacks/quickcreate?templateURL=https%3A%2F%2Fs3.amazonaws.com%2Faws-hpc-recipes%2Fmain%2Frecipes%2Fres%2Fres_demo_env%2Fassets%2Fbi.yaml) 시작합니다.

    AWS GovCloud 리전에 배포하는 경우 GovCloud 파티션 계정(예: AWS GovCloud(미국 서부) 리전의 [ 경우 여기](https://console.amazonaws-us-gov.com/cloudformation/home?region=us-gov-west-1#/stacks/quickcreate?templateURL=https://s3.amazonaws.com/aws-hpc-recipes/main/recipes/res/res_demo_env/assets/bi.yaml))에서 템플릿을 시작합니다.

1. 템플릿 파라미터를 입력합니다.
**중요**  
`AdminPassword` 및에 대해 서로 다른 값을 사용하여 이러한 계정 간에 적절한 보안 경계`ServiceAccountPassword`를 유지합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/create-external-resources.html)

1.  **기능**에서 모든 확인란을 확인하고 **스택 생성을** 선택합니다.

# 1단계: 제품 시작
<a name="launch-the-product"></a>

이 섹션의 step-by-step 지침에 따라 제품을 구성하고 계정에 배포합니다.

**배포 시간:** 약 60분 

배포하기 전에이 제품에 대한 [ CloudFormation 템플릿을 다운로드할](https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/latest/ResearchAndEngineeringStudio.template.json) 수 있습니다.

in AWS GovCloud(미국 서부)를 배포하는 경우이 [ 템플릿을](https://research-engineering-studio-us-gov-west-1.s3.us-gov-west-1.amazonaws.com/releases/latest/ResearchAndEngineeringStudio.template.json) 사용합니다.

**res-stack** -이 템플릿을 사용하여 제품 및 모든 관련 구성 요소를 시작합니다. 기본 구성은 RES 기본 스택 및 인증, 프런트엔드 및 백엔드 리소스를 배포합니다.

**참고**  
AWS CloudFormation 리소스는 AWS Cloud Development Kit (AWS CDK) (AWS CDK) 구문에서 생성됩니다.

 AWS CloudFormation 템플릿은의 AWS 에 Research and Engineering Studio를 배포합니다 AWS 클라우드. 스택을 시작하기 전에 [사전 조건을](prerequisites.md) 충족해야 합니다.

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/) CloudFormation 콘솔을 엽니다.

1. [ 템플릿을 ](https://console.aws.amazon.com/cloudformation/home#/stacks/quickcreate?templateURL=https%3A%2F%2Fresearch-engineering-studio-us-east-1.s3.amazonaws.com%2Freleases%2Flatest%2FResearchAndEngineeringStudio.template.json)시작합니다.

   in AWS GovCloud(미국 서부)를 배포하려면이 [ 템플릿을](https://console.amazonaws-us-gov.com/cloudformation/home?region=us-gov-west-1#/stacks/quickcreate?templateURL=https://research-engineering-studio-us-gov-west-1.s3.us-gov-west-1.amazonaws.com/releases/latest/ResearchAndEngineeringStudio.template.json) 시작합니다.

1. 이 템플릿은 기본적으로 미국 동부(버지니아 북부) 리전에서 시작됩니다. 다른에서 제품을 시작하려면 콘솔 탐색 모음에서 리전 선택기를 AWS 리전사용합니다.
**참고**  
이 제품은 현재 일부에서 사용할 수 없는 Amazon Cognito 서비스를 사용합니다 AWS 리전. Amazon Cognito를 사용할 수 AWS 리전 있는에서이 제품을 시작해야 합니다. 리전별 최신 가용성은 [AWS 리전 al Services List](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/)를 참조하세요.

1. **파라미터**에서이 제품 템플릿의 파라미터를 검토하고 필요에 따라 수정합니다. 자동화된 외부 리소스를 배포한 경우 외부 리소스 스택의 **출력** 탭에서 이러한 파라미터를 찾을 수 있습니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/launch-the-product.html)

1. **스택 옵션 구성 → 태그 - *선택 사항***에서 RES 배포 리소스에 적용할 태그(키-값 페어)를 추가합니다. 태그 키 `Name` 및 `res:*`는 RES에 의해 보존되며 태그 키로 사용할 수 없습니다.

1. **스택 생성**을 선택하여 스택을 배포합니다.

 AWS CloudFormation 콘솔의 상태 열에서 스택의 **상태를** 볼 수 있습니다. 약 60분 후에 CREATE\$1COMPLETE 상태가 표시됩니다.

**중요**  
배포 후 인프라/VDI 호스트를 패치하는 것은 사용자의 책임입니다.

# 2단계: 처음 로그인
<a name="first-sign-in"></a>

제품 스택이 계정에 배포되면 자격 증명이 포함된 이메일을 받게 됩니다. URL을 사용하여 계정에 로그인하고 다른 사용자를 위해 워크스페이스를 구성합니다.

![\[첫 번째 로그인 이메일 초대\]](http://docs.aws.amazon.com/ko_kr/res/latest/ug/images/res-firstsignin.png)


처음으로 로그인한 후 웹 포털에서 SSO 공급자에 연결하도록 설정을 구성할 수 있습니다. 배포 후 구성 정보는 섹션을 참조하세요[구성 가이드](configuration-guide.md). `clusteradmin`는 휴지통 계정입니다.이 계정을 사용하여 프로젝트를 생성하고 해당 프로젝트에 사용자 또는 그룹 멤버십을 할당할 수 있으며, 소프트웨어 스택을 할당하거나 자체적으로 데스크톱을 배포할 수 없습니다.