기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon EMR을 사용하여 IAM 역할 사용자 지정
보안 요구 사항에 따라 권한을 제한하도록 IAM 서비스 역할 및 권한을 사용자 지정할 수 있습니다. 권한을 사용자가 지정하려면 새로운 역할과 정책을 생성하는 것이 좋습니다. 기본 역할(예: AmazonElasticMapReduceforEC2Role
및 AmazonElasticMapReduceRole
)에 대한 관리형 정책의 권한부터 시작합니다. 그런 다음 내용을 복사하여 새로운 정책 문에 붙여 넣고 권한을 적절하게 수정하고, 이렇게 수정한 권한 정책을 생성한 역할에 연결합니다. 이를 위해서는 역할 및 정책에 대해 작업을 수행할 수 있는 적절한 IAM 권한이 있어야 합니다. 자세한 내용은 사용자와 그룹이 역할을 생성 및 수정할 수 있도록 허용 단원을 참조하십시오.
EC2에 대한 사용자 지정 EMR 역할을 생성하는 경우 동일한 이름의 인스턴스 프로파일이 자동으로 생성되는 기본 워크플로를 따릅니다. Amazon EC2에서는 서로 다른 이름으로 인스턴스 프로파일과 역할을 생성할 수 있지만 Amazon EMR에서는 이 구성을 지원하지 않으므로 클러스터를 생성할 때 '잘못된 인스턴스 프로파일' 오류가 발생합니다.
중요
인라인 정책은 서비스 요구 사항이 변경될 때 자동으로 업데이트되지 않습니다. 인라인 정책을 생성 및 연결하는 경우 서비스 업데이트가 발생하여 갑작스럽게 권한 오류가 발생할 수도 있음을 염두에 두어야 합니다. 자세한 내용은 IAM 사용 설명서에서 관리형 정책 및 인라인 정책 및 클러스터를 생성할 때 사용자 지정 IAM 역할 지정 섹션을 참조하세요.
IAM 역할 작업에 대한 자세한 내용은 IAM 사용 설명서에서 다음 주제를 참조하세요.
클러스터를 생성할 때 사용자 지정 IAM 역할 지정
사용자는 클러스터 생성 시 Amazon EMR에 대한 서비스 역할과 Amazon EC2 인스턴스 프로파일에 대한 역할을 지정할 수 있습니다. 클러스터를 생성하는 사용자는 역할을 검색하고 Amazon EMR 및 EC2 인스턴스에 할당할 수 있는 권한이 있어야 합니다. 그렇지 않으면 account is not authorized to call EC2 오류가 발생합니다. 자세한 내용은 사용자와 그룹이 역할을 생성 및 수정할 수 있도록 허용 단원을 참조하십시오.
콘솔을 사용하여 사용자 지정 역할 지정
클러스터를 생성할 때 Amazon EMR의 사용자 지정 서비스 역할, EC2 인스턴스 프로파일의 사용자 지정 역할 및 고급 옵션을 사용하는 사용자 지정 Auto Scaling 역할을 지정할 수 있습니다. 빠른 옵션을 사용하면 기본 서비스 역할과 EC2 인스턴스 프로필에 대한 기본 역할이 지정됩니다. 자세한 내용은 Amazon EMR에서 사용하는 IAM 서비스 역할 단원을 참조하십시오.
AWS CLI 를 사용하여 사용자 지정 역할 지정
AWS CLI의 create-cluster
명령과 함께 옵션을 사용하여 Amazon EMR에 대한 서비스 역할과 클러스터 EC2 인스턴스에 대한 서비스 역할을 명시적으로 지정할 수 있습니다. --service-role
옵션을 사용하여 서비스 역할을 지정합니다. InstanceProfile
옵션의 --ec2-attributes
인수를 사용하여 EC2 인스턴스 프로파일에 대한 역할을 지정합니다.
Auto Scaling 역할은 별도의 옵션(--auto-scaling-role
)을 사용하여 지정됩니다. 자세한 내용은 Amazon EMR의 인스턴스 그룹에서 사용자 지정 정책과 함께 자동 조정 사용 단원을 참조하십시오.
를 사용하여 사용자 지정 IAM 역할을 지정하려면 AWS CLI
-
다음 명령을 통해 서비스 역할인
MyCustomServiceRoleForEMR
과 클러스터 시작 시 EC2 인스턴스 프로파일에 대한 역할인MyCustomServiceRoleForClusterEC2Instances
을 사용자가 지정할 수 있습니다. 이 예제에서는 기본 Amazon EMR 역할을 사용합니다.참고
가독성을 위해 Linux 줄 연속 문자(\)가 포함됩니다. Linux 명령에 사용하거나 제외할 수 있습니다. Windows에서는 제외시키거나 캐럿(^)으로 바꿉니다.
aws emr create-cluster --name "Test cluster" --release-label
emr-7.6.0
\ --applications Name=Hive Name=Pig --service-roleMyCustomServiceRoleForEMR
\ --ec2-attributes InstanceProfile=MyCustomServiceRoleForClusterEC2Instances
,\ KeyName=myKey --instance-type m5.xlarge --instance-count 3
--use-default-roles
옵션을 사용하기 보다 이들 옵션을 사용하여 기존 역할을 명시적으로 지정할 수 있습니다. --use-default-roles
옵션은 AWS CLI의 config
파일에 정의된 EC2 인스턴스 프로파일에 대한 역할과 서비스 역할을 지정합니다.
다음 예제에서는 Amazon EMR에 대한 사용자 지정 역할을 지정하는 AWS CLI 에 대한 config
파일의 내용을 보여줍니다. 이 구성 파일에서 --use-default-roles
옵션을 지정하면 MyCustomServiceRoleForEMR
및 MyCustomServiceRoleForClusterEC2Instances
를 사용하여 클러스터가 생성됩니다. 기본적으로 config
파일은 기본 service_role
을 AmazonElasticMapReduceRole
로, 기본 instance_profile
을 EMR_EC2_DefaultRole
로 지정합니다.
[default] output = json region = us-west-1 aws_access_key_id =
myAccessKeyID
aws_secret_access_key =mySecretAccessKey
emr = service_role =MyCustomServiceRoleForEMR
instance_profile =MyCustomServiceRoleForClusterEC2Instances