Commencer à utiliser le mode local - Amazon SageMaker AI

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.

Commencer à utiliser le mode local

Les sections suivantes décrivent les étapes nécessaires pour démarrer avec le mode local dans Amazon SageMaker Studio, notamment :

  • Compléter les prérequis

  • Paramétrage de EnableDockerAccess

  • Installation Docker

Prérequis

Remplissez les conditions préalables suivantes pour utiliser le mode local dans les applications Studio :

  • Pour extraire des images d'un référentiel Amazon Elastic Container Registry, le compte hébergeant l'image Amazon ECR doit fournir une autorisation d'accès pour le rôle d'exécution de l'utilisateur. Le rôle d'exécution du domaine doit également autoriser l'accès à Amazon ECR.

  • Vérifiez que vous utilisez la dernière version du SDK Studio Python à l'aide de la commande suivante : 

    pip install -U sagemaker
  • Pour utiliser le mode et Docker les fonctionnalités locaux, définissez le paramètre suivant du domaine à l'DockerSettingsaide du AWS Command Line Interface (AWS CLI) : 

    EnableDockerAccess : ENABLED
  • En utilisantEnableDockerAccess, vous pouvez également contrôler si les utilisateurs du domaine peuvent utiliser le mode local. Par défaut, le mode local et les Docker fonctionnalités ne sont pas autorisés dans les applications Studio. Pour de plus amples informations, veuillez consulter Paramétrage de EnableDockerAccess.

  • Installez la Docker CLI dans l'application Studio en suivant les étapes décrites dansInstallation Docker.

Paramétrage de EnableDockerAccess

Les sections suivantes indiquent comment définir le EnableDockerAccess moment où le domaine dispose d'un accès public à Internet ou s'il est en VPC-only mode.

Note

Les modifications EnableDockerAccess ne s'appliquent qu'aux applications créées après la mise à jour du domaine. Vous devez créer une nouvelle application après avoir mis à jour le domaine.

Accès public à Internet

Les exemples de commandes suivants montrent comment définir EnableDockerAccess lors de la création d'un nouveau domaine ou de la mise à jour d'un domaine existant avec un accès public à Internet :

# create new domain aws --region region \ sagemaker create-domain --domain-name domain-name \ --vpc-id vpc-id \ --subnet-ids subnet-ids \ --auth-mode IAM \ --default-user-settings "ExecutionRole=execution-role" \ --domain-settings '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}' \ --query DomainArn \ --output text # update domain aws --region region \ sagemaker update-domain --domain-id domain-id \ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}'

Mode VPC-only

Lors de l'utilisation d'un domaine en VPC-only mode, les requêtes push et pull d'Dockerimages sont acheminées via le VPC de service au lieu du VPC configuré par le client. Grâce à cette fonctionnalité, les administrateurs peuvent configurer une liste d'opérations fiables Comptes AWS auxquelles les utilisateurs peuvent envoyer des demandes d'opérations Docker pull et push Amazon ECR.

Si une demande push ou pull d'Dockerimage est envoyée à une Compte AWS personne ne figurant pas dans la liste des images fiables Comptes AWS, la demande échoue. Dockerles opérations de pull et de push en dehors d'Amazon Elastic Container Registry (Amazon ECR) ne sont pas prises en charge en mode. VPC-only

Les éléments suivants Comptes AWS sont approuvés par défaut :

  • Le compte hébergeant le domaine SageMaker AI.

  • SageMaker Comptes AI hébergeant les SageMaker images suivantes :

    • Images du framework DLC

    • Slearn, XGBoost traitement Spark d'images

Pour configurer une liste de sites fiables supplémentaires Comptes AWS, spécifiez la VpcOnlyTrustedAccounts valeur comme suit :

aws --region region \ sagemaker update-domain --domain-id domain-id \ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED", "VpcOnlyTrustedAccounts": ["account-list"]}}'

Installation Docker

Pour l'utiliserDocker, vous devez procéder à l'installation manuelle Docker depuis le terminal de votre application Studio. Les étapes d'installation Docker sont différentes selon que le domaine a accès à Internet ou non.

Accès Internet

Si le domaine est créé avec un accès public à Internet ou en VPC-only mode avec un accès Internet limité, procédez comme suit pour l'installerDocker.

  1. (Facultatif) Si votre domaine est créé en VPC-only mode avec un accès Internet limité, créez une passerelle NAT publique avec accès au Docker site Web. Pour obtenir des instructions, consultez la section Passerelles NAT.

  2. Accédez au terminal de l'application Studio Docker dans laquelle vous souhaitez installer.

  3. Pour rétablir le système d'exploitation de l'application, exécutez la commande suivante depuis le terminal :

    cat /etc/os-release
  4. Effectuez l'installation en Docker suivant les instructions relatives au système d'exploitation de l'application dans le référentiel Amazon SageMaker AI Local Mode Examples.

    Par exemple, procédez à l'installation Docker en Ubuntu suivant le script situé à l'https://github.com/aws-samples/amazon-sagemaker-local-modeadresse/blob/main/sagemaker_studio_docker_cli_install/sagemaker- ubuntu-focal-docker-cli -install.sh en tenant compte des considérations suivantes :

    • Si les commandes chaînées échouent, exécutez-les une par une.

    • Studio ne prend en charge que Docker la version 20.10.X. et la version de Docker Engine l'API1.41.

    • Les packages suivants ne sont pas nécessaires pour utiliser la Docker CLI dans Studio et leur installation peut être ignorée :

      • containerd.io

      • docker-ce

      • docker-buildx-plugin

    Note

    Il n'est pas nécessaire de démarrer le Docker service dans vos applications. L'instance qui héberge l'application Studio exécute le Docker service par défaut. Tous les appels Docker d'API sont automatiquement acheminés via le Docker service.

  5. Utilisez le Docker socket exposé pour les Docker interactions au sein des applications Studio. Par défaut, le socket suivant est exposé :

    unix:///docker/proxy.sock

    La variable environnementale de l'application Studio suivante USER utilise par défaut ce socket exposé :

    DOCKER_HOST

Pas d'accès à Internet

Si le domaine est créé en VPC-only mode sans accès à Internet, procédez comme suit pour l'installerDocker.

  1. Accédez au terminal de l'application Studio Docker dans laquelle vous souhaitez installer.

  2. Exécutez la commande suivante depuis le terminal pour renvoyer le système d'exploitation de l'application :

    cat /etc/os-release
  3. Téléchargez les Docker .deb fichiers requis sur votre ordinateur local. Pour obtenir des instructions sur le téléchargement des fichiers requis pour le système d'exploitation de l'application Studio, voir Installer Docker Engine.

    Par exemple, effectuez une installation Docker à partir d'un package sur Ubuntu en suivant les étapes 1 à 4 de la section Installer à partir d'un package en tenant compte des considérations suivantes :

    • Installation Docker à partir d'un package. L'utilisation d'autres méthodes pour installer Docker échouera.

    • Installez les derniers packages correspondant à la Docker version20.10.X.

    • Les packages suivants ne sont pas nécessaires pour utiliser la Docker CLI dans Studio. Il n'est pas nécessaire d'installer les éléments suivants :

      • containerd.io

      • docker-ce

      • docker-buildx-plugin

    Note

    Il n'est pas nécessaire de démarrer le Docker service dans vos applications. L'instance qui héberge l'application Studio exécute le Docker service par défaut. Tous les appels Docker d'API sont automatiquement acheminés via le Docker service.

  4. Téléchargez les .deb fichiers dans le système de fichiers Amazon EFS ou dans le système de fichiers Amazon EBS de l'application.

  5. Installez manuellement les docker-compose-plugin .deb packages docker-ce-cli et depuis le terminal de l'application Studio. Pour plus d'informations et d'instructions, consultez l'étape 5 de la section Installer à partir d'un package sur le site Web de la Docker documentation.

  6. Utilisez le Docker socket exposé pour les Docker interactions au sein des applications Studio. Par défaut, le socket suivant est exposé :

    unix:///docker/proxy.sock

    La variable environnementale de l'application Studio suivante USER utilise par défaut ce socket exposé :

    DOCKER_HOST