Spécifications SageMaker d'image personnalisées - Amazon SageMaker

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Spécifications SageMaker d'image personnalisées

Important

Depuis le 30 novembre 2023, l'expérience Amazon SageMaker Studio précédente s'appelle désormais Amazon SageMaker Studio Classic. La section suivante est spécifique à l'utilisation de l'application Studio Classic. Pour plus d'informations sur l'utilisation de l'expérience Studio mise à jour, consultezAmazon SageMaker Studio.

Les spécifications suivantes s'appliquent à l'image du conteneur qui est représentée par une version d' SageMakerimage.

Exécution de l'image

ENTRYPOINTet CMD les instructions sont annulées pour permettre à l'image de s'exécuter en tant KernelGateway qu'application.

Le port 8888 de l'image est réservé au fonctionnement du serveur KernelGateway Web.

Arrêt de l'image

L'API DeleteApp émet l'équivalent d'une commande docker stop. Les autres processus dans le conteneur n'obtiendront pas les signaux SIGKILL/SIGTERM.

Découverte du noyau

SageMaker reconnaît les noyaux tels que définis par les spécifications du noyau Jupyter.

Vous pouvez spécifier une liste de noyaux à afficher avant d'exécuter l'image. Si elle n'est pas spécifiée, python3 s'affiche. Utilisez l'DescribeAppImageConfigAPI pour afficher la liste des noyaux.

Les environnements Conda sont reconnus comme spécifications du noyau par défaut.

Système de fichiers

Les répertoires /opt/.sagemakerinternal et /opt/ml sont réservés. Les données de ces répertoires peuvent ne pas être visibles lors de l'exécution.

Données utilisateur

Chaque utilisateur d'un domaine obtient un répertoire utilisateur sur un volume Amazon Elastic File System partagé dans l'image. L'emplacement du répertoire de l'utilisateur actuel sur le volume Amazon EFS est configurable. L'emplacement par défaut du répertoire est /home/sagemaker-user.

SageMaker configure les mappages UID/GID POSIX entre l'image et l'hôte. Par défaut, le mappage de l'UID/GID (0/0) de l'utilisateur racine sur l'UID/GID sur l'hôte.

Vous pouvez spécifier ces valeurs à l'aide de l'CreateAppImageConfigAPI.

Limites GID/UID

Amazon SageMaker Studio Classic prend uniquement en charge les options suivantes DefaultUID et les DefaultGID combinaisons suivantes :

  • DefaultUID : 1000 et DefaultGID : 100, ce qui correspond à un utilisateur non privilégié.

  • DefaultUID : 0 et DefaultGID : 0, ce qui correspond à l'accès root.

Metadonnées

Un fichier de métadonnées se trouve à l'emplacement suivant : /opt/ml/metadata/resource-metadata.json. Aucune variable d'environnement supplémentaire n'est ajoutée aux variables définies dans l'image. Pour plus d’informations, consultez Obtenir les métadonnées de l'application.

GPU

Sur une instance GPU, l'image est exécutée avec l'option --gpus. Seule la boîte à outils CUDA doit être incluse dans l'image et non les pilotes NVIDIA. Pour plus d'informations, veuillez consulter le Guide de l'utilisateur NVIDIA.

Métriques et journalisation

Les journaux du KernelGateway processus sont envoyés CloudWatch à Amazon sur le compte du client. Le nom du groupe de journaux est /aws/sagemaker/studio. Le nom du flux de journaux est $domainID/$userProfileName/KernelGateway/$appName.

Taille de l'image

Limité à 25 Go. Pour afficher la taille de votre image, exécutez docker image ls.

Exemple de Dockerfile

L'exemple de Dockerfile suivant crée un système Amazon Linux 2 basé sur une image, installe des packages tiers et le noyau python3, et définit l'étendue à l'utilisateur non privilégié.

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}