에서 라이프사이클 구성을 생성하십시오. AWS CLI - 아마존 SageMaker

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

에서 라이프사이클 구성을 생성하십시오. AWS CLI

중요

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

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

중요

2023년 11월 30일부터 이전 아마존 SageMaker 스튜디오 익스피리언스는 이제 아마존 SageMaker 스튜디오 클래식으로 명명되었습니다. 다음 섹션은 스튜디오 클래식 애플리케이션 사용에 대한 내용입니다. 업데이트된 Studio 환경 사용에 대한 자세한 내용은 을 참조하십시오아마존 SageMaker 스튜디오.

다음 항목에서는 를 사용하여 수명 주기 구성을 만드는 방법을 보여줍니다. AWS CLI Studio Classic 환경의 사용자 지정을 자동화합니다.

사전 조건

시작하기 전에 다음 필수 조건을 완료합니다.

1단계: 수명 주기 구성 생성

다음 절차는 Hello World를 인쇄하는 수명 주기 구성 스크립트를 생성하는 방법을 보여 줍니다.

참고

각 스크립트는 최대 16,384자까지 입력할 수 있습니다.

  1. 로컬 시스템엣서 다음 내용으로 my-script.sh이라는 파일을 만듭니다.

    #!/bin/bash set -eux echo 'Hello World!'
  2. my-script.sh 파일을 base64 형식으로 변환하세요. 이 필수 조건은 간격 및 줄 바꿈 인코딩으로 인해 발생하는 오류를 방지합니다.

    LCC_CONTENT=`openssl base64 -A -in my-script.sh`
  3. Studio Classic과 함께 사용할 수명 주기 구성을 생성하십시오. 다음 명령은 관련 KernelGateway애플리케이션을 시작할 때 실행되는 수명 주기 구성을 생성합니다.

    aws sagemaker create-studio-lifecycle-config \ --region region \ --studio-lifecycle-config-name my-studio-lcc \ --studio-lifecycle-config-content $LCC_CONTENT \ --studio-lifecycle-config-app-type KernelGateway

    ARN반환된 새로 생성된 수명 주기 구성을 기록해 두십시오. ARN이는 라이프사이클 구성을 애플리케이션에 연결하는 데 필요합니다.

2단계: 수명 주기 구성을 도메인, 사용자 프로필 또는 공유 스페이스에 연결

수명 주기 구성을 연결하려면 도메인 또는 사용자 프로필에 UserSettings을 업데이트하거나 공유 스페이스에 대해 SpaceSettings를 업데이트해야 합니다. 도메인 수준에서 연결된 수명 주기 구성 스크립트는 모든 사용자에게 상속됩니다. 그러나 사용자 프로필 수준에서 연결된 스크립트는 특정 사용자로 범위가 지정되고 공유 스페이스 수준에서 연결된 스크립트는 공유 스페이스로 범위가 지정됩니다.

다음 예제에서는 수명 주기 구성이 연결된 새 사용자 프로필을 만드는 방법을 보여줍니다. 또한 create-domaincreate-space 명령을 각각 사용하여 수명 주기 구성이 연결된 새 도메인이나 스페이스를 만들 수 있습니다.

이전 단계의 수명 주기 구성을 ARN 적절한 앱 유형의 설정에 추가합니다. 예를 들어, 사용자의 JupyterServerAppSettings에 배치하세요. 수명 주기 구성 목록을 전달하여 여러 수명 주기 구성을 동시에 추가할 수 있습니다. 사용자가 다음을 사용하여 JupyterServer 애플리케이션을 시작하는 경우 AWS CLI기본 구성 대신 사용할 수명 주기 구성을 전달할 수 있습니다. 사용자가 전달하는 수명 주기 구성은 JupyterServerAppSettings의 수명 주기 구성 목록에 속해야 합니다.

# Create a new UserProfile aws sagemaker create-user-profile --domain-id domain-id \ --user-profile-name user-profile-name \ --region region \ --user-settings '{ "JupyterServerAppSettings": { "LifecycleConfigArns": [lifecycle-configuration-arn-list] } }'

다음 예제에서는 수명 주기 구성을 연결하도록 기존 공유 스페이스를 업데이트하는 방법을 보여줍니다. update-domain 또는 명령을 사용하여 연결된 수명 주기 구성으로 기존 도메인이나 사용자 프로필을 업데이트할 수도 있습니다. update-user-profile 첨부된 수명 주기 구성 목록을 업데이트할 때는 모든 수명 주기 구성을 목록의 일부로 전달해야 합니다. 수명 주기 구성이 이 목록의 일부가 아닌 경우 애플리케이션에 연결되지 않습니다.

aws sagemaker update-space --domain-id domain-id \ --space-name space-name \ --region region \ --space-settings '{ "JupyterServerAppSettings": { "LifecycleConfigArns": [lifecycle-configuration-arn-list] } }'

리소스의 기본 수명 주기 구성 설정에 대한 자세한 내용은 기본 수명 주기 구성 설정을 참조하세요.

3단계: 수명 주기 구성으로 애플리케이션 시작

도메인, 사용자 프로필 또는 스페이스에 수명 주기 구성을 연결한 후 사용자는 다음을 사용하여 응용 프로그램을 시작할 때 해당 구성을 선택할 수 있습니다. AWS CLI. 이 섹션에서는 연결된 수명 주기 구성을 사용하여 애플리케이션을 시작하는 방법을 설명합니다. JupyterServer애플리케이션을 시작한 후 기본 수명 주기 구성을 변경하는 방법에 대한 자세한 내용은 을 참조하십시오기본 수명 주기 구성 설정.

create-app명령을 사용하여 원하는 애플리케이션 유형을 시작하고 resource-spec 인수에 수명 주기 구성을 ARN 지정합니다.

  • 다음 예에서는 연결된 수명 주기 구성을 사용하여 JupyterServer애플리케이션을 생성하는 방법을 보여줍니다. JupyterServer를 생성할 때는 app-namedefault이어야 합니다. resource-spec매개 변수의 일부로 ARN 전달된 수명 주기 구성은 도메인이나 사용자 프로필 또는 공유 공간에 ARNs UserSettings 지정된 수명 주기 구성 목록의 일부여야 합니다. SpaceSettings

    aws sagemaker create-app --domain-id domain-id \ --region region \ --user-profile-name user-profile-name \ --app-type JupyterServer \ --resource-spec LifecycleConfigArn=lifecycle-configuration-arn \ --app-name default
  • 다음 예제에서는 연결된 수명 주기 구성을 사용하여 KernelGateway애플리케이션을 생성하는 방법을 보여줍니다.

    aws sagemaker create-app --domain-id domain-id \ --region region \ --user-profile-name user-profile-name \ --app-type KernelGateway \ --resource-spec LifecycleConfigArn=lifecycle-configuration-arn,SageMakerImageArn=sagemaker-image-arn,InstanceType=instance-type \ --app-name app-name