AMI배포 구성 생성 및 업데이트 - EC2Image Builder

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

AMI배포 구성 생성 및 업데이트

이 섹션에서는 Image Builder의 배포 구성 생성 및 업데이트에 대해 설명합니다AMI.

콘솔에서 AMI 배포 구성을 생성하십시오.

배포 구성에는 출력 AMI 이름, 암호화에 대한 특정 지역 설정, 시작 권한 등이 포함됩니다. AWS 계정, 출력을 시작할 수 있는 조직 및 조직 구성 단위 (OUs)AMI, 라이선스 구성

새 AMI 배포 구성을 만들려면:
  1. 에서 EC2 Image Builder 콘솔을 엽니다 https://console.aws.amazon.com/imagebuilder/.

  2. 탐색 창에서 배포 설정을 선택합니다. 여기에는 사용자 계정에서 생성된 배포 구성 목록이 표시됩니다.

  3. 배포 설정 패널 상단에 있는 배포 설정 만들기를 선택합니다.

  4. 이미지 유형 섹션에서 Amazon 머신 이미지 (AMI) 출력 유형을 선택합니다.

  5. 일반 섹션에서 배포 구성의 이름과 설명(선택 사항)을 입력합니다.

  6. 지역 설정 섹션에서 제품을 배포할 각 지역에 대한 다음 세부 정보를 입력합니다. AMI

    1. 기본적으로 현재 지역 (지역 1) 에 AMI 배포됩니다. 리전 1은 배포의 소스입니다. 리전 1의 일부 설정은 편집할 수 없습니다. 추가하는 모든 리전의 경우 지역 드롭다운 목록에서 리전을 선택할 수 있습니다.

      Kms 키는 다음을 식별합니다. AWS KMS key 이는 대상 지역의 이미지 EBS 볼륨을 암호화하는 데 사용됩니다. 단, 빌드가 소스 지역 (지역 1) 의 사용자 계정으로 만든 AMI 원본에는 적용되지 않는다는 점에 유의하세요. 빌드의 배포 단계에서 실행되는 암호화는 다른 계정이나 리전에 배포되는 이미지에만 적용됩니다.

      계정의 소스 지역에서 생성된 EBS 볼륨을 암호화하려면 이미지 레시피 블록 디바이스 매핑 (콘솔의 스토리지 (볼륨)) 에서 KMS 키를 설정해야 합니다. AMI

      Image Builder는 리전에 지정한 타겟 계정에 데이터를 복사합니다. AMI

      전제 조건

      계정 간에 이미지를 복사하려면 모든 배포 대상 계정에서 EC2ImageBuilderDistributionCrossAccountRole 역할을 만들고 Ec2ImageBuilderCrossAccountDistributionAccess 정책 관리형 정책을 역할에 연결해야 합니다.

      출력 AMI 이름은 선택사항입니다. 이름을 제공하는 경우 최종 출력 AMI 이름에는 빌드 시점의 타임스탬프가 추가됩니다. AMI 이름을 지정하지 않으면 Image Builder에서 레시피 이름에 빌드 타임스탬프를 추가합니다. 이렇게 하면 각 빌드에 고유한 AMI 이름이 지정됩니다.

      1. AMI공유를 통해 지정된 항목에 액세스 권한을 부여할 수 있습니다. AWS 보안 주체를 사용하여 인스턴스를 시작할 수 있습니다. AMI AMI공유 섹션을 확장하면 다음 세부 정보를 입력할 수 있습니다.

        • 실행 권한 - 비공개로 유지하고 특정 항목에 대한 액세스를 허용하려면 AMI 비공개를 선택합니다. AWS 보안 주체는 사설에서 인스턴스를 시작할 수 있습니다. AMI 퍼블릭으로 설정하려면 퍼블릭을 선택합니다. AMI 모두 AWS 주도자는 퍼블릭에서 인스턴스를 시작할 수 AMI 있습니다.

        • 보안 주체 — 다음 유형의 사용자에게 액세스 권한을 부여할 수 있습니다. AWS 인스턴스 시작 주체:

          • AWS 계정 - 특정 계정에 대한 액세스 권한 부여 AWS account

          • 조직 구성 단위(OU) - OU 및 모든 하위 엔티티에 대한 액세스 권한을 부여합니다. 하위 엔티티에는 다음이 OUs 포함됩니다. AWS 계정.

          • 조직 — 내 계정에 대한 액세스 권한 부여 AWS Organizations및 모든 하위 기관. 하위 엔티티에는 OUs 및 AWS 계정.

            먼저, 보안 주체 유형을 선택합니다. 그런 다음 해당 ID를 입력합니다. AWS 드롭다운 목록 오른쪽에 있는 상자에 액세스 권한을 부여하려는 주체의 주체를 입력합니다. 여러 IDs 유형을 입력할 수 있습니다.

      2. 라이선스 구성 섹션을 확장하여 로 생성한 라이선스 구성을 첨부할 수 있습니다. AWS License Manager Image Builder 이미지에. 라이선스 구성은 기업 계약 조건에 기반한 라이선스 규칙을 포함합니다. Image Builder는 베이스와 관련된 라이선스 구성을 자동으로 포함합니다AMI.

      3. 시작 템플릿 구성 섹션을 확장하여 생성한 인스턴스에서 인스턴스를 시작하는 데 사용할 시작 템플릿을 지정할 AMI 수 있습니다. EC2

        EC2시작 템플릿을 사용하는 경우 Image Builder에서 빌드 완료 후 최신 AMI ID가 포함된 시작 템플릿의 새 버전을 생성하도록 지시할 수 있습니다. 시작 템플릿을 업데이트하려면 다음과 같이 설정을 구성하세요.

        • 시작 템플릿 이름 - Image Builder에서 업데이트하려는 시작 템플릿의 이름을 선택합니다.

        • 기본 버전 설정 - 시작 템플릿 기본 버전을 새 버전으로 업데이트하려면 이 확인란을 선택합니다.

        다른 시작 템플릿 구성을 추가하려면 시작 템플릿 구성 추가를 선택합니다. 리전 당 최대 5개의 시작 템플릿 구성을 보유할 수 있습니다.

    2. 다른 리전의 배포 설정을 추가하려면 리전 추가를 선택합니다.

  7. 완료되면 설정 생성을 선택합니다.

에서 AMIs 출력할 배포 설정을 생성합니다. AWS CLI

배포 구성을 사용하면 AMI 출력의 이름과 설명을 지정하고 다른 사용자에게 권한을 부여할 수 있습니다. AWS 계정 를 실행하려면 AMI 를 다른 계정에 복사하고 다른 계정에 복제하십시오. AMI AMI AWS 지역. 또한 Amazon Simple Storage Service (Amazon S3) 로 내보내거나 출력 창에 대한 빠른 실행을 EC2 구성할 수 있습니다. AMI AMIs AMI공개하려면 시작 권한 승인 계정을 로 설정하십시오all. 를 AMI 공개하기 위한 예시를 참조하십시오 EC2ModifyImageAttribute.

다음 예제는 create-distribution-configuration 명령을 사용하여 사용자를 위한 새 배포 구성을 만드는 방법을 보여줍니다. AMI AWS CLI.

  1. CLI입력 JSON 파일 생성

    JSON파일 편집 도구를 사용하여 다음 예제 중 하나에 표시된 키와 환경에 적합한 값을 포함하는 파일을 생성합니다. 다음 예제는 다음을 정의합니다. AWS 계정, AWS Organizations 또는 조직 단위 (OUs) 에는 지정된 지역에 배포한 AMI 제품을 시작할 권한이 있습니다. 다음 단계에서 사용할 수 있도록 파일 create-ami-distribution-configuration.json 의 이름을 지정합니다.

    Accounts

    이 예에서는 AMI a를 두 지역에 배포하고 다음을 지정합니다. AWS 계정 각 지역에서 시작 권한을 갖고 있습니다.

    { "name": "MyExampleAccountDistribution", "description": "Copies AMI to eu-west-1, and specifies accounts that can launch instances in each Region.", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{imagebuilder:buildDate}}", "description": "An example image name with parameter references", "amiTags": { "KeyName": "Some Value" }, "launchPermission": { "userIds": [ "987654321012" ] } } }, { "region": "eu-west-1", "amiDistributionConfiguration": { "name": "My {{imagebuilder:buildVersion}} image {{imagebuilder:buildDate}}", "amiTags": { "KeyName": "Some value" }, "launchPermission": { "userIds": [ "100000000001" ] } } } ] }
    Organizations and OUs

    이 예제에서는 AMI 를 원본 지역에 배포하고 조직 및 OU 시작 권한을 지정합니다.

    { "name": "MyExampleAWSOrganizationDistribution", "description": "Shares AMI with the Organization and OU", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{ imagebuilder:buildDate }}", "launchPermission": { "organizationArns": [ "arn:aws:organizations::123456789012:organization/o-myorganization123" ], "organizationalUnitArns": [ "arn:aws:organizations::123456789012:ou/o-123example/ou-1234-myorganizationalunit" ] } } } ] }
  2. 작성한 파일을 입력으로 사용하여 다음 명령을 실행합니다.
    aws imagebuilder create-distribution-configuration --cli-input-json file://create-ami-distribution-configuration.json
    참고
    • JSON파일 경로의 시작 부분에 file:// 표기법을 포함해야 합니다.

    • JSON파일 경로는 명령을 실행하는 기본 운영 체제의 적절한 규칙을 따라야 합니다. 예를 들어 Windows에서는 디렉터리 경로를 참조하기 위해 백슬래시(\)를 사용하고 Linux에서는 슬래시(/)를 사용합니다.

    자세한 내용은 create-distribution-configuration 을 참조하십시오. AWS CLI 명령 참조.

콘솔에서 AMI 배포 설정을 업데이트하십시오.

Image Builder 콘솔을 사용하여 AMI 배포 설정을 변경할 수 있습니다. 업데이트된 배포 설정은 향후 모든 자동 및 수동 파이프라인 배포에 사용됩니다. 하지만 변경 사항은 Image Builder에서 이미 배포한 리소스에는 적용되지 않습니다. 예를 들어 나중에 배포에서 제거한 지역에 배포한 경우 이미 배포된 AMI 것은 수동으로 제거할 때까지 해당 지역에 그대로 남아 있습니다. AMI

AMI배포 구성 업데이트
  1. 에서 EC2 Image Builder 콘솔을 엽니다 https://console.aws.amazon.com/imagebuilder/.

  2. 탐색 창에서 배포 설정을 선택합니다. 여기에는 사용자 계정에서 생성된 배포 구성 목록이 표시됩니다.

  3. 세부 정보를 보거나 배포 구성을 업데이트하려면 구성 이름 링크를 선택합니다. 이를 통해 배포 설정의 세부 정보 보기가 열립니다.

    참고

    또한 구성 이름 옆에 있는 확인란을 선택한 다음 세부 정보 보기를 선택할 수 있습니다.

  4. 배포 구성을 편집하려면 배포 세부 정보 섹션의 오른쪽 상단에서 편집을 선택합니다. 배포 구성 이름, 리전 1로 표시되는 기본 리전 등 일부 필드는 잠겨 있습니다. 배포 설정에 대한 자세한 내용은 콘솔에서 AMI 배포 구성을 생성하십시오. 섹션을 참조하세요.

  5. 작업을 마쳤으면 변경 사항 저장을 선택합니다.

출력을 위한 EC2 Fast Launch를 활성화하기 위한 배포 설정을 생성합니다. AMIs

다음 예제는 create-distribution-configuration 명령을 사용하여 사용자 AMI 환경에 맞게 EC2 Fast Launch가 구성된 배포 설정을 생성하는 방법을 보여줍니다. AWS CLI.

참고

Image Builder는 EC2 빠른 실행이 사전 설정된 경우 계정 간 AMIs 배포를 지원하지 않습니다. EC2대상 계정에서 빠른 실행을 활성화해야 합니다.

  1. CLI입력 JSON 파일 생성

    파일 편집 도구를 사용하여 다음 예와 같은 키와 환경에 적합한 값이 포함된 JSON 파일을 생성합니다.

    이 예에서는 최대 병렬 시작 수가 대상 리소스 수보다 크기 때문에 모든 대상 리소스에 대한 인스턴스를 동시에 시작합니다. 이 파일의 이름은 다음 단계에 표시된 명령 예에서 ami-dist-config-win-fast-launch.json입니다.

    { "name": "WinFastLaunchDistribution", "description": "An example of Windows AMI EC2 Fast Launch settings in the distribution configuration.", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{imagebuilder:buildDate}}", "description": "Includes Windows AMI EC2 Fast Launch settings.", "amiTags": { "KeyName": "Some Value" } }, "fastLaunchConfigurations": [{ "enabled": true, "snapshotConfiguration": { "targetResourceCount": 5 }, "maxParallelLaunches": 6, "launchTemplate": { "launchTemplateId": "lt-0ab1234c56d789012", "launchTemplateVersion": "1" } }], "launchTemplateConfigurations": [{ "launchTemplateId": "lt-0ab1234c56d789012", "setDefaultVersion": true }] }] }
    참고

    launchTemplate 섹션에 launchTemplateId 대신 launchTemplateName(을)를 지정할 수 있지만 이름과 ID를 모두 지정할 수는 없습니다.

  2. 작성한 파일을 입력으로 사용하여 다음 명령을 실행합니다.
    aws imagebuilder create-distribution-configuration --cli-input-json file://ami-dist-config-win-fast-launch.json
    참고
    • JSON파일 경로의 시작 부분에 file:// 표기법을 포함해야 합니다.

    • JSON파일 경로는 명령을 실행하는 기본 운영 체제의 적절한 규칙을 따라야 합니다. 예를 들어 Windows에서는 디렉터리 경로를 참조하기 위해 백슬래시(\)를 사용하고 Linux에서는 슬래시(/)를 사용합니다.

    자세한 내용은 create-distribution-configuration 을 참조하십시오. AWS CLI 명령 참조.

에서 출력 VM 디스크에 대한 배포 설정을 생성합니다. AWS CLI

다음 예는 create-distribution-configuration 명령을 사용하여 모든 이미지 빌드와 함께 VM 이미지 디스크를 Amazon S3로 내보내는 배포 설정을 생성하는 방법을 보여줍니다.

  1. CLI입력 JSON 파일 생성

    에서 사용하는 create-distribution-configuration 명령을 간소화할 수 있습니다. AWS CLI. 이렇게 하려면 명령에 전달하려는 모든 내보내기 구성을 포함하는 JSON 파일을 만드십시오.

    참고

    JSON파일에 있는 데이터 값의 명명 규칙은 Image Builder API 작업 요청 매개변수에 지정된 패턴을 따릅니다. API명령 요청 파라미터를 검토하려면 EC2Image Builder API 레퍼런스의 CreateDistributionConfiguration 명령을 참조하십시오.

    데이터 값을 명령줄 매개 변수로 제공하려면 에 지정된 매개 변수 이름을 참조하십시오. AWS CLI 명령 참조. create-distribution-configuration 명령에 대한 옵션.

    다음은 이 예제의 s3ExportConfiguration JSON 개체에 지정하는 매개 변수의 요약입니다.

    • roleName(문자열, 필수) - 이미지를 S3 버킷으로 내보낼 수 있는 VM 가져오기/내보내기 권한을 부여하는 역할의 이름입니다.

    • diskImageFormat(문자열, 필수) - 업데이트된 디스크 이미지를 지원되는 다음 형식 중 하나로 내보냅니다.

      • 가상 하드 디스크 (VHD) — Citrix Xen 및 Microsoft Hyper-V 가상화 제품과 호환됩니다.

      • 스트림에 최적화된 ESX 가상 머신 디스크 (VMDK) - VMware vSphere 버전 4, 5, VMware ESX 6과 호환됩니다.

      • 원시 - 원시 형식.

    • S3bucket(문자열, 필수) - VM의 출력 디스크 이미지를 저장하는 S3 버킷입니다.

    파일을 export-vm-disks.json(으)로 저장합니다. create-distribution-configuration 명령에 파일 이름을 사용합니다.

    { "name": "example-distribution-configuration-with-vm-export", "description": "example", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "description": "example-with-vm-export" }, "s3ExportConfiguration": { "roleName": "vmimport", "diskImageFormat": "RAW", "s3Bucket": "vm-bucket-export" } }], "clientToken": "abc123def4567ab" }
  2. 작성한 파일을 입력으로 사용하여 다음 명령을 실행합니다.
    aws imagebuilder create-distribution-configuration --cli-input-json file://export-vm-disks.json
    참고
    • 파일 경로의 시작 부분에 file:// 표기법을 포함해야 합니다. JSON

    • JSON파일 경로는 명령을 실행하는 기본 운영 체제의 적절한 규칙을 따라야 합니다. 예를 들어 Windows에서는 디렉터리 경로를 참조하기 위해 백슬래시(\)를 사용하고 Linux에서는 슬래시(/)를 사용합니다.

    자세한 내용은 create-distribution-configuration 을 참조하십시오. AWS CLI 명령 참조.

에서 AMI 배포 설정을 업데이트하십시오. AWS CLI

다음 예제는 update-distribution-configuration 명령을 사용하여 배포 설정을 업데이트하는 방법을 보여줍니다. AMI AWS CLI.

  1. CLI입력 JSON 파일 생성

    즐겨 사용하는 JSON 파일 편집 도구를 사용하여 다음 예제에 표시된 키와 환경에 적합한 값을 사용하여 파일을 생성합니다. 이 예제에서는 update-ami-distribution-configuration.json라는 이름의 파일이 사용됩니다.

    { "distributionConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:distribution-configuration/update-ami-distribution-configuration.json", "description": "Copies AMI to eu-west-2, and specifies accounts that can launch instances in each Region.", "distributions": [ { "region": "us-west-2", "amiDistributionConfiguration": { "name": "Name {{imagebuilder:buildDate}}", "description": "An example image name with parameter references", "launchPermissions": { "userIds": [ "987654321012" ] } } }, { "region": "eu-west-2", "amiDistributionConfiguration": { "name": "My {{imagebuilder:buildVersion}} image {{imagebuilder:buildDate}}", "tags": { "KeyName": "Some value" }, "launchPermissions": { "userIds": [ "100000000001" ] } } } ] }
  2. 작성한 파일을 입력으로 사용하여 다음 명령을 실행합니다.
    aws imagebuilder update-distribution-configuration --cli-input-json file://update-ami-distribution-configuration.json
    참고
    • 파일 경로의 시작 부분에 file:// 표기법을 포함해야 합니다. JSON

    • JSON파일 경로는 명령을 실행하는 기본 운영 체제의 적절한 규칙을 따라야 합니다. 예를 들어 Windows에서는 디렉터리 경로를 참조하기 위해 백슬래시(\)를 사용하고 Linux에서는 슬래시(/)를 사용합니다.

    자세한 내용은 update-distribution-configuration 을 참조하십시오. AWS CLI 명령 참조. 배포 구성 리소스의 태그를 업데이트하려면 리소스 태깅 섹션을 참조하세요.