

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

# Image Builder 인프라 구성 관리
<a name="manage-infra-config"></a>

인프라 구성을 사용하여 Image Builder가 EC2 Image Builder 이미지를 구축하고 테스트하는 데 사용하는 Amazon EC2 인프라를 지정할 수 있습니다. 인프라 설정은 다음과 같습니다.
+ 내 빌드 및 테스트 인프라의 인스턴스 유형. 인스턴스 유형을 두 개 이상 지정하는 것이 좋습니다. 이렇게 하면 Image Builder가 용량이 충분한 풀에서 인스턴스를 시작할 수 있기 때문입니다. 이렇게 하면 일시적인 빌드 실패를 줄일 수 있습니다.

  Mac 이미지의 경우 기본적으로 macOS 운영 체제를 지원하는 인스턴스 유형을 선택할 수 있습니다. 자세한 내용을 알아보려면 *Amazon EC2 사용 설명서*의 [Amazon EC2 Mac 인스턴스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html)를 참조하세요.
+ 이미지에서 시작하는 인스턴스가 이동해야 하는 호스트, 호스트 배치 그룹 또는 가용 영역을 지정할 수 있는 인스턴스 배치 설정입니다.
+ 빌드 및 테스트 인스턴스에 사용자 지정 활동을 수행하는 데 필요한 권한을 제공하는 인스턴스 프로파일입니다. 예를 들어 Amazon S3에서 리소스를 불러오는 구성 요소가 있는 경우 그 인스턴스 프로파일에는 해당 파일에 액세스할 수 있는 권한이 필요합니다. 또한 인스턴스 프로파일에는 EC2 Image Builder가 인스턴스와 성공적으로 통신하기 위한 최소한의 권한 세트가 필요합니다. 자세한 내용은 [Image Builder를 사용하여 사용자 지정 이미지를 빌드하도록 설정](set-up-ib-env.md) 단원을 참조하십시오.
+ 파이프라인 빌드 및 테스트 인스턴스의 VPC, 서브넷 및 보안 그룹.
+ Image Builder가 내 빌드 및 테스트의 애플리케이션 로그를 저장하는 Amazon S3 위치입니다. 로깅을 구성하는 경우 인프라 구성에 지정된 인스턴스 프로파일에 대상 버킷(`arn:aws:s3:::BucketName/*`)에 대한 `s3:PutObject` 권한이 있어야 합니다.
+ 빌드가 실패하고 `terminateInstanceOnFailure`(을)를 `false`(으)로 설정한 경우 인스턴스에 로그온하여 문제를 해결할 수 있게 해주는 Amazon EC2 키 페어입니다.
+ Image Builder에서 이벤트 알림을 보내는 SNS 주제입니다. Image Builder가 Amazon SNS와 어떻게 연동되는지에 관한 자세한 내용은 [Image Builder에서의 Amazon SNS 통합](integ-sns.md) 섹션을 참조하세요.
**참고**  
SNS 주제가 암호화된 경우 이 주제를 암호화하는 키는 Image Builder 서비스가 실행되는 계정에 있어야 합니다. Image Builder는 다른 계정의 키로 암호화된 SNS 주제에 알림을 보낼 수 없습니다.

Image Builder 콘솔, Image Builder API 또는 AWS CLI의 **imagebuilder** 명령을 사용하여 인프라 구성을 생성하고 관리할 수 있습니다.

**Topics**
+ [인프라 구성 세부 정보 나열 및 보기](infra-config-details.md)
+ [인프라 구성 생성](create-infra-config.md)
+ [인프라 구성 업데이트](update-infra-config.md)
+ [Image Builder 및 AWS PrivateLink 인터페이스 VPC 엔드포인트](vpc-interface-endpoints.md)

**작은 정보**  
동일한 유형의 리소스가 여러 개 있는 경우 태그를 지정하면 할당한 태그에 따라 특정 리소스를 식별하는 데 도움이 됩니다. 에서 Image Builder 명령을 사용하여 리소스에 태그를 지정하는 방법에 대한 자세한 내용은이 가이드의 [리소스 태깅](tag-resources.md) 섹션을 AWS CLI참조하세요.

# 인프라 구성 세부 정보 나열 및 보기
<a name="infra-config-details"></a>

이 섹션에서는 EC2 Image Builder 인프라 구성에 대한 정보를 찾고 세부 정보를 볼 수 있는 다양한 방법을 설명합니다.

**Topics**
+ [에서 인프라 구성 나열 AWS CLI](#cli-list-infrastructure-configurations)
+ [에서 인프라 구성 세부 정보 가져오기 AWS CLI](#cli-get-infrastructure-configuration-details)

## 에서 인프라 구성 나열 AWS CLI
<a name="cli-list-infrastructure-configurations"></a>

다음 예제에서는 AWS CLI에서 **[list-infrastructure-configurations](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/list-infrastructure-configurations.html)** 명령을 사용하여 모든 내 인프라 구성을 모두 나열하는 방법을 보여 줍니다.

```
aws imagebuilder list-infrastructure-configurations
```

## 에서 인프라 구성 세부 정보 가져오기 AWS CLI
<a name="cli-get-infrastructure-configuration-details"></a>

다음 예제에서는에서 **[get-infrastructure-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/get-infrastructure-configuration.html)** 명령을 사용하여 Amazon 리소스 이름(ARN)을 지정하여 인프라 구성의 세부 정보를 AWS CLI 가져오는 방법을 보여줍니다.

```
aws imagebuilder get-infrastructure-configuration --infrastructure-configuration-arn arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-example-infrastructure-configuration
```

# 인프라 구성 생성
<a name="create-infra-config"></a>

이 섹션에서는 Image Builder 콘솔 또는의 **imagebuilder** 명령을 사용하여 인프라 구성을 AWS CLI 생성하는 방법을 설명합니다.

------
#### [ Console ]

Image Builder 콘솔에서 인프라 구성 리소스를 생성하려면 다음 단계를 따르세요.

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

1. 탐색 창에서 **인프라 구성**을 선택합니다.

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

1. **일반** 섹션에서 다음 정보를 입력합니다.
   + 인프라 구성 리소스의 **이름**을 입력합니다.
   + 빌드 및 테스트 인스턴스에서 구성 요소 권한을 위해 인스턴스 프로파일과 연결할 **IAM 역할**을 선택합니다. Image Builder는 이러한 권한을 사용하여 구성 요소를 다운로드 및 실행하고, CloudWatch에 로그를 업로드하고, 내 레시피의 구성 요소가 지정하는 추가 작업을 수행합니다.

1. **AWS 인프라** 패널에서 사용 가능한 나머지 인프라 설정을 구성할 수 있습니다. 다음 필수 정보를 입력합니다.
   + **인스턴스 유형** - 이 빌드에 사용할 하나 이상의 인스턴스 유형을 지정할 수 있습니다. 서비스가 가용 여부에 따라 이러한 인스턴스 유형 중 하나를 선택할 것입니다.
**참고**  
Mac 인스턴스는 전용 호스트의 `.metal` 인스턴스 유형에서 실행됩니다. 인스턴스 유형은 인스턴스가 실행되는 호스트에 대해 정의된 유형 중 하나와 일치해야 합니다. Mac 인스턴스 및 macOS 운영 체제를 기본적으로 지원하는 인스턴스 유형 목록에 대한 자세한 내용은 *Amazon EC2 사용 설명서*의 [Amazon EC2 Mac 인스턴스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html)를 참조하세요.
   + **SNS 주제(선택 사항)** - EC2 Image Builder에서 알림 및 경보를 받으려면 SNS 주제를 선택합니다.

   다음 설정에 값을 제공하지 않으면 해당하는 경우 서비스별 기본값이 사용됩니다.
   + **VPC, 서브넷 및 보안 그룹** — Image Builder는 기본 VPC와 서브넷을 사용합니다. VPC 인터페이스 엔드포인트를 구성하는 방법에 대한 자세한 내용은 [Image Builder 및 AWS PrivateLink 인터페이스 VPC 엔드포인트](vpc-interface-endpoints.md) 섹션을 참조하세요.
   + **문제 해결 설정** 섹션에서 다음 값을 구성할 수 있습니다.
     + 기본적으로 **실패 시 인스턴스 종료** 확인란이 선택되어 있습니다. 하지만 빌드가 실패하는 경우 EC2 인스턴스에 로그온하여 문제를 해결할 수 있습니다. 빌드 실패 후에도 인스턴스를 계속 실행하려면 확인란의 선택을 취소하세요.
     + **키 페어** - 빌드 실패 후에도 EC2 인스턴스가 계속 실행되는 경우, 키 페어를 생성하거나 기존 키 페어를 사용하여 인스턴스에 로그온하고 문제를 해결할 수 있습니다.
     + **로그** - Image Builder가 빌드 및 테스트 문제를 해결하는 데 도움이 되는 애플리케이션 로그를 작성할 수 있는 S3 버킷을 지정할 수 있습니다. S3 버킷을 지정하지 않는 경우 Image Builder는 애플리케이션 로그를 인스턴스에 기록합니다.
   + **인스턴스 메타데이터 설정** 섹션에서 Image Builder가 이미지를 빌드하고 테스트하는 데 사용하는 EC2 인스턴스에 적용할 다음 값을 구성할 수 있습니다.
     + **메타데이터 버전**을 선택하여 EC2에서 인스턴스 메타데이터 검색 요청에 서명된 토큰 헤더가 필요한지 여부를 결정합니다.
       + **V1 및 V2(토큰 선택 사항)** - 아무것도 선택하지 않은 경우의 기본값입니다.
       + **V2(토큰 필요)**
**참고**  
Image Builder가 파이프라인 빌드에서 시작하는 모든 EC2 인스턴스가 IMDSv2를 사용하도록 구성하여 인스턴스 메타데이터 검색 요청에 서명된 토큰 헤더가 필요하도록 하는 것이 좋습니다.
     + **메타데이터 토큰 응답 홉 제한** – 메타데이터 토큰이 이동할 수 있는 네트워크 홉 수입니다. 최소 홉: 1, 최대 홉: 64개, 기본값은 홉 1개입니다.
   + **인스턴스 배치 설정** 섹션에서 Image Builder가 이미지를 빌드하고 테스트하는 데 사용하는 EC2 인스턴스에 적용할 다음 값을 구성할 수 있습니다.
     + 이미지 생성 중에 Image Builder가 인스턴스를 시작하는 **가용 영역**을 선택할 수 있습니다.
     + 선택적으로 시작하는 인스턴스를 실행하는 서버에 대해 **테넌시**를 선택합니다. 기본적으로 EC2 인스턴스는 공유 테넌시 하드웨어에서 실행됩니다. 즉, 여러 AWS 계정 이 동일한 물리적 하드웨어를 공유할 수 있습니다. `dedicated` 테넌시가 있는 인스턴스는 단일 테넌트 하드웨어에서 실행됩니다. `host` 테넌시가 있는 인스턴스는 전용 호스트에서 실행됩니다.

       Mac 인스턴스에는 사용자 지정 이미지를 빌드하기 전에 사전 조건으로 생성된 전용 호스트가 필요합니다. macOS 이미지에 대해 `host`를 선택합니다. 그런 다음 대상 호스트 또는 호스트 리소스 그룹을 선택하여 인스턴스를 시작할 수 있지만 전용 호스트에 자동 배치가 활성화된 경우에는 필요하지 않습니다. 자세한 내용을 알아보려면 *Amazon EC2 사용 설명서*의 [자동 배치](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-understanding.html#dedicated-hosts-auto-placement)를 참조하세요.
       + **테넌시 호스트 ID** - 인스턴스가 실행되는 전용 호스트의 ID입니다.
       + **테넌시 호스트 리소스 그룹** - 인스턴스를 시작할 호스트 리소스 그룹의 Amazon 리소스 이름(ARN)입니다.

1. **인프라 태그** 섹션(선택 사항)에서 빌드 프로세스 중에 Image Builder가 시작하는 Amazon EC2 인스턴스에 메타데이터 태그를 할당할 수 있습니다. 태그를 키 값 페어로 입력합니다.

1. **태그** 섹션(선택 사항)에서 Image Builder가 출력으로 생성하는 인프라 구성 리소스에 메타데이터 태그를 할당할 수 있습니다. 태그를 키 값 페어로 입력합니다.

------
#### [ AWS CLI ]

다음 절차는 AWS CLI에서 Image Builder **[create-infrastructure-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/create-infrastructure-configuration.html)** 명령을 사용하여 이미지의 인프라를 구성하는 방법을 보여줍니다. 2단계의 명령은 1단계에서 생성한 파일을 가져옵니다. 이러한 예제에서는 1단계의 파일을 `create-infrastructure-configuration.json`이라고 합니다.

1. 

**CLI 입력 JSON 파일 생성**

   다음 예제에서는 인프라 구성을 위해 생성할 수 있는 JSON 파일의 변형을 보여줍니다. 파일 편집 도구를 사용하여 자신만의 JSON 파일을 생성합니다.

   **예제 1: 실패한 빌드에서 인스턴스를 유지하기 위한 구성**

   이 예제에서는 두 개의 인스턴스 유형 `m5.large` 및 `m5.xlarge`를 지정합니다. 인스턴스 유형을 두 개 이상 지정하는 것이 좋습니다. 이렇게 하면 Image Builder가 용량이 충분한 풀에서 인스턴스를 시작할 수 있기 때문입니다. 이렇게 하면 일시적인 빌드 실패를 줄일 수 있습니다.

   `instanceProfileName`(은)는 프로파일이 사용자 지정 활동을 수행하는 데 필요한 권한을 인스턴스에 제공하는 인스턴스 프로파일을 지정합니다. 예를 들어 Amazon S3에서 리소스를 불러오는 구성 요소가 있는 경우 그 인스턴스 프로파일에는 해당 파일에 액세스할 수 있는 권한이 필요합니다. 또한 인스턴스 프로파일에는 EC2 Image Builder가 인스턴스와 성공적으로 통신하기 위한 최소한의 권한 세트가 필요합니다. 자세한 내용은 [Image Builder를 사용하여 사용자 지정 이미지를 빌드하도록 설정](set-up-ib-env.md) 단원을 참조하십시오.

   ```
   {
       "name": "ExampleInfraConfigDontTerminate",
       "description": "An example that will retain instances of failed builds",
       "instanceTypes": [
           "m5.large", "m5.xlarge"
       ],
       "instanceProfileName": "myIAMInstanceProfileName",
       "securityGroupIds": [
           "sg-12345678"
       ],
       "subnetId": "sub-12345678",
       "logging": {
           "s3Logs": {
               "s3BucketName": "my-logging-bucket",
               "s3KeyPrefix": "my-path"
           }
       },
       "keyPair": "myKeyPairName",
       "terminateInstanceOnFailure": false,
       "snsTopicArn": "arn:aws:sns:us-west-2:123456789012:MyTopic"
   }
   ```

**예제 2: 자동 배치를 사용한 macOS 구성**  
이 예제에서는 전용 호스트에 자동 배치가 활성화된 Mac 인스턴스의 인스턴스 유형과 배치를 지정합니다.

   ```
   {
      "name": "macOSInfraConfigAutoPlacement",
      "description": "An example infrastructure configuration for macOS.",
      "instanceProfileName": "EC2InstanceProfileForImageBuilder",
      "instanceTypes": ["mac1.metal, mac2.metal"],
      "terminateInstanceOnFailure": false,
      "placement": {
         "tenancy": "host"
      }
   }
   ```

**예제 3: 호스트 ID가 지정된 macOS 구성**  
이 예제에서는 특정 전용 호스트를 대상으로 하는 Mac 인스턴스의 인스턴스 유형과 배치를 지정합니다.

   ```
   {
      "name": "macOSInfraConfigHostPlacement",
      "description": "An example infrastructure configuration for macOS.",
      "instanceProfileName": "EC2InstanceProfileForImageBuilder",
      "instanceTypes": ["mac2-m1ultra.metal"],
      "terminateInstanceOnFailure": false,
      "placement": {
         "tenancy": "host",
         "hostId" : "h-1234567890abcdef0"
      }
   }
   ```

1. 

**다음 명령을 실행할 때 생성한 파일을 입력으로 사용합니다.**

   ```
   aws imagebuilder create-infrastructure-configuration --cli-input-json file://create-infrastructure-configuration.json
   ```

------

# 인프라 구성 업데이트
<a name="update-infra-config"></a>

이 섹션에서는에서 Image Builder 콘솔 또는 **imagebuilder** 명령을 사용하여 인프라 구성 리소스를 AWS CLI 업데이트하는 방법을 다룹니다. 리소스를 추적하려면 다음과 같이 태그를 적용할 수 있습니다. 태그를 키 값 페어로 입력합니다.
+ *리소스 태그*는 빌드 프로세스 중에 Image Builder가 시작하는 Amazon EC2 인스턴스에 메타데이터 태그를 할당합니다.
+ *태그*는 Image Builder가 출력으로 생성하는 인프라 구성 리소스에 메타데이터 태그를 할당합니다.

------
#### [ Console ]

Image Builder 콘솔에서 다음과 같은 인프라 구성 세부 정보를 편집할 수 있습니다.
+ 인프라 구성에 관한 **설명**.
+ 인스턴스 프로파일과 연결할 **IAM 역할**.
+ **AWS 인프라** - **인스턴스 유형** 및 알림을 위한 **SNS 주제** 포함.
+ **VPC, 서브넷 및 보안 그룹**.
+ ** 장애 발생 시 인스턴스 종료**, 연결을 위한 **키 페어**, 인스턴스 로그를 위한 선택적 S3 버킷 위치를 포함한 **문제 해결 설정**.

Image Builder 콘솔에서 인프라 구성 리소스를 업데이트하려면 다음 단계를 따르세요.

**기존 Image Builder 인프라 구성 선택**

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

1. 계정의 인프라 구성 리소스 목록을 보려면 탐색 창에서 **인프라 구성**을 선택합니다.

1. 세부 정보를 보거나 인프라 구성을 편집하려면 **구성 이름** 링크를 선택합니다. 이렇게 하면 인프라 구성에 대한 세부 정보 보기가 열립니다.
**참고**  
또한 **구성 이름** 옆에 있는 확인란을 선택한 다음 **세부 정보 보기**를 선택할 수 있습니다.

1. **인프라 세부 정보** 패널의 오른쪽 상단에서 **편집**을 선택합니다.

1. 인프라 구성에 적용한 업데이트를 저장할 준비가 되면 **변경 내용 저장**을 선택합니다.

------
#### [ AWS CLI ]

다음 예제는 AWS CLI에서 Image Builder **[update-infrastructure-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/update-infrastructure-configuration.html)** 명령을 사용하여 이미지의 인프라 구성을 업데이트하는 방법을 보여줍니다.

1. 

**CLI 입력 JSON 파일 생성**

   이 인프라 구성 예제는 설정을 `false`(으)로 업데이트했다는 점을 제외하면 생성 예제와 동일한 `terminateInstanceOnFailure` 설정을 사용합니다. **update-infrastructure-configuration** 명령을 실행하면 이 인프라 구성을 사용하는 파이프라인이 빌드를 종료하고 빌드가 실패하면 인스턴스를 테스트합니다.

   파일 편집 도구를 사용하여 다음 예제에 표시된 키와 환경에 유효한 값을 포함하는 JSON 파일을 생성합니다. 이 예제에서는 `update-infrastructure-configuration.json`(이)라는 이름의 파일이 사용됩니다.

   ```
   {
   "infrastructureConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-example-infrastructure-configuration",
   "description": "An example that will terminate instances of failed builds",
   "instanceTypes": [
       "m5.large", "m5.2xlarge"
   ],
   "instanceProfileName": "myIAMInstanceProfileName",
   "securityGroupIds": [
       "sg-12345678"
   ],
   "subnetId": "sub-12345678",
   "logging": {
       "s3Logs": {
           "s3BucketName": "my-logging-bucket",
           "s3KeyPrefix": "my-path"
       }
   },
   "terminateInstanceOnFailure": true,
   "snsTopicArn": "arn:aws:sns:us-west-2:123456789012:MyTopic"
   }
   ```

1. 

**다음 명령을 실행할 때 생성한 파일을 입력으로 사용합니다.**

   ```
   aws imagebuilder update-infrastructure-configuration --cli-input-json file://update-infrastructure-configuration.json
   ```

------

# Image Builder 및 AWS PrivateLink 인터페이스 VPC 엔드포인트
<a name="vpc-interface-endpoints"></a>

*인터페이스 VPC 엔드포인트*를 생성하여 VPC와 EC2 Image Builder 간에 프라이빗 연결을 설정할 수 있습니다. 인터페이스 엔드포인트는 인터넷 게이트웨이[AWS PrivateLink](https://aws.amazon.com/privatelink/), NAT 디바이스, VPN 연결 또는 Direct Connect 연결 없이 Image Builder APIs에 비공개로 액세스할 수 있는 기술로 구동됩니다. VPC의 인스턴스는 Image Builder API와 통신하는 데 퍼블릭 IP 주소를 필요로 하지 않습니다. VPC와 Image Builder 간 트래픽은 Amazon 네트워크를 벗어나지 않습니다.

각 인터페이스 엔드포인트는 서브넷에서 하나 이상의 [탄력적 네트워크 인터페이스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)로 표현됩니다. 새 이미지를 생성할 때 인프라 구성에서 VPC 서브넷 ID를 지정할 수 있습니다.

**참고**  
VPC 내에서 액세스하는 각 서비스에는 자체 엔드포인트 정책이 있는 자체 인터페이스 엔드포인트가 있습니다. Image Builder는 AWSTOE 구성 요소 관리자 애플리케이션을 다운로드하고 S3 버킷에서 관리형 리소스에 액세스하여 사용자 지정 이미지를 생성합니다. 이러한 버킷에 대한 액세스 권한을 부여하려면 이를 허용하도록 S3 엔드포인트 정책을 업데이트해야 합니다. 자세한 내용은 [S3 버킷 액세스에 대한 사용자 지정 정책](#vpc-endpoint-policy-s3) 섹션을 참조하세요.

VPC 엔드포인트에 대한 자세한 정보는 *Amazon VPC 사용 설명서사용 설명서*의 [인터페이스 VPC 엔드포인트(AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)를 참조합니다.

## Image Builder VPC 엔드포인트에 대한 고려 사항
<a name="vpc-endpoint-considerations"></a>

Image Builder에 대한 인터페이스 VPC 엔드포인트를 설정하기 전에 *Amazon VPC 사용 설명서*에서 [인터페이스 엔드포인트 속성 및 제한 사항](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#vpce-interface-limitations)을 검토해야 합니다.

Image Builder는 VPC에서 모든 API 작업에 대한 호출 수행을 지원합니다.

## Image Builder용 인터페이스 VPC 엔드포인트 생성하기
<a name="vpc-endpoint-create"></a>

Image Builder 서비스에 대한 VPC 엔드포인트를 생성하려면 Amazon VPC 콘솔 또는 AWS Command Line Interface ()를 사용할 수 있습니다AWS CLI. 자세한 내용은 *Amazon VPC 사용 설명서(Amazon VPC User Guide)*의 [인터페이스 엔드포인트 생성(Creating an interface endpoint)](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint)을 참조합니다.

다음 서비스 이름을 사용하여 Image Builder용 VPC 엔드포인트를 생성합니다.
+ com.amazonaws.*region*.imagebuilder

엔드포인트에 프라이빗 DNS를 사용하도록 설정하는 경우, 리전에 대한 기본 DNS 이름(예: `imagebuilder.us-east-1.amazonaws.com`)을 사용하여 Image Builder에 API 요청을 할 수 있습니다. 대상 리전에 적용되는 엔드포인트를 조회하려면 *Amazon Web Services 일반 참조*의 [EC2 Image Builder 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/imagebuilder.html#imagebuilder_region)을 참조합니다.

자세한 내용은 *Amazon VPC 사용 설명서(Amazon VPC User Guide)*의 [인터페이스 엔드포인트를 통해 서비스 액세스(Accessing a service through an interface endpoint)](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#access-service-though-endpoint)를 참조합니다.

## Image Builder에 대한 VPC 엔드포인트 정책 생성하기
<a name="vpc-endpoint-policy"></a>

Image Builder에 대한 액세스를 제어하는 VPC 엔드포인트에 엔드포인트 정책을 연결할 수 있습니다. 이 정책은 다음 정보를 지정합니다.
+ 작업을 수행할 수 있는 위탁자.
+ 수행할 수 있는 작업.
+ 작업을 수행할 있는 리소스.

레시피에서 Amazon 관리 구성 요소를 사용하는 경우 Image Builder의 VPC 엔드포인트는 다음과 같은 서비스 소유 구성 요소 라이브러리에 대한 액세스를 허용해야 합니다.

`arn:aws:imagebuilder:region:aws:component/*`

**중요**  
기본값이 아닌 정책이 EC2 Image Builder의 인터페이스 VPC 엔드포인트에 적용되는 경우에서 실패하는 것과 같은 특정 실패한 API 요청은 AWS CloudTrail 또는 Amazon CloudWatch에 로깅되지 않을 `RequestLimitExceeded`수 있습니다.

자세한 내용은 *Amazon VPC 사용 설명서(Amazon VPC User Guide)*의 [VPC 엔드포인트를 통해 서비스에 대한 액세스 제어(Controlling access to services with VPC endpoints)](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)를 참조합니다.

### S3 버킷 액세스에 대한 사용자 지정 정책
<a name="vpc-endpoint-policy-s3"></a>

Image Builder는 공개적으로 사용 가능한 S3 버킷을 사용하여 구성 요소와 같은 관리형 리소스를 저장하고 액세스합니다. 또한 별도의 S3 버킷에서 AWSTOE 구성 요소 관리 애플리케이션을 다운로드합니다. 환경에서 Amazon S3용 VPC 엔드포인트를 사용하는 경우, Image Builder가 다음 S3 버킷에 액세스할 수 있도록 S3 VPC 엔드포인트 정책이 허용되는지 확인해야 합니다. 버킷 이름은 AWS 리전(*리전*) 및 애플리케이션 환경(*환경*)별로 고유합니다. Image Builder 및는 `prod`, `preprod`및 애플리케이션 환경을 AWSTOE 지원합니다`beta`.
+  AWSTOE 구성 요소 관리자 버킷:

  ```
  s3://ec2imagebuilder-toe-region-environment
  ```

  **예:** s3://ec2imagebuilder-toe-us-west-2-prod/\$1
+ Image Builder는 리소스 버킷을 관리합니다.

  ```
  s3://ec2imagebuilder-managed-resources-region-environment/components
  ```

  **예:** s3://ec2imagebuilder-managed-resources-us-west-2-prod/components/\$1

### VPC 엔드포인트 정책 예제
<a name="vpc-endpoint-policy-examples"></a>

이 섹션에는 사용자 지정 VPC 엔드포인트 정책의 예가 포함되어 있습니다.

**Image Builder 작업에 대한 일반 VPC 엔드포인트 정책**  
Image Builder에 대한 다음 예제 엔드포인트 정책은 Image Builder 이미지 및 구성 요소 삭제 권한을 거부합니다. 또한 이 정책 예에서는 다른 모든 EC2 Image Builder 작업을 수행할 수 있는 권한을 부여합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": "imagebuilder:*",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "imagebuilder:DeleteImage",
            "Effect": "Deny",
            "Resource": "*"
        },
        {
            "Action": "imagebuilder:DeleteComponent",
            "Effect": "Deny",
            "Resource": "*"
        }
    ]
}
```

------

**조직별 액세스 제한, 관리되는 구성 요소 액세스 허용하기**  
다음 예제 엔드포인트 정책은 조직에 속한 아이덴티와 리소스에 대한 액세스를 제한하고 Amazon 관리형 Image Builder 구성 요소에 대한 액세스를 제공하는 방법을 보여줍니다. *region*, *principal-org-id* 및 *resource-org-id*를 해당 조직의 값으로 바꿉니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRequestsByOrgsIdentitiesToOrgsResources",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalOrgID": "principal-org-id",
                    "aws:ResourceOrgID": "resource-org-id"
                }
            }
        },
        {
            "Sid": "AllowAccessToEC2ImageBuilderComponents",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "imagebuilder:GetComponent"
            ],
            "Resource": [
                "arn:aws:imagebuilder:us-east-1:aws:component/*"
            ]
        }
    ]
}
```

------

**Amazon S3 버킷 액세스에 대한 VPC 엔드포인트 정책**  
다음 S3 엔드포인트 정책 예제는 Image Builder가 사용자 지정 이미지를 구축하는 데 사용하는 S3 버킷에 대한 액세스를 제공하는 방법을 보여줍니다. *리전* 및 *환경*을 해당 조직의 값으로 바꿉니다. 애플리케이션 요구 사항에 따라 기타 필수 권한을 정책에 추가합니다.

**참고**  
Linux 이미지의 경우 이미지 레시피에 사용자 데이터를 지정하지 않으면 Image Builder는 스크립트를 추가하여 이미지의 빌드 및 테스트 인스턴스에 Systems Manager 에이전트를 다운로드하고 설치합니다. 에이전트를 다운로드하기 위해 Image Builder는 빌드 리전의 S3 버킷에 액세스합니다.  
Image Builder가 빌드 및 테스트 인스턴스를 부트스트랩할 수 있도록 하려면 S3 엔드포인트 정책에 다음과 같은 다른 리소스를 추가합니다.  
"`arn:aws:s3:::amazon-ssm-region/*`"

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowImageBuilderAccessToAppAndComponentBuckets",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "s3:GetObject"
      ],
      "Resource": [
        "arn:aws:s3:::ec2imagebuilder-toe-region-environment/*",
        "arn:aws:s3:::ec2imagebuilder-managed-resources-region-environment/components/*"
      ]
    }
  ]
}
```

------