Amazon EMR 클러스터 목록 구성 - 아마존 SageMaker

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

Amazon EMR 클러스터 목록 구성

관리자는 사용자가 액세스 권한이 있는 Amazon EMR 클러스터 목록을 볼 수 있도록 Studio를 구성하여 해당 클러스터에 연결할 수 있습니다. 클러스터는 Studio와 동일한 AWS 계정 (단일 계정 탭 선택) 또는 별도의 계정 (교차 계정 탭 선택) 에 배포할 수 있습니다.

참고

Studio는 현재 Studio가 배포된 계정과 다른 AWS 계정에서 생성된 Amazon EMR 클러스터에 액세스하는 것을 지원하지 않습니다. 계정 간 액세스는 Studio Classic에서만 사용할 수 있습니다.

Single account

Amazon EMR 클러스터와 Studio 또는 Studio Classic이 동일한 AWS 계정에 배포된 경우 클러스터에 액세스하는 SageMaker 실행 역할에 다음 권한을 추가하십시오.

참고

어떤 실행 역할을 고려해야 할까요?

Studio UI는 해당 UI를 실행한 사용자 프로필과 관련된 실행 역할에 따라 권한을 결정합니다. UI는 실행 시 이러한 권한을 설정합니다. 하지만 시작하는 스페이스 JupyterLab 또는 Studio Classic 애플리케이션에는 별도의 권한이 있을 수 있습니다.

애플리케이션 (예: Studio UI JupyterLab, Studio Classic) 에서 Amazon EMR 템플릿 및 클러스터에 일관되게 액세스하려면 도메인, 사용자 프로필 또는 스페이스 수준에서 모든 역할에 동일한 권한 하위 집합을 부여하십시오. 권한은 Amazon EMR 클러스터를 검색하고 프로비저닝할 수 있어야 합니다.

  1. 도메인, 사용자 프로필 또는 스페이스의 실행 역할을 찾으십시오. 실행 역할을 검색하는 방법에 대한 자세한 내용은 을 참조하십시오실행 역할 가져오기.

  2. IAM에서 https://console.aws.amazon.com/sagemaker/ 콘솔을 엽니다.

  3. 역할을 선택한 다음 검색 필드에 역할 이름을 입력하여 생성한 역할을 검색합니다.

  4. 링크를 따라 내 역할로 이동하세요.

  5. 권한 추가를 선택한 다음 인라인 정책 생성을 선택합니다.

  6. JSON탭에서 권한과 함께 다음 JSON 정책을 추가합니다.

    • AllowSagemakerProjectManagement를 생성할 수 있습니다. 스튜디오 또는 스튜디오 클래식에서는 를 통해 액세스 권한이 AWS Service Catalog 부여됩니다.

    • AllowClusterDetailsDiscoveryAmazon EMR 클러스터에 대한 검색 및 연결을 AllowClusterDiscovery 허용합니다.

    • AllowPresignedUrlSpark URLs UI에 액세스할 수 있는 사전 서명된 항목을 생성할 수 있습니다.

    제공된 IAM 정책에 정의된 정책은 이러한 JSON 권한을 부여합니다. Replace studio-region 그리고 studio-account 명세서 목록을 역할의 인라인 정책에 복사하기 전에 실제 지역 및 AWS 계정 ID 값을 확인하십시오.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPresignedUrl", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:CreatePersistentAppUI", "elasticmapreduce:DescribePersistentAppUI", "elasticmapreduce:GetPersistentAppUIPresignedURL", "elasticmapreduce:GetOnClusterAppUIPresignedURL" ], "Resource": [ "arn:aws:elasticmapreduce:studio-region:studio-account:cluster/*" ] }, { "Sid": "AllowClusterDetailsDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstances", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:DescribeSecurityConfiguration" ], "Resource": [ "arn:aws:elasticmapreduce:studio-region:studio-account:cluster/*" ] }, { "Sid": "AllowClusterDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:ListClusters" ], "Resource": "*" }, { "Sid": "AllowSagemakerProjectManagement", "Effect": "Allow", "Action": [ "sagemaker:CreateProject", "sagemaker:DeleteProject" ], "Resource": "arn:aws:sagemaker:studio-region:studio-account:project/*" } ] }
  7. 정책 이름을 지정하고 정책 생성을 선택합니다.

Cross account

Amazon EMR 클러스터와 Studio 또는 Studio Classic을 별도의 AWS 계정으로 배포하는 경우 두 계정 모두에 권한을 구성합니다.

아마존 EMR 계정에서

EMRAmazon이 배포된 계정 (신뢰 계정이라고도 함) 에서 다음 ASSUMABLE-ROLE 구성으로 이름이 지정된 사용자 지정 IAM 역할을 생성합니다.

  • 권한: Amazon EMR 리소스에 액세스할 수 ASSUMABLE-ROLE 있도록 필요한 권한을 부여합니다.

  • 신뢰 관계: 액세스가 필요한 Studio 계정에서 역할을 맡을 수 ASSUMABLE-ROLE 있도록 신뢰 정책을 구성합니다.

Studio 또는 Studio Classic은 역할을 맡으면 EMR Amazon에서 필요한 권한에 임시로 액세스할 수 있습니다.

  • 역할에 대한 새 정책을 생성하십시오.

    1. IAM에서 https://console.aws.amazon.com/sagemaker/ 콘솔을 엽니다.

    2. 왼쪽 메뉴에서 정책을 선택한 다음 정책 생성을 선택합니다.

    3. JSON탭에서 권한과 함께 다음 JSON 정책을 추가합니다.

      • AllowClusterDetailsDiscoveryAmazon EMR 클러스터를 검색하고 연결할 수 있도록 AllowClusterDiscovery 하기 위해서입니다.

      • AllowPresignedUrlSpark UI에 액세스할 수 있는 사전 서명된 항목을 생성할 수 있도록 URLs 하기 위함입니다.

      Replace emr-region 그리고 emr-account 정책에 복사하기 전에 실제 지역 및 AWS 계정 ID 값을 입력하세요. JSON

      { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPresignedUrl", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:CreatePersistentAppUI", "elasticmapreduce:DescribePersistentAppUI", "elasticmapreduce:GetPersistentAppUIPresignedURL", "elasticmapreduce:GetOnClusterAppUIPresignedURL" ], "Resource": [ "arn:aws:elasticmapreduce:emr-region:emr-account:cluster/*" ] }, { "Sid": "AllowClusterDetailsDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstances", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:DescribeSecurityConfiguration" ], "Resource": [ "arn:aws:elasticmapreduce:emr-region:emr-account:cluster/*" ] }, { "Sid": "AllowClusterDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:ListClusters" ], "Resource": "*" } ] }
    4. 정책 이름을 지정하고 정책 생성을 선택합니다.

  • 이라는 ASSUMABLE-ROLE 사용자 지정 IAM 역할을 만든 다음 새 정책을 역할에 연결합니다.

    1. IAM콘솔의 왼쪽 메뉴에서 역할을 선택한 다음 역할 생성을 선택합니다.

    2. 신뢰할 수 있는 엔티티 유형에서AWS 계정을 선택한 후 다음을 선택합니다.

    3. 방금 생성한 권한을 선택하고 다음을 선택합니다.

    4. 역할 ASSUMABLE-ROLE 이름을 지정한 다음 1단계: 신뢰할 수 있는 엔티티 선택 오른쪽에 있는 편집 버튼을 선택합니다.

    5. 신뢰할 수 있는 엔티티 유형의 경우 사용자 지정 신뢰 정책을 선택한 후 다음 신뢰 관계를 붙여넣습니다. 이렇게 하면 Studio가 배포된 계정 (신뢰할 수 있는 계정) 에 이 역할을 수임할 권한이 부여됩니다.

      Replace studio-account 실제 AWS 계정 ID와 함께 Next(다음)를 선택합니다.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::studio-account:root" }, "Action": "sts:AssumeRole" } ] }
    6. 방금 생성한 권한을 다시 찾아 선택한 후 다음을 선택합니다.

    7. 가장 최근에 JSON 붙여넣은 것으로 신뢰 정책을 업데이트해야 합니다. 역할 생성을 선택합니다.

스튜디오 계정에서

Studio 또는 Studio Classic이 배포된 계정 (신뢰할 수 있는 계정이라고도 함) 에서 다음 인라인 정책으로 클러스터에 액세스하는 SageMaker 실행 역할을 업데이트하십시오.

정책은 다른 계정의 리소스를 검색할 때 계정 간 역할 가정을 허용해야 합니다.

참고

어떤 실행 역할을 고려해야 할까요?

Studio UI는 해당 UI를 실행한 사용자 프로필과 관련된 실행 역할에 따라 권한을 결정합니다. UI는 실행 시 이러한 권한을 설정합니다. 하지만 시작하는 스페이스 JupyterLab 또는 Studio Classic 애플리케이션에는 별도의 권한이 있을 수 있습니다.

애플리케이션 (예: Studio UI JupyterLab, Studio Classic) 에서 Amazon EMR 템플릿 및 클러스터에 일관되게 액세스하려면 도메인, 사용자 프로필 또는 스페이스 수준에서 모든 역할에 동일한 권한 하위 집합을 부여하십시오. 권한은 Amazon EMR 클러스터를 검색하고 프로비저닝할 수 있어야 합니다.

  1. 도메인, 사용자 프로필 또는 스페이스의 실행 역할을 찾으십시오. 실행 역할을 검색하는 방법에 대한 자세한 내용은 을 참조하십시오실행 역할 가져오기.

  2. IAM에서 https://console.aws.amazon.com/sagemaker/ 콘솔을 엽니다.

  3. 역할을 선택한 다음 검색 필드에 역할 이름을 입력하여 생성한 역할을 검색합니다.

  4. 링크를 따라 내 역할로 이동하세요.

  5. 실행 역할 세부 정보 페이지에서 권한 추가를 선택한 다음 인라인 정책 생성을 선택합니다.

  6. JSON탭에서 다음 JSON 정책을 추가합니다. Replace emr-account 정책에 복사하기 전에 실제 Amazon EMR 계정 ID 값을 입력하십시오. JSON

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRoleAssumptionForCrossAccountDiscovery", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": ["arn:aws:iam::emr-account:role/ASSUMABLE-ROLE" ] }] }
  7. 다음을 선택한 후 정책 이름을 입력합니다.

  8. 정책 생성을 선택합니다.

  9. Studio와 동일한 계정에 배포된 Amazon EMR 클러스터를 나열할 수 있도록 하려면 의 Amazon EMR 클러스터 목록 구성단일 계정 탭에 정의된 대로 Studio 실행 역할에 인라인 정책을 추가합니다.

Jupyter 서버 시작 ARN 시 역할을 전달하십시오.

마지막으로 Studio 실행 역할에 역할을 제공하는 방법에 대해 계정 간 액세스를 위한 추가 구성 ASSUMABLE-ROLE 알아보려면 를 참조하십시오. ARN 시작 시 Jupyter 서버에서 ARN 로드됩니다. Studio에서 사용하는 실행 역할은 신뢰할 수 있는 계정에서 Amazon EMR 클러스터를 검색하기 위한 교차 계정 역할을 가정합니다.

Studio 또는 Studio Classic 노트북에서 Amazon EMR 클러스터를 검색하고 연결하는 방법에 대해 알아보려면 방문하십시오스튜디오 또는 스튜디오 클래식의 Amazon EMR 클러스터 목록.