다음을 사용하여 RStudio로 Amazon SageMaker 도메인을 생성하십시오. AWS CLI - 아마존 SageMaker

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

다음을 사용하여 RStudio로 Amazon SageMaker 도메인을 생성하십시오. AWS CLI

중요

Amazon SageMaker Studio 또는 Amazon Studio Classic에서 Amazon SageMaker SageMaker 리소스를 생성할 수 있도록 허용하는 사용자 지정 IAM 정책은 해당 리소스에 태그를 추가할 수 있는 권한도 부여해야 합니다. Studio 및 Studio Classic은 생성한 모든 리소스에 자동으로 태그를 지정하기 때문에 리소스에 태그를 추가할 수 있는 권한이 필요합니다. IAM 정책에 따라 Studio 및 Studio Classic에서는 리소스를 생성할 수 있지만 태깅은 허용하지 않는 경우 AccessDenied "“리소스를 생성하려고 할 때 오류가 발생할 수 있습니다. 자세한 정보는 리소스에 태그를 지정할 SageMaker 수 있는 권한을 제공하십시오.을 참조하세요.

AWS 아마존 관리형 정책 SageMaker리소스 생성 권한을 부여하는 내용에는 해당 SageMaker 리소스를 생성할 때 태그를 추가할 수 있는 권한이 이미 포함되어 있습니다.

다음 주제는 를 사용하여 RStudio를 활성화한 상태에서 Amazon SageMaker 도메인에 온보딩하는 방법을 보여줍니다. AWS CLI를 사용하여 온보딩하려면 을 참조하십시오. AWS Management Console아마존 SageMaker 도메인 개요

필수 조건

DomainExecution 역할 생성

RStudio 앱을 시작하려면 DomainExecution 먼저 역할을 제공해야 합니다. 이 역할은 Amazon SageMaker 도메인 생성의 일환으로 RStudio를 시작해야 하는지 여부를 결정하는 데 사용됩니다. Amazon은 이 역할을 사용하여 RStudio SageMaker 라이선스에 액세스하고 RStudio 로그를 푸시할 때도 사용됩니다. 

참고

DomainExecution역할에는 최소한 RStudio AWS License Manager License에 액세스할 수 있는 CloudWatch 권한과 계정의 로그를 푸시할 수 있는 권한이 있어야 합니다.

다음 절차는 AWS CLI를 활용하여 DomainExecution 역할을 생성하는 방법을 보여줍니다.

  1. 다음 콘텐츠가 포함된 assume-role-policy.json이라는 파일을 생성합니다.

    { "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com" ] } } ] }
  2. DomainExecution역할을 생성하세요. <REGION>도메인을 시작할 AWS 지역이어야 합니다.

    aws iam create-role --region <REGION> --role-name DomainExecution --assume-role-policy-document file://assume-role-policy.json
  3. 다음 콘텐츠가 포함된 domain-setting-policy.json이라는 파일을 생성합니다. 이 정책은 R StudioServerPro 앱이 필요한 리소스에 액세스할 수 있도록 허용하고 기존 R StudioServerPro 앱이 Deleted or Failed 상태일 때 Amazon이 R StudioServerPro 앱을 자동으로 SageMaker 시작하도록 허용합니다.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "license-manager:ExtendLicenseConsumption", "license-manager:ListReceivedLicenses", "license-manager:GetLicense", "license-manager:CheckoutLicense", "license-manager:CheckInLicense", "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DeleteLogDelivery", "logs:Describe*", "logs:GetLogDelivery", "logs:GetLogEvents", "logs:ListLogDeliveries", "logs:PutLogEvents", "logs:PutResourcePolicy", "logs:UpdateLogDelivery", "sagemaker:CreateApp" ], "Resource": "*" } ] }
  4. DomainExecution역할에 연결된 도메인 설정 정책을 생성하십시오. 다음 단계에서 해당 ARN을 입력해야 하므로 응답의 PolicyArn을 숙지합니다.

    aws iam create-policy --region <REGION> --policy-name domain-setting-policy --policy-document file://domain-setting-policy.json
  5. domain-setting-policyDomainExecution 역할로 연결합니다. 이전 단계에서 반환된 PolicyArn을 사용합니다.

    aws iam attach-role-policy --role-name DomainExecution --policy-arn <POLICY_ARN>

RStudio SageMaker 앱으로 아마존 도메인 생성

지정된 RStudioServerProDomainSettings 파라미터와 함께 create-domain CLI 명령을 사용하여 Amazon SageMaker 도메인을 생성하면 R StudioServerPro 앱이 자동으로 시작됩니다. R StudioServerPro 앱을 시작할 때 Amazon은 계정에서 유효한 RStudio 라이선스가 SageMaker 있는지 확인하고 라이선스를 찾을 수 없는 경우 도메인 생성에 실패합니다.

Amazon SageMaker 도메인 생성은 인증 방법 및 네트워크 유형에 따라 다릅니다. 인증 방법 하나와 네트워크 연결 유형 하나를 선택하여 이러한 옵션을 함께 사용해야 합니다. 새 도메인 생성 요구 사항에 대한 자세한 내용은 을 참조하십시오 CreateDomain.

지원되는 인증 방법은 다음과 같습니다.

  • IAM Auth

  • SSO Auth

다음과 같은 네트워크 연결 유형이 지원됩니다.

  • PublicInternet

  • VPCOnly

인증 방법

IAM 인증 모드

다음은 RStudio를 활성화하고 IAM Auth 네트워크 유형을 사용하여 Amazon SageMaker 도메인을 생성하는 방법을 보여줍니다. 에 대한 자세한 내용은 AWS Identity and Access ManagementIAM이란 무엇입니까? 를 참조하십시오. .

  • DomainExecutionRoleArn은 이전 단계에서 생성한 역할에 대한 ARN이어야 합니다.

  • ExecutionRoleAmazon SageMaker 도메인의 사용자에게 부여되는 역할의 ARN입니다.

  • vpc-id는 Amazon Virtual Private Cloud의 ID여야 합니다. subnet-ids는 공백으로 구분된 서브넷 ID 목록이어야 합니다. vpc-idsubnet-ids에 대한 자세한 내용은 VPS 및 서브넷을 참고하세요.

  • RStudioPackageManagerUrlRStudioConnectUrl은 선택 사항이며 각각 RStudio Package Manager 및 RStudio Connect 서버의 URL로 설정해야 합니다.

  • app-network-access-typePublicInternetOnly 또는 VPCOnly 중 하나여야 합니다.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode IAM \ --default-user-settings ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings RStudioServerProDomainSettings={RStudioPackageManagerUrl=<<PACKAGE_MANAGER_URL>,RStudioConnectUrl=<<CONNECT_URL>,DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids <SUBNET_IDS> \ --app-network-access-type <NETWORK_ACCESS_TYPE>

IAM Identity Center를 사용한 인증

다음은 RStudio를 활성화하고 SSO Auth 네트워크 유형을 사용하여 Amazon SageMaker 도메인을 생성하는 방법을 보여줍니다. AWS IAM Identity Center 도메인이 시작되는 지역에서 활성화되어야 합니다. IAM ID 센터에 대한 자세한 내용은 무엇입니까 AWS IAM Identity Center? 를 참조하십시오. .

  • DomainExecutionRoleArn은 이전 단계에서 생성한 역할에 대한 ARN이어야 합니다.

  • ExecutionRoleAmazon SageMaker 도메인의 사용자에게 부여되는 역할의 ARN입니다.

  • vpc-id는 Amazon Virtual Private Cloud의 ID여야 합니다. subnet-ids는 공백으로 구분된 서브넷 ID 목록이어야 합니다. vpc-idsubnet-ids에 대한 자세한 내용은 VPS 및 서브넷을 참고하세요.

  • RStudioPackageManagerUrlRStudioConnectUrl은 선택 사항이며 각각 RStudio Package Manager 및 RStudio Connect 서버의 URL로 설정해야 합니다.

  • app-network-access-typePublicInternetOnly 또는 VPCOnly 중 하나여야 합니다.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode SSO \ --default-user-settings ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings RStudioServerProDomainSettings={RStudioPackageManagerUrl=<<PACKAGE_MANAGER_URL>,RStudioConnectUrl=<<CONNECT_URL>,DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids <SUBNET_IDS> \ --app-network-access-type <NETWORK_ACCESS_TYPE>

연결 유형

PublicInternet/Direct 인터넷 네트워크 유형

다음은 RStudio를 활성화하고 PublicInternet 네트워크 유형을 사용하여 Amazon SageMaker 도메인을 생성하는 방법을 보여줍니다.

  • DomainExecutionRoleArn은 이전 단계에서 생성한 역할에 대한 ARN이어야 합니다.

  • ExecutionRoleAmazon SageMaker 도메인의 사용자에게 부여되는 역할의 ARN입니다.

  • vpc-id는 Amazon Virtual Private Cloud의 ID여야 합니다. subnet-ids는 공백으로 구분된 서브넷 ID 목록이어야 합니다. vpc-idsubnet-ids에 대한 자세한 내용은 VPS 및 서브넷을 참고하세요.

  • RStudioPackageManagerUrlRStudioConnectUrl은 선택 사항이며 각각 RStudio Package Manager 및 RStudio Connect 서버의 URL로 설정해야 합니다.

  • auth-modeSSO 또는 IAM 중 하나여야 합니다.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode <AUTH_MODE> \ --default-user-settings ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings RStudioServerProDomainSettings={RStudioPackageManagerUrl=<<PACKAGE_MANAGER_URL>,RStudioConnectUrl=<<CONNECT_URL>,DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids <SUBNET_IDS> \ --app-network-access-type PublicInternetOnly

VPN 전용 모드

다음은 RStudio를 활성화하고 VPCOnly 네트워크 유형을 사용하여 Amazon SageMaker 도메인을 시작하는 방법을 보여줍니다. VPCOnly 네트워크 액세스 유형 사용에 대한 자세한 내용은 a에 있는 Studio 노트북을 외부 VPC 리소스에 연결을 참고하세요.

  • DomainExecutionRoleArn은 이전 단계에서 생성한 역할에 대한 ARN이어야 합니다.

  • ExecutionRoleAmazon SageMaker 도메인의 사용자에게 부여되는 역할의 ARN입니다.

  • vpc-id는 Amazon Virtual Private Cloud의 ID여야 합니다. subnet-ids는 공백으로 구분된 서브넷 ID 목록이어야 합니다. 프라이빗 서브넷은 Amazon에 전화를 걸기 위해 인터넷에 액세스할 수 AWS License Manager 있거나 Amazon 및 Amazon SageMaker 모두에 대한 Amazon VPC 엔드포인트가 있어야 합니다. SageMaker AWS License Manager Amazon VPC 엔드포인트에 대한 자세한 내용은 Amazon VPC 엔드포인트 인터페이스를 참고하세요. vpc-idsubnet-ids에 대한 자세한 내용은 VPC 및 서브넷을 참고하세요.

  • SecurityGroupsAmazon SageMaker 및 AWS License Manager 엔드포인트에 대한 아웃바운드 액세스를 허용해야 합니다.

  • auth-modeSSO 또는 IAM 중 하나여야 합니다.

참고

Amazon Virtual Private Cloud 엔드포인트를 사용하는 경우, Amazon Virtual Private Cloud 엔드포인트에 연결된 보안 그룹은 create-domain CLI 호출의 domain-setting 파라미터의 일부로 전달하는 보안 그룹으로부터의 인바운드 트래픽을 허용해야 합니다.

Amazon은 RStudio를 사용하여 SageMaker 사용자를 대신하여 보안 그룹을 관리합니다. 즉, Amazon은 RSessions가 R StudioServerPro Apps에 액세스할 수 있도록 보안 그룹 규칙을 SageMaker 관리합니다. SageMaker Amazon은 사용자 프로필당 하나의 보안 그룹 규칙을 생성합니다.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode <AUTH_MODE> \ --default-user-settings SecurityGroups=<USER_SECURITY_GROUP>,ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings SecurityGroupIds=<DOMAIN_SECURITY_GROUP>,RStudioServerProDomainSettings={DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids "<SUBNET_IDS>" \ --app-network-access-type VPCOnly --app-security-group-management Service

참고: R StudioServerPro 앱은 이름이 지정된 특수 사용자 프로필로 실행됩니다domain-shared. 따라서 다른 사용자 프로필에서 list-app API 직접 호출의 일부로 이 앱을 반환하지 않습니다.

사용자 수를 늘리려면 사용자 계정의 Amazon VPC 할당량을 늘려야 할 수도 있습니다. 자세한 내용은 Amazon VPC할당량을 참조하세요.

도메인 생성 확인

다음 명령을 사용하여 도메인이 Status a를 사용하여 생성되었는지 확인합니다InService. domain-idYour가 도메인 ARN에 추가됩니다. 예를 들어 arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:domain/<DOMAIN_ID>입니다.

aws sagemaker describe-domain --domain-id <DOMAIN_ID> --region <REGION>