사용자에게 Amazon EMR on 액세스 권한 부여 EKS - 아마존 EMR

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

사용자에게 Amazon EMR on 액세스 권한 부여 EKS

Amazon에서 수행하는 모든 EMR 작업에는 EKS 해당 작업에 대한 해당 IAM 권한이 필요합니다. Amazon EMR on IAM EKS Actions를 수행할 수 있는 정책을 생성하고 사용하는 IAM 사용자 또는 역할에 정책을 연결해야 합니다.

이 주제에서는 새 정책을 생성하여 사용자에게 연결하는 단계를 제공합니다. 또한 Amazon EMR on EKS 환경을 설정하는 데 필요한 기본 권한도 다룹니다. 비즈니스 요구 사항에 따라 가능하면 항상 특정 리소스에 대한 권한을 구체화하는 것이 좋습니다.

새 IAM 정책을 생성하여 콘솔에서 IAM 사용자에게 연결

새 IAM 정책 생성
  1. 에 AWS Management Console 로그인하고 에서 IAM 콘솔을 엽니다 https://console.aws.amazon.com/iam/.

  2. IAM콘솔의 왼쪽 탐색 창에서 정책을 선택합니다.

  3. 정책(Policies) 페이지에서 정책 생성(Create Policy)을 선택합니다.

  4. 정책 생성 창에서 편집 JSON 탭으로 이동합니다. 이 절차 다음에 나오는 예와 같이 하나 이상의 JSON 설명이 포함된 정책 문서를 생성합니다. 다음으로 정책 검토를 선택합니다.

  5. [정책 검토(Review Policy)] 화면에서 [정책 이름(Policy Name)]을 입력합니다(예: AmazonEMROnEKSPolicy). 정책의 이름과 설명(선택 사항)을 입력하고 정책 생성을 선택합니다.

사용자 또는 역할에 정책 연결
  1. 에 AWS Management Console 로그인하고 IAM 콘솔을 여십시오. https://console.aws.amazon.com/iam/

  2. 탐색 창에서 Policies를 선택합니다.

  3. 정책 목록에서, 이전 섹션에서 생성한 정책 옆의 확인란을 선택합니다. [Filter] 메뉴와 검색 상자를 사용하여 정책 목록을 필터링할 수 있습니다.

  4. 정책 조치를 선택한 후 연결을 선택합니다.

  5. 정책을 연결할 사용자 또는 역할을 선택합니다. 필터 메뉴와 검색 상자를 사용하면 보안 주체 개체 목록을 필터링할 수 있습니다. 정책을 추가할 사용자 또는 역할을 선택한 후 정책 연결을 선택합니다.

가상 클러스터 관리를 위한 권한

AWS 계정의 가상 클러스터를 관리하려면 다음 권한이 포함된 IAM 정책을 생성하십시오. 이러한 권한을 통해 AWS 계정에서 가상 클러스터를 생성, 나열, 설명 및 삭제할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "emr-containers.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "emr-containers:CreateVirtualCluster", "emr-containers:ListVirtualClusters", "emr-containers:DescribeVirtualCluster", "emr-containers:DeleteVirtualCluster" ], "Resource": "*" } ] }

EMRAmazon은 Amazon EKS 클러스터 액세스 관리 (CAM) 와 통합되므로 Amazon 클러스터의 네임스페이스에서 Amazon EMR Spark 작업을 실행하는 데 필요한 AuthN 및 AuthZ 정책 구성을 자동화할 수 있습니다. EKS 이렇게 하려면 다음과 같은 권한이 있어야 합니다.

{ "Effect": "Allow", "Action": [ "eks:CreateAccessEntry" ], "Resource": "arn:<AWS_PARTITION>:eks:<AWS_REGION>:<AWS_ACCOUNT_ID>:cluster/<EKS_CLUSTER_NAME>" }, { "Effect": "Allow", "Action": [ "eks:DescribeAccessEntry", "eks:DeleteAccessEntry", "eks:ListAssociatedAccessPolicies", "eks:AssociateAccessPolicy", "eks:DisassociateAccessPolicy" ], "Resource": "arn:<AWS_PARTITION>:eks:<AWS_REGION>:<AWS_ACCOUNT_ID>:access-entry/<EKS_CLUSTER_NAME>/role/<AWS_ACCOUNT_ID>/AWSServiceRoleForAmazonEMRContainers/*" }

자세한 내용은 Amazon EMR on의 클러스터 액세스 자동 활성화를 참조하십시오EKS.

AWS 계정에서 처음으로 CreateVirtualCluster 작업을 호출하는 경우 Amazon on에 대한 서비스 연결 역할을 생성할 수 있는 CreateServiceLinkedRole 권한도 필요합니다. EMR EKS 자세한 내용은 Amazon EMR on EKS에 대한 서비스 연결 역할 사용 단원을 참조하십시오.

작업을 제출하기 위한 권한

AWS 계정의 가상 클러스터에서 작업을 제출하려면 다음 권한이 포함된 IAM 정책을 생성하십시오. 이러한 권한을 통해 계정의 모든 가상 클러스터에 대한 작업 실행을 시작, 나열, 설명 및 취소할 수 있습니다. 작업을 제출하기 전에 가상 클러스터의 상태를 확인할 수 있도록 가상 클러스터를 나열하거나 설명하기 위한 권한을 추가하는 것을 고려해야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-containers:StartJobRun", "emr-containers:ListJobRuns", "emr-containers:DescribeJobRun", "emr-containers:CancelJobRun" ], "Resource": "*" } ] }

디버깅 및 모니터링을 위한 권한

Amazon S3에 푸시된 로그에 액세스하거나 Amazon EMR 콘솔에서 애플리케이션 이벤트 로그를 보려면 다음 권한을 가진 IAM 정책을 생성하십시오. CloudWatch 비즈니스 요구 사항에 따라 가능하면 항상 특정 리소스에 대한 권한을 구체화하는 것이 좋습니다.

중요

Amazon S3 버킷을 생성하지 않은 경우 정책 명령문에 s3:CreateBucket 권한을 추가해야 합니다. 로그 그룹을 생성하지 않은 경우 정책 명령문에 logs:CreateLogGroup을 추가해야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-containers:DescribeJobRun", "elasticmapreduce:CreatePersistentAppUI", "elasticmapreduce:DescribePersistentAppUI", "elasticmapreduce:GetPersistentAppUIPresignedURL" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "logs:Get*", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" } ] }

Amazon S3에 로그를 푸시하도록 작업 실행을 구성하는 방법에 대한 자세한 내용은 S3 로그를 사용하도록 작업 실행 구성 및 CloudWatch 로그를 사용하도록 작업 실행 구성을 참조하십시오. CloudWatch