AWS Glue 대화형 세션 시작하기 - Amazon SageMaker

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

AWS Glue 대화형 세션 시작하기

이 가이드에서는 Studio Classic에서 AWS Glue SageMaker 대화형 세션을 시작하고 Jupyter 매직으로 환경을 관리하는 방법을 알아봅니다.

Studio 또는 Studio Classic의 AWS Glue 대화형 세션에 대한 권한

이 섹션에서는 Studio 또는 Studio Classic에서 AWS Glue 대화형 세션을 실행하는 데 필요한 정책을 나열하고 설정하는 방법을 설명합니다. 특히 다음과 같은 방법을 자세히 설명합니다.

  • AwsGlueSessionUserRestrictedServiceRole 관리형 정책을 SageMaker 실행 역할에 연결합니다.

  • SageMaker 실행 역할에 인라인 사용자 지정 정책을 생성합니다.

  • SageMaker 실행 역할의 신뢰 관계를 수정합니다.

AwsGlueSessionUserRestrictedServiceRole 관리형 정책을 실행 역할에 연결하려면
  1. IAM 콘솔 을 엽니다.

  2. 왼쪽 패널에서 역할을 선택합니다.

  3. 사용자 프로필에서 사용하는 Studio Classic 실행 역할을 찾습니다. 사용자 프로필을 보는 방법에 대한 자세한 내용은 섹션을 참조하세요도메인의 사용자 프로필 보기.

  4. 역할 이름을 선택하여 역할 요약 페이지에 액세스합니다.

  5. 권한 탭의 권한 추가 드롭다운 메뉴에서 정책 연결을 선택합니다.

  6. AwsGlueSessionUserRestrictedServiceRole 관리형 정책 옆의 확인란을 선택합니다.

  7. 정책 연결을 선택합니다.

    요약 페이지에는 새로 추가된 관리형 정책이 표시됩니다.

실행 역할에 대한 인라인 사용자 지정 정책을 생성하려면
  1. 권한 추가 드롭다운 메뉴에서 인라인 정책 생성을 선택합니다.

  2. JSON 탭을 선택합니다.

  3. 다음 정책을 복사하여 붙여 넣습니다.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "unique_statement_id", "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole", "sts:GetCallerIdentity" ], "Resource": "*" } ] }
  4. 정책 검토를 선택합니다.

  5. 이름을 입력한 다음 정책 생성을 선택합니다.

    요약 페이지에는 새로 추가된 사용자 지정 정책이 표시됩니다.

실행 역할에 대한 신뢰 관계를 수정하려면
  1. 신뢰 관계 탭을 선택합니다.

  2. 신뢰 정책 편집을 선택합니다.

  3. 다음 정책을 복사하여 붙여 넣습니다.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "glue.amazonaws.com", "sagemaker.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  4. 정책 업데이트를 선택합니다.

다른 AWS 리소스에 액세스해야 하는 경우 역할과 정책을 추가할 수 있습니다. 포함할 수 있는 추가 역할 및 정책에 대한 설명은 AWS Glue 설명서의 대화형 세션을 IAM 참조하세요.

태그 전파

태그는 일반적으로 비용을 추적 및 할당하고, 세션에 대한 액세스를 제어하고, 리소스를 격리하는 등의 작업에 사용됩니다. 태그 지정을 사용하여 AWS 리소스에 메타데이터를 추가하는 방법에 대해 알아보거나 일반적인 사용 사례에 대한 자세한 내용은 추가 정보 섹션을 참조하세요.

Studio 또는 Studio Classic UI 내에서 에서 생성된 새 AWS Glue 대화형 세션에 AWS 태그를 자동으로 전파할 수 있습니다. Studio 또는 Studio Classic에서 대화형 세션을 생성하면 AWS Glue 사용자 프로필 또는 공유 공간에 연결된 모든 사용자 정의 태그가 새 AWS Glue 대화형 세션으로 전달됩니다. 또한Studio와 Studio Classic은 UI에서 생성된 새 AWS Glue 대화형 세션에 AWS두 개의 생성된 내부 태그((sagemaker:user-profile-arnsagemaker:domain-arn) 또는 (sagemaker:shared-space-arnsagemaker:domain-arn))를 자동으로 추가합니다. 이러한 태그를 사용하여 개별 도메인, 사용자 프로필 또는 공간의 비용을 집계할 수 있습니다.

태그 전파 활성화

새 AWS Glue 대화형 세션에 대한 태그 자동 전파를 활성화하려면 SageMaker 실행 역할 및 AWS Glue 세션과 연결된 IAM 역할에 대해 다음 권한을 설정합니다.

참고

기본적으로 AWS Glue 대화형 세션과 연결된 역할은 SageMaker 실행 역할과 동일합니다. %iam_role 매직 명령을 사용하여 AWS Glue 대화형 세션에 대해 다른 실행 역할을 지정할 수 있습니다. AWS Glue 대화형 세션을 구성하는 데 사용할 수 있는 Jupyter 매직 명령에 대한 자세한 내용은 Studio 또는 Studio Classic에서 AWS Glue 대화형 세션 구성 섹션을 참조하세요.

  • SageMaker 실행 역할 : 새 인라인 정책을 생성하고 다음 JSON 파일을 붙여넣습니다. 이 정책은 실행 역할에 사용자 프로필DescribeUserProfile, 공유 공간 및 도메인에 설정된 태그(DescribeDomain)를 설명(, , DescribeSpaceListTag)하고 SageMaker 나열할 수 있는 권한을 부여합니다.

    { "Effect": "Allow", "Action": [ "sagemaker:ListTags" ], "Resource": [ "arn:aws:sagemaker:*:*:user-profile/*", "arn:aws:sagemaker:*:*:space/*" ] }, { "Effect": "Allow", "Action": [ "sagemaker:DescribeUserProfile" ], "Resource": [ "arn:aws:sagemaker:*:*:user-profile/*" ] }, { "Effect": "Allow", "Action": [ "sagemaker:DescribeSpace" ], "Resource": [ "arn:aws:sagemaker:*:*:space/*" ] } { "Effect": "Allow", "Action": [ "sagemaker:DescribeDomain" ], "Resource": [ "arn:aws:sagemaker:*:*:domain/*" ] }
  • 세션의 IAM AWS Glue 역할 : 새 인라인 정책을 생성하고 다음 JSON 파일을 붙여넣습니다. 정책은 세션에 태그(TagResource)를 첨부하거나 태그 목록(GetTags)을 검색할 수 있는 권한을 역할에 부여합니다.

    { "Effect": "Allow", "Action": [ "glue:TagResource", "glue:GetTags" ], "Resource": [ "arn:aws:glue:*:*:session/*" ] }
참고
  • 이러한 권한을 적용하는 동안 발생하는 실패로 인해 AWS Glue 대화형 세션이 생성되지는 않습니다. Studio 또는 Studio Classic CloudWatch 로그에서 실패 이유에 대한 세부 정보를 찾을 수 있습니다.

  • 태그 값의 업데이트를 전파하려면 AWS Glue 대화형 세션의 커널을 다시 시작해야 합니다.

다음 사항을 명심해야 합니다.

  • 일단 세션에 태그가 첨부되면 전파를 통해 제거할 수 없습니다.

    AWS CLI, AWS Glue API또는 를 통해 직접 AWS Glue 대화형 세션에서 태그를 제거할 수 있습니다https://console.aws.amazon.com/sagemaker/. 예를 들어 AWS CLI를 사용하여 다음과 같이 세션 ARN 및 제거하려는 태그 키를 제공하여 태그를 제거할 수 있습니다.

    aws glue untag-resource \ --resource-arn arn:aws:glue:region:account-id:session:session-name \ --tags-to-remove tag-key1,tag-key2
  • Studio와 Studio Classic은 UI에서 생성된 새 AWS Glue 대화형 세션에 AWS두 개의 생성된 내부 태그((sagemaker:user-profile-arnsagemaker:domain-arn) 또는 (sagemaker:shared-space-arnsagemaker:domain-arn))를 추가합니다. 이러한 태그는 모든 AWS 리소스에 설정된 50개의 태그 한도에 포함됩니다. sagemaker:user-profile-arn 및 에는 모두 자신이 속한 도메인 ID가 sagemaker:shared-space-arn 포함되어 있습니다.

  • aws:, AWS:또는 대문자와 소문자의 조합으로 시작하는 키에 키의 접두사로 태그를 지정하면 전파되지 않고 AWS 사용할 수 있도록 예약됩니다.

추가 정보

자세한 내용은 다음 리소스를 참조할 수도 있습니다.

  • 태그 지정을 사용하여 AWS 리소스에 메타데이터를 추가하는 방법에 대한 자세한 내용은 리소스 태그 지정 AWS 을 참조하세요.

  • 태그를 사용한 비용 추적에 대한 자세한 내용은 Studio 관리 모범 사례의 비용 분석을 참조하세요.

  • 태그 키를 AWS Glue 기반으로 에 대한 액세스를 제어하는 방법에 대한 자세한 내용은 ABAC 의 섹션을 AWS Glue 참조하세요.

Studio 또는 Studio Classic에서 AWS Glue 대화형 세션 시작

역할, 정책 및 SageMaker 도메인을 생성한 후 Studio 또는 Studio Classic에서 AWS Glue 대화형 세션을 시작할 수 있습니다.

  1. 에서 SageMaker 콘솔에 로그인합니다https://console.aws.amazon.com/sagemaker/.

  2. 왼쪽 탐색 창에서 Studio 를 선택합니다.

  3. Studio 랜딩 페이지에서 Studio를 시작할 도메인 및 사용자 프로필을 선택합니다.

  4. Open Studio를 선택하고 JupyterLab 또는 Studio Classic 애플리케이션을 시작합니다.

  5. Jupyter 보기에서 파일, 새로 만들기, 노트북을 차례로 선택합니다.

  6. Studio Classic 사용자의 경우: 이미지 드롭다운 메뉴에서 SparkAnalytics 1.0 또는 SparkAnalytics 2.0을 선택합니다. 커널 드롭다운 메뉴에서 Glue Spark 또는 Glue Python [PySpark 및 Ray]를 선택합니다. 선택을 선택하세요.

    Studio 사용자의 경우 Glue Spark 또는 Glue Python [PySpark and Ray] 커널을 선택합니다.

  7. (선택 사항) Jupyter 매직을 사용하여 환경을 사용자 지정합니다. Jupyter 매직에 대한 자세한 내용은 Studio 또는 Studio Classic에서 AWS Glue 대화형 세션 구성 섹션을 참조하세요.

  8. Spark 데이터 처리 스크립트 작성을 시작하세요. 다음 노트북은 AWS Glue 대화형 세션, 탐색 데이터 분석, 데이터 사전 처리 및 마지막으로 를 사용하여 처리된 데이터에 ETL 대한 모델 훈련을 사용하는 대규모 데이터 세트의 에 대한 워크플로를 보여줍니다 end-to-end SageMaker.

Studio 또는 Studio Classic에서 AWS Glue 대화형 세션 구성

참고

모든 매직 구성은 AWS Glue 커널 수명 동안 후속 세션으로 이월됩니다.

AWS Glue 대화형 세션에서 Jupyter 매직을 사용하여 세션 및 구성 파라미터를 수정할 수 있습니다. Magic은 Jupyter 셀 시작 부분에 % 접두사가 붙은 짧은 명령으로, 환경을 제어하는 데 도움이 되는 빠르고 쉬운 방법을 제공합니다. AWS Glue 대화형 세션에서는 기본적으로 다음과 같은 매직이 설정됩니다.

매직 기본값
%glue_version

3.0

%iam_role

execution role attached to your SageMaker domain

%region

해당 리전

매직을 사용하여 환경을 추가로 사용자 지정할 수 있습니다. 예를 들어 작업에 할당된 작업자 수를 기본 5명에서 10명으로 변경하려는 경우 %number_of_workers 10을 지정할 수 있습니다. 기본값인 2880 대신 10분 간의 유휴 시간이 지나면 세션이 중지되도록 구성하려면 %idle_timeout 10을 지정할 수 있습니다.

현재 에서 사용할 수 있는 모든 Jupyter 매직 AWS Glue 은 Studio 또는 Studio Classic에서도 사용할 수 있습니다. 사용 가능한 AWS Glue 매직의 전체 목록은 Jupyter 및 AWS Glue Studio 노트북에 대한 대화형 세션 구성을 AWS Glue 참조하세요.