암호화된 Batch용 AMI를 생성하려면 어떻게 해야 하나요?

3분 분량
0

AWS Batch를 위한 암호화된 Amazon Machine Image(AMI)를 생성하고 싶습니다.

간략한 설명

사용자 지정 AWS Key Management Service(AWS KMS) 키를 사용하여 AMI를 암호화한 다음 암호화된 AMI를 사용하여 AWS Batch 인스턴스를 시작할 수 있습니다.

해결 방법

Amazon ECS에 최적화된 AMI의 스냅샷 생성

다음 단계를 완료하세요.

  1. Amazon Elastic Container Service(Amazon ECS)에 최적화된 AMI를 기반으로 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 시작합니다.
    참고: AMI를 선택하려면 Amazon ECS에 최적화된 Linux AMI를 참조하세요.
  2. 시작한 EC2 인스턴스의 루트 볼륨에서 스냅샷을 생성합니다.
  3. 요금이 청구되지 않게 하려면 생성한 EC2 인스턴스를 삭제합니다.

스냅샷을 암호화하고 암호화된 스냅샷의 AMI 생성

다음 단계를 완료하세요.

  1. Amazon EC2 콘솔을 엽니다.
  2. 탐색 창의 Elastic Block Store에서 스냅샷을 선택합니다.
  3. 생성한 스냅샷을 선택하고 작업을 선택한 다음 복사를 선택합니다.
  4. 스냅샷 복사 창의 암호화에서 이 스냅샷 암호화를 선택합니다.
  5. KMS 키의 경우 고객이 직접 관리하는 AWS KMS 키를 선택합니다.
    참고: 이 단계에서 암호화에 사용되는 키는 대칭 키입니다.
  6. 스냅샷 복사를 선택합니다.
  7. 완료 상태로 이동한 후 암호화된 스냅샷을 선택하고 작업을 선택한 다음 스냅샷에서 이미지 만들기를 선택합니다.

참고: Amazon EC2 콘솔에서 AMI를 볼 수 있습니다. 탐색 창의 이미지 섹션에서 AMI를 선택합니다.

서비스 연결 역할에 KMS 키에 대한 액세스 권한 부여

Amazon Elastic Block Store(Amazon EBS) 암호화를 위한 고객 관리형 AWS KMS 키를 지정하려면 서비스 연결 역할에 키에 대한 액세스 권한을 부여합니다. 이 액세스를 통해 Amazon EC2 Auto Scaling이 사용자를 대신하여 인스턴스를 시작할 수 있습니다. 이 액세스를 제공하려면 KMS 키의 키 정책을 수정해야 합니다.

정책을 업데이트할 때 AWSServiceRoleForAutoScaling을 KMS 키의 키 사용자로 설정합니다.

이 정책을 사용하려면 Amazon 리소스 이름(ARN)을 KMS 키에 액세스할 수 있는 서비스 연결 역할의 ARN으로 바꿉니다.

정책 예시:

{
  "Id": "key-consolepolicy-3",
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Enable IAM User Permissions",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:root"
      },
      "Action": "kms:*",
      "Resource": "*"
    },
    {
      "Sid": "Allow use of the key",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling"
      },
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
      ],
      "Resource": "*"
    },
    {
      "Sid": "Allow attachment of persistent resources",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling"
      },
      "Action": [
        "kms:CreateGrant",
        "kms:ListGrants",
        "kms:RevokeGrant"
      ],
      "Resource": "*",
      "Condition": {
        "Bool": {
          "kms:GrantIsForAWSResource": "true"
        }
      }
    }
  ]
}

참고: 스팟 컴퓨팅 환경을 가장 적합한 전략으로 사용하는 경우 이전 키 정책에서 AWSServiceRoleForAutoScaling 대신 AWSServiceRoleForEC2SpotFleet을 사용합니다.

새 컴퓨팅 환경 만들기

새 컴퓨팅 환경을 만듭니다.

중요: 컴퓨팅 환경을 만들 때는 사용자 지정 Ami ID 활성화 옵션을 선택해야 합니다. 그런 다음 나타나는 AMI ID 상자에 AMI ID를 입력하고 AMI 검증을 선택합니다.

AWS 공식
AWS 공식업데이트됨 7달 전