기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
사용자 지정 SageMaker 이미지 사양
중요
2023년 11월 30일부터 이전 Amazon SageMaker Studio 환경이 이제 Amazon SageMaker Studio Classic으로 명명되었습니다. 다음 섹션은 Studio Classic 애플리케이션 사용에 적용됩니다. 업데이트된 Studio 환경 사용에 대한 자세한 내용은 섹션을 참조하세요Amazon SageMaker Studio.
다음 사양은 이미지 버전으로 표시되는 SageMaker 컨테이너 이미지에 적용됩니다.
- 이미지 실행
-
ENTRYPOINT
및CMD
지침은 이미지가 KernelGateway 앱으로 실행될 수 있도록 재정의됩니다.이미지의 포트 8888은 KernelGateway 웹 서버 실행용으로 예약되어 있습니다.
- 이미지 중지
-
는
docker stop
명령과 동등한 를DeleteApp
API 발행합니다. 컨테이너의 다른 프로세스는 SIGKILL/SIGTERM 신호를 가져오지 않습니다. - 커널 검색
-
SageMaker 는 Jupyter 커널 사양 에 정의된 커널을 인식합니다
. 이미지를 실행하기 전에 표시할 커널 목록을 지정할 수 있습니다. 지정하지 않으면 python3이 표시됩니다. DescribeAppImageConfig API 를 사용하여 커널 목록을 봅니다.
Conda 환경은 기본적으로 커널 사양으로 인식됩니다.
- 파일 시스템
-
/opt/.sagemakerinternal
및/opt/ml
디렉터리는 예약되어 있습니다. 이러한 디렉터리의 모든 데이터는 런타임에 표시되지 않을 수 있습니다. - 사용자 데이터
-
도메인의 각 사용자는 이미지의 공유 Amazon Elastic File System 볼륨에 있는 사용자 디렉터리를 가져옵니다. Amazon EFS 볼륨에서 현재 사용자의 디렉터리 위치를 구성할 수 있습니다. 기본 디렉터리 위치는
/home/sagemaker-user
입니다.SageMaker 는 이미지와 호스트 간의 POSIX UID/GID 매핑을 구성합니다. 기본적으로 루트 사용자의 UID/GID(0/0)를 호스트의 UID/GID에 매핑합니다.
를 사용하여 이러한 값을 지정할 수 있습니다CreateAppImageConfigAPI.
- GID/UID 제한
-
Amazon SageMaker Studio Classic은 다음
DefaultUID
및DefaultGID
조합만 지원합니다.-
기본값 UID: 1000 및 기본값 GID: 100으로, 권한이 없는 사용자에 해당합니다.
-
기본값 UID: 0 및 기본값 GID: 0으로, 루트 액세스에 해당합니다.
-
- 메타데이터
-
메타데이터 파일은
/opt/ml/metadata/resource-metadata.json
에 있습니다. 이미지에 정의된 변수에는 추가 환경 변수가 추가되지 않습니다. 자세한 내용은 앱 메타데이터 가져오기 단원을 참조하십시오. - GPU
-
GPU 인스턴스에서 이미지는
--gpus
옵션과 함께 실행됩니다. CUDA 도구 키트만 NVIDIA 드라이버가 아닌 이미지에 포함되어야 합니다. 자세한 내용은 NVIDIA 사용 설명서 섹션을참조하세요. - 지표 및 로깅
-
KernelGateway 프로세스의 로그는 고객 계정의 Amazon CloudWatch 으로 전송됩니다. 로그 그룹의 이름은
/aws/sagemaker/studio
입니다. 로그 스트림의 이름은$domainID/$userProfileName/KernelGateway/$appName
입니다. - 이미지 크기
-
35GB로 제한됩니다. 이미지 크기를 보려면
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}