Amazon EMR 클러스터를 생성하려고 하면 다음 오류 메시지 중 하나가 표시됩니다.
"EMR_DefaultRole is invalid"
"EMR_EC2_DefaultRole is invalid"
간략한 설명
이러한 오류는 일반적으로 Amazon EMR 기본 역할에 연결된 하나 이상의 AWS Identity and Access Management(IAM) 정책을 편집할 때 발생합니다. 문제를 해결하려면 수정된 역할을 원래 버전 (AmazonElasticMapReduceRole 또는 AmazonElasticMapReduceforEC2Role)과 비교합니다.
문제의 원인을 찾을 수 없으면 역할을 삭제하고 다시 만듭니다.
해결 방법
수정된 역할을 원래 버전과 비교
IAM 역할 EMR_DefaultRole 또는 EMR_EC2_DefaultRole에 정책을 추가한 경우 수행한 변경 사항을 검토합니다. 역할의 수정된 버전을 원래 버전(AmazonElasticMapReduceRole 또는 AmazonElasticMapReduceforEC2Role)과 비교합니다. 문제의 원인을 확인할 수 없는 경우 다음 섹션에 설명된 대로 역할과 인스턴스 프로파일을 삭제합니다.
역할 및 인스턴스 프로파일 삭제 및 재생성
시작하기 전에 다음 사항에 유의하십시오.
- 삭제하려는 역할 또는 인스턴스 프로파일을 사용하는 EC2 인스턴스가 실행 중인지 확인합니다. 실행 중인 인스턴스와 연결된 역할 또는 인스턴스 프로파일을 삭제하면 인스턴스에서 실행 중인 애플리케이션이 중단됩니다.
- 다음 단계는 EMR_DefaultRole 및 EMR_EC2_DefaultRole을 원래 구성으로 재설정합니다. 이러한 역할에 연결된 IAM 정책을 사용자 지정하면 변경 사항이 손실됩니다.
AWS Management Console
1. IAM 콘솔을 사용하여 역할을 삭제합니다. IAM은 역할과 연결된 인스턴스 프로파일 및 정책을 자동으로 삭제합니다.
2. Amazon EMR 콘솔을 여십시오.
3. EMR 클러스터를 만듭니다. [사용 권한(Permissions)]에 대해 [기본값(Default)]을 선택합니다. Amazon EMR은 클러스터를 시작할 때 기본 역할을 생성합니다. 이러한 역할은 나중에 실행하는 모든 클러스터에서 사용할 수 있습니다.
AWS 명령줄 인터페이스(AWS CLI)
참고: AWS CLI 명령을 실행할 때 오류가 발생하는 경우, 최신 버전의 AWS CLI를 사용하고 있는지 확인하십시오.
1. 인스턴스 프로파일에서 EMR_EC2_DefaultRole을 제거합니다.
aws iam remove-role-from-instance-profile --instance-profile-name EMR_EC2_DefaultRole --role-name EMR_EC2_DefaultRole
2. 인스턴스 프로파일을 삭제합니다.
aws iam delete-instance-profile --instance-profile-name EMR_EC2_DefaultRole
3. EMR_EC2_DefaultRole과 연결된 IAM 정책을 제거합니다.
aws iam detach-role-policy --role-name EMR_EC2_DefaultRole --policy-arn arn:aws:iam::aws:policy/service-role/AmazonElasticMapReduceforEC2Role
4. EMR_EC2_DefaultRole을 삭제합니다.
aws iam delete-role --role-name EMR_EC2_DefaultRole
5. EMR_DefaultRole과 연결된 IAM 정책을 제거합니다.
aws iam detach-role-policy --role-name EMR_DefaultRole --policy-arn arn:aws:iam::aws:policy/service-role/AmazonElasticMapReduceRole
6. EMR_DefaultRole을 삭제하십시오.
aws iam delete-role --role-name EMR_DefaultRole
7. 기본 역할을 다시 만듭니다.
aws emr create-default-roles
8. 새 EMR 클러스터를 시작합니다.
관련 정보
AWS 서비스 및 리소스에 대한 Amazon EMR 권한의 IAM 서비스 역할 구성