사용자 지정 SageMaker 이미지 사양 - 아마존 SageMaker

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

사용자 지정 SageMaker 이미지 사양

중요

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

다음 사양은 이미지 버전으로 표시되는 컨테이너 SageMaker 이미지에 적용됩니다.

이미지 실행

ENTRYPOINT이미지를 앱으로 실행할 수 있도록 CMD 지침이 재정의되었습니다. KernelGateway

이미지의 포트 8888은 웹 서버 실행용으로 예약되어 있습니다 KernelGateway .

이미지 중지

명령과 동일한 docker stop 명령을 실행합니다. DeleteApp API 컨테이너의 다른 프로세스는SIGKILL/SIGTERM신호를 받지 않습니다.

커널 검색

SageMaker Jupyter 커널 사양에 정의된 대로 커널을 인식합니다.

이미지를 실행하기 전에 표시할 커널 목록을 지정할 수 있습니다. 지정하지 않으면 python3이 표시됩니다. 를 사용하여 커널 목록을 볼 DescribeAppImageConfigAPI수 있습니다.

Conda 환경은 기본적으로 커널 사양으로 인식됩니다.

파일 시스템

/opt/.sagemakerinternal/opt/ml디렉터리는 예약되어 있습니다. 이러한 디렉터리의 모든 데이터는 런타임에 표시되지 않을 수 있습니다.

사용자 데이터

도메인의 각 사용자는 이미지의 공유 Amazon Elastic File System 볼륨에 있는 사용자 디렉터리를 가져옵니다. Amazon EFS 볼륨의 현재 사용자 디렉토리 위치는 구성할 수 있습니다. 기본 디렉터리 위치는 /home/sagemaker-user입니다.

SageMaker 이미지와 호스트 간의 POSIXUID/GID매핑을 구성합니다. 기본적으로 루트 사용자의UID/GID(0/0) 을 호스트의 /에 매핑합니다. UID GID

를 사용하여 이러한 값을 지정할 수 있습니다. CreateAppImageConfigAPI

GID/UID제한

Amazon SageMaker Studio Classic은 다음 DefaultUIDDefaultGID 조합만 지원합니다.

  • 기본값UID: 1000, 기본값GID: 100으로, 권한이 없는 사용자에 해당합니다.

  • 기본값UID: 0, 기본값GID: 0이며, 이는 루트 액세스에 해당합니다.

메타데이터

메타데이터 파일은 /opt/ml/metadata/resource-metadata.json에 있습니다. 이미지에 정의된 변수에는 추가 환경 변수가 추가되지 않습니다. 자세한 내용은 앱 메타데이터 가져오기 단원을 참조하십시오.

GPU

GPU인스턴스에서 이미지는 --gpus 옵션과 함께 실행됩니다. 이미지에는 CUDA 툴킷만 포함되어야 하며 NVIDIA 드라이버는 포함되지 않아야 합니다. 자세한 내용은 NVIDIA사용자 안내서를 참조하십시오.

지표 및 로깅

KernelGateway 프로세스의 로그는 고객 계정으로 CloudWatch Amazon으로 전송됩니다. 로그 그룹의 이름은 /aws/sagemaker/studio입니다. 로그 스트림의 이름은 $domainID/$userProfileName/KernelGateway/$appName입니다.

이미지 크기

25GB로 제한됩니다. 이미지 크기를 보려면 docker image ls를 실행하세요.

샘플 Dockerfile

다음 샘플 Dockerfile은 이미지 기반 Amazon Linux 2를 생성하고, 타사 패키지와 python3커널을 설치하고, 범위를 권한이 없는 사용자로 설정합니다.

FROM public.ecr.aws/amazonlinux/amazonlinux:2 ARG NB_USER="sagemaker-user" ARG NB_UID="1000" ARG NB_GID="100" RUN \ yum install --assumeyes python3 shadow-utils && \ useradd --create-home --shell /bin/bash --gid "${NB_GID}" --uid ${NB_UID} ${NB_USER} && \ yum clean all && \ python3 -m pip install ipykernel && \ python3 -m ipykernel install USER ${NB_UID}