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.
Configuration de Studio pour l’exécuter avec des sous-réseaux sans accès à Internet au sein d’un VPC
Ce guide explique comment vous connecter aux espaces Amazon SageMaker Studio à partir de Visual Studio Code lorsque votre domaine Amazon SageMaker AI s'exécute dans des sous-réseaux privés sans accès à Internet. Vous découvrirez les exigences de connectivité et les options de configuration pour établir des connexions à distance sécurisées dans des environnements réseau isolés.
Vous pouvez configurer Amazon SageMaker Studio pour qu'il s'exécute en mode VPC uniquement avec des sous-réseaux sans accès à Internet. Cette configuration renforce la sécurité de vos charges de travail de machine learning en fonctionnant dans un environnement réseau isolé où tout le trafic passe par le VPC. Pour activer les communications externes tout en préservant la sécurité, utilisez les points de terminaison VPC pour les AWS services et configurez le PrivateLink VPC pour les dépendances requises. AWS
Rubriques
Exigences réseau pour l’accès à distance de Studio
Limitations du mode VPC : Studio en mode VPC ne prend en charge que les sous-réseaux privés. Studio ne peut pas fonctionner avec des sous-réseaux directement attachés à une passerelle Internet Gateway (IGW). Les connexions VS Code distantes présentent les mêmes limites que l' SageMaker IA. Pour plus d’informations, consultez Connexion des blocs-notes Studio dans un VPC à des ressources externes.
Exigences en matière de VPC PrivateLink
Lorsque l' SageMaker IA s'exécute dans des sous-réseaux privés, configurez ces points de terminaison VPC SSM en plus des points de terminaison VPC standard requis pour. SageMaker Pour plus d’informations, consultez Connexion de Studio via un point de terminaison de VPC.
-
com.amazonaws.REGION.ssm -
com.amazonaws.REGION.ssmmessages
Recommandations relatives aux politiques relatives aux terminaux VPC
Voici les politiques de point de terminaison VPC recommandées qui autorisent les actions nécessaires pour l'accès à distance tout en utilisant la aws:PrincipalIsAWSService condition pour garantir que seuls AWS des services tels qu'Amazon SageMaker AI peuvent passer les appels. Pour plus d'informations sur la clé de aws:PrincipalIsAWSService condition, consultez la documentation.
Politique relative aux terminaux SSM
Utilisez la politique suivante pour le com.amazonaws. point de terminaison :REGION.ssm
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": [ "ssm:CreateActivation", "ssm:RegisterManagedInstance", "ssm:DeleteActivation", "ssm:DeregisterManagedInstance", "ssm:AddTagsToResource", "ssm:UpdateInstanceInformation", "ssm:UpdateInstanceAssociationStatus", "ssm:DescribeInstanceInformation", "ssm:ListInstanceAssociations", "ssm:ListAssociations", "ssm:GetDocument", "ssm:PutInventory" ], "Resource": "*", "Condition": { "BoolIfExists": { "aws:PrincipalIsAWSService": "true" } } } ] }
Politique de point de terminaison des messages SSM
Utilisez la politique suivante pour le com.amazonaws. point de terminaison :REGION.ssmmessages
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": [ "ssmmessages:CreateControlChannel", "ssmmessages:CreateDataChannel", "ssmmessages:OpenControlChannel", "ssmmessages:OpenDataChannel" ], "Resource": "*", "Condition": { "BoolIfExists": { "aws:PrincipalIsAWSService": "true" } } } ] }
Exigences réseau spécifiques à VS Code
La connexion VS Code à distance nécessite le développement à distance de VS Code, qui nécessite un accès réseau spécifique pour installer le serveur distant et les extensions. Consultez la FAQ sur le développement à distance
-
L’accès aux points de terminaison du serveur VS Code de Microsoft est nécessaire pour installer et mettre à jour le serveur distant VS Code.
-
L’accès à Visual Studio Marketplace et aux points de terminaison CDN associés est requis pour installer les extensions VS Code via le panneau d’extension (les extensions peuvent également être installées manuellement à l’aide de fichiers VSIX sans connexion à Internet).
-
Certaines extensions peuvent nécessiter l’accès à des points de terminaison supplémentaires pour télécharger leurs dépendances spécifiques. Consultez la documentation de l’extension pour connaître ses exigences de connectivité spécifiques.
Configuration du réseau d’accès à distance de Studio
Deux options s’offrent à vous pour connecter votre environnement Visual Studio Code local aux espaces Studio situés dans des sous-réseaux privés :
-
Proxy HTTP
-
Serveur distant VS Code prépackagé et extensions
Configuration d’un proxy HTTP avec une liste d’autorisations contrôlée
Lorsque votre espace Studio se trouve derrière un pare-feu ou un proxy, autorisez l'accès au serveur VS Code, aux extensions et aux points de terminaison CDNs .
-
Configurez un sous-réseau public pour exécuter le proxy HTTP (tel que Squid), dans lequel vous pouvez configurer les sites Web à autoriser. Assurez-vous que le proxy HTTP est accessible par SageMaker des espaces.
-
Le sous-réseau public peut se trouver dans le même VPC utilisé par le Studio ou dans un VPC distinct associé à tous les domaines VPCs utilisés par Amazon AI. SageMaker
Configuration d’un serveur distant Visual Studio Code prépackagé et de ses extensions
Lorsque vos espaces Studio ne peuvent pas accéder à des points de terminaison externes pour télécharger le serveur distant VS Code et ses extensions, vous pouvez les prépackager. Avec cette approche, vous exportez une archive contenant le répertoire .VS
Code-server d’une version spécifique de VS Code. Ensuite, vous utilisez un script SageMaker AI Lifecycle Configuration (LCC) pour copier et extraire l'archive tar dans le répertoire de base (/home/sagemaker-user) des espaces Studio. Cette solution basée sur le LCC fonctionne à la fois avec les images AWS fournies et avec les images personnalisées. Même lorsque vous n’utilisez pas de sous-réseaux privés, cette approche accélère la configuration du serveur distant VS Code et des extensions préinstallées.
Instructions pour prépackager votre serveur distant VS Code et les extensions
-
Installez VS Code sur votre ordinateur local.
-
Lancez un conteneur Docker basé sur Linux (x64) avec SSH activé, soit localement, soit via un espace Studio avec accès à Internet. Par souci de simplicité, nous vous recommandons d’utiliser un espace Studio temporaire avec accès à distance et Internet activé.
-
Connectez votre instance VS Code installée au conteneur Docker local via une connexion SSH distante ou connectez-vous à l’espace Studio via la fonctionnalité VS Code à distance de Studio. VS Code installe le serveur distant dans
.VS Code-server, dans le répertoire de base du conteneur distant lors de la connexion. Pour plus d’informations, consultez Exemple d’utilisation d’un fichier Docker pour prépackager votre serveur distant VS Code et les extensions. -
Après vous être connecté à distance, assurez-vous d’utiliser le profil par défaut VS Code.
-
Installez les extensions VS Code requises et validez leur fonctionnalité. Par exemple, créez et exécutez un bloc-notes pour installer les extensions associées aux blocs-notes Jupyter sur le serveur distant VS Code.
Assurez-vous d'installer l' AWS Toolkit for Visual Studio Code extension après vous être connecté au conteneur distant.
-
Archivez le répertoire
$HOME/.VS Code-server(par exemple,VS Code-server-with-extensions-for-1.100.2.tar.gz) dans le conteneur Docker local ou dans le terminal de l’espace Studio connecté à distance. -
Chargez l’archive sur Amazon S3.
-
Créez un script LCC (Exemple de script LCC (LCC-install-VS C ode-server-v 1.100.2)) qui :
-
télécharge l’archive spécifique à partir d’Amazon S3 ;
-
extrait cette archive dans le répertoire de base lorsqu’un espace Studio est lancé dans un sous-réseau privé.
-
-
(Facultatif) Étendez le script LCC pour prendre en charge les archives du serveur VS Code par utilisateur stockées dans des dossiers Amazon S3 spécifiques à l’utilisateur.
-
(Facultatif) Conservez des scripts LCC spécifiques à la version (Exemple de script LCC (LCC-install-VS C ode-server-v 1.100.2)) que vous pouvez attacher à vos espaces, afin de garantir la compatibilité entre votre client VS Code local et le serveur distant.