Elastic Beanstalk 인스턴스 프로파일 관리 - AWS Elastic Beanstalk

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

Elastic Beanstalk 인스턴스 프로파일 관리

인스턴스 프로파일이란 AWS Identity and Access Management(IAM) 역할을 위한 컨테이너로서 인스턴스 시작 시 Amazon EC2 인스턴스에 역할 정보를 전달하는 데 사용됩니다.

AWS 계정에 EC2 인스턴스 프로파일이 없는 경우 IAM 서비스를 사용하여 프로파일을 만들어야 합니다. 그런 다음 생성한 새 환경에 EC2 인스턴스 프로파일을 할당할 수 있습니다. Create Environment 마법사는 필요한 권한이 있는 EC2 인스턴스 프로파일을 생성할 수 있도록 IAM 서비스를 안내하는 정보를 제공합니다. 인스턴스 프로파일을 생성한 후 콘솔로 돌아가 이를 EC2 인스턴스 프로파일로 선택하고 환경 생성 단계를 계속할 수 있습니다.

참고

이전에 Elastic Beanstalk는 AWS 계정이 처음으로 환경을 생성할 때 이름이 aws-elasticbeanstalk-ec2-role인 기본 EC2 인스턴스 프로파일을 생성했습니다. 이 인스턴스 프로파일에는 기본 관리형 정책이 포함되었습니다. 계정에 이미 이 인스턴스 프로파일이 있는 경우 사용자 환경에 계속 할당할 수 있습니다.

그러나 최근 AWS 보안 지침에서는 AWS 서비스가 다른 AWS 서비스(이 경우 EC2)에 대한 신뢰 정책을 사용하여 역할을 자동으로 생성하는 것을 허용하지 않습니다. 이러한 보안 지침 때문에 Elastic Beanstalk는 더 이상 기본 aws-elasticbeanstalk-ec2-role 인스턴스 프로파일을 생성하지 않습니다.

관리형 정책

Elastic Beanstalk는 사용자 환경이 다양한 사용 사례를 충족할 수 있도록 여러 관리형 정책을 제공합니다. 환경의 기본 사용 사례를 충족하려면 이러한 정책을 EC2 인스턴스 프로파일의 역할에 연결해야 합니다.

  • AWSElasticBeanstalkWebTier – 애플리케이션에서 Amazon S3에 로그를 업로드하고 AWS X-Ray에 디버깅 정보를 업로드할 수 있는 권한을 부여합니다. 관리형 정책 콘텐츠를 확인하려면 AWS 관리형 정책 참조 안내서의 AWSElasticBeanstalkWebTier 페이지를 참조하세요.

  • AWSElasticBeanstalkWorkerTier – 대기열 관리, 리더 선출, 정기적 작업을 비롯하여 로그 업로드, 디버깅, 측정치 게시, 작업자 인스턴스 작업 등에 대한 권한을 부여합니다. 관리형 정책 콘텐츠를 확인하려면 AWS 관리형 정책 참조 안내서의 AWSElasticBeanstalkWorkerTier 페이지를 참조하세요.

  • AWSElasticBeanstalkMulticontainerDocker – Amazon Elastic Container Service에서 Docker 환경의 클러스터 작업을 조정할 수 있는 권한을 부여합니다. 관리형 정책 콘텐츠를 확인하려면 AWS 관리형 정책 참조 안내서의 AWSElasticBeanstalkMulticontainerDocker 페이지를 참조하세요.

EC2에 대한 신뢰 관계 정책

환경의 EC2 인스턴스에서 필수적인 역할을 수임하도록 허용하려면 다음과 같이 인스턴스 프로파일에서 Amazon EC2를 신뢰 관계 정책의 신뢰할 수 있는 엔터티로 지정해야 합니다.

{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

권한을 사용자 지정하려면 정책을 기본 인스턴스 프로파일에 연결된 역할에 추가하거나 제한된 권한 세트를 보유한 인스턴스 프로파일을 직접 생성합니다.

인스턴스 프로파일 생성

인스턴스 프로파일은 표준 IAM 역할을 둘러싼 래퍼로서 EC2 인스턴스에서 역할을 수임하도록 허용합니다. 추가 인스턴스 프로파일을 만들어 다양한 애플리케이션에 대한 권한을 사용자 지정할 수 있습니다. 또는 해당 기능을 사용하지 않는 경우 작업자 계층 또는 ECS 관리형 Docker 환경에 대한 권한을 부여하지 않는 인스턴스 프로파일을 만들 수 있습니다.

인스턴스 프로파일을 생성하려면
  1. IAM 콘솔에서 역할(Roles) 페이지를 엽니다.

  2. 역할 생성(Create role)을 선택합니다.

  3. 신뢰할 수 있는 엔터티 유형에서 AWS 서비스를 선택합니다.

  4. 사용 사례(Use case)에서 EC2를 선택합니다.

  5. 다음(Next)을 선택합니다.

  6. Elastic Beanstalk에서 제공되는 적절한 관리형 정책과 애플리케이션에 필요한 권한을 제공하는 추가 정책을 연결합니다.

  7. 다음(Next)을 선택합니다.

  8. 역할 이름을 입력합니다.

  9. (선택 사항) 태그를 역할에 추가합니다.

  10. 역할 생성을 선택합니다.

사용자 인스턴스 프로파일에 할당된 권한 확인

기본 인스턴스 프로파일에 할당된 권한은 만들어진 시기, 환경을 마지막으로 시작한 시간, 사용한 클라이언트 등에 따라 다를 수 있습니다. IAM 콘솔에서 기본 인스턴스 프로파일의 권한을 확인할 수 있습니다.

기본 인스턴스 프로파일의 권한을 확인하려면
  1. IAM 콘솔에서 역할(Roles) 페이지를 엽니다.

  2. EC2 인스턴스 프로파일로 할당된 역할을 선택합니다.

  3. 권한 탭에서 역할에 연결된 정책 목록을 검토합니다.

  4. 정책이 부여하는 권한을 보려면 해당 정책을 선택합니다.

만료된 기본 인스턴스 프로파일 업데이트

기본 인스턴스 프로파일에 필요한 권한이 없는 경우 EC2 인스턴스 프로파일에 할당된 역할에 관리형 정책을 수동으로 추가할 수 있습니다.

기본 인스턴스 프로파일에 연결된 역할에 관리형 정책을 추가하려면
  1. IAM 콘솔에서 역할(Roles) 페이지를 엽니다.

  2. EC2 인스턴스 프로파일로 할당된 역할을 선택합니다.

  3. 권한(Permissions) 탭에서 정책 연결(Attach policies)을 선택합니다.

  4. AWSElasticBeanstalk를 입력하여 정책을 필터링합니다.

  5. 다음 정책을 선택한 후 정책 연결을 선택합니다.

    • AWSElasticBeanstalkWebTier

    • AWSElasticBeanstalkWorkerTier

    • AWSElasticBeanstalkMulticontainerDocker

기본 인스턴스 프로파일에 권한 추가

애플리케이션에서 기본 인스턴스 프로파일에 권한이 부여되지 않은 AWS API 또는 리소스에 액세스할 경우 IAM 콘솔에서 권한을 부여하는 정책을 추가합니다.

기본 인스턴스 프로파일에 연결된 역할에 정책을 추가하려면
  1. IAM 콘솔에서 역할(Roles) 페이지를 엽니다.

  2. EC2 인스턴스 프로파일로 할당된 역할을 선택합니다.

  3. 권한(Permissions) 탭에서 정책 연결(Attach policies)을 선택합니다.

  4. 애플리케이션이 사용하는 추가 서비스의 관리형 정책을 선택합니다. 예: AmazonS3FullAccess 또는 AmazonDynamoDBFullAccess.

  5. 정책 연결(Attach policies)을 선택합니다.