Connexion d’Amazon SageMaker Studio dans un VPC à des ressources externes
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’expérience Studio mise à jour. Pour en savoir plus sur l’utilisation de l’application Studio Classic, consultez Amazon SageMaker Studio Classic.
La rubrique suivante fournit des informations sur la façon de connecter Amazon SageMaker Studio dans un VPC à des ressources externes.
Communication par défaut avec Internet
Par défaut, Amazon SageMaker Studio fournit une interface réseau qui permet de communiquer avec Internet via un VPC géré par SageMaker AI. Le trafic en direction des services AWS tels qu’Amazon S3 et CloudWatch passe par une passerelle Internet, tout comme le trafic qui accède à l’API SageMaker AI et à l’environnement d’exécution SageMaker AI. Le trafic entre le domaine et votre volume Amazon EFS passe par le VPC que vous avez spécifié lors de votre intégration au domaine ou lors de l’appel de l’API CreateDomain.
Communication VPC only avec Internet
Pour empêcher SageMaker AI de fournir un accès Internet à Studio, vous pouvez désactiver l’accès à Internet en spécifiant le type d’accès réseau VPC only lors de votre intégration dans Studio ou lors de l’appel de l’API CreateDomain. Par conséquent, vous ne pourrez pas exécuter Studio à moins que votre VPC dispose d’un point de terminaison d’interface vers l’API et l’exécution de SageMaker ou une passerelle NAT avec un accès Internet et que vos groupes de sécurité autorisent les connexions sortantes.
Note
Le type d’accès réseau peut être modifié après la création du domaine à l’aide du paramètre --app-network-access-type de la commande update-domain
Exigences pour utiliser le mode VPC only
Si vous avez choisi VpcOnly, procédez comme suit :
-
Vous devez utiliser des sous-réseaux privés uniquement. Vous ne pouvez pas utiliser de sous-réseaux publics en mode
VpcOnly. -
Assurez-vous que vos sous-réseaux disposent du nombre requis d'adresses IP. Le nombre prévu d'adresses IP nécessaires par utilisateur peut varier en fonction du cas d'utilisation. Nous recommandons entre 2 et 4 adresses IP par utilisateur. La capacité d’adresse IP totale d’un domaine est la somme des adresses IP disponibles pour chaque sous-réseau fourni lors de la création du domaine. Veillez à ce que votre utilisation estimée d’adresses IP ne dépasse pas la capacité prise en charge par le nombre de sous-réseaux que vous fournissez. En outre, l'utilisation de sous-réseaux répartis dans de nombreuses zones de disponibilité peut favoriser la disponibilité d'adresses IP. Pour plus d’informations, consultez Dimensionnement des VPC et des sous-réseaux pour IPv4.
Note
Vous pouvez uniquement configurer des sous-réseaux avec un VPC de location par défaut dans lequel votre instance s'exécute sur un matériel partagé. Pour plus d’informations sur l’attribut de location pour les VPC, consultez Instances dédiées.
-
Avertissement
Lorsque vous utilisez le mode
VpcOnly, vous êtes partiellement propriétaire de la configuration réseau du domaine. Nous recommandons la bonne pratique de sécurité qui consiste à appliquer les autorisations de moindre privilège aux accès entrant et sortant fournis par les règles des groupes de sécurité. Des configurations avec des règles entrantes trop permissives pourraient permettre à des utilisateurs ayant accès au VPC d'interagir avec les applications d'autres profils utilisateur sans authentification.Configurez un ou plusieurs groupes de sécurité avec des règles entrantes et sortantes qui autorisent le trafic suivant :
-
Trafic NFS sur TCP sur le port 2049 entre le domaine et le volume Amazon EFS.
-
Trafic TCP au sein du groupe de sécurité. Cela est nécessaire pour la connectivité entre l'application Jupyter Server et les applications Kernel Gateway. Vous devez autoriser l’accès à au moins des ports situés dans la plage
8192-65535.
Créez un groupe de sécurité distinct pour chaque profil utilisateur et ajoutez un accès entrant à partir de ce même groupe de sécurité. Nous déconseillons de réutiliser un groupe de sécurité au niveau du domaine pour les profils utilisateur. Si le groupe de sécurité au niveau du domaine autorise l'accès entrant à lui-même, toutes les applications figurant dans le domaine auront accès à toutes les autres applications du domaine.
-
-
Si vous souhaitez autoriser l’accès à Internet, vous devez utiliser une passerelle NAT avec accès Internet, par exemple via une passerelle Internet.
-
Si vous ne souhaitez pas autoriser l'accès à Internet, créez des points de terminaison de VPC d'interface (AWS PrivateLink) pour permettre à Studio d'accéder aux services suivants avec les noms de service correspondants. Vous devez également associer les groupes de sécurité pour votre VPC à ces points de terminaison.
-
API SageMaker :
com.amazonaws..region.sagemaker.api -
Environnement d’exécution de SageMaker AI :
com.amazonaws.. Nécessaire pour exécuter les invocations de point de terminaison.region.sagemaker.runtime -
Simple Storage Service (Amazon S3) :
com.amazonaws..region.s3 -
Projets SageMaker :
com.amazonaws..region.servicecatalog -
SageMaker Studio :
aws.sagemaker.region.studio. -
Tout autre service AWS dont vous avez besoin.
Si vous utilisez le kit SageMaker Python SDK
pour exécuter des tâches d'entraînement à distance, vous devez également créer les points de terminaison Amazon VPC suivants. -
AWS Security Token Service:
com.amazonaws.region.sts -
Amazon CloudWatch :
com.amazonaws.. Requis pour permettre au kit SageMaker Python SDK d’obtenir le statut de la tâche d’entraînement à distance auprès d’Amazon CloudWatch.region.logs
-
-
Si vous utilisez le domaine en mode
VpcOnlydepuis un réseau sur site, établissez une connectivité privée entre le réseau de l’hôte exécutant Studio dans le navigateur et le réseau Amazon VPC cible. Cela est nécessaire, car l’interface utilisateur de Studio invoque les points de terminaison AWS en utilisant des appels d’API avec des informations d’identification AWS temporaires. Ces informations d’identification temporaires sont associées au rôle d’exécution du profil utilisateur connecté. Si le domaine est configuré en modeVpcOnlydans un réseau sur site, le rôle d’exécution peut définir des conditions de politique IAM qui appliquent l’exécution des appels d’API des services AWS uniquement via les points de terminaison Amazon VPC configurés. Cela entraîne l’échec des appels d’API exécutés depuis l’interface utilisateur de Studio. Nous vous recommandons de résoudre ce problème à l’aide d’une connexion AWS Site-to-Site VPN ou AWS Direct Connect.
Note
Pour un client travaillant en mode VPC, les pare-feu d’entreprise peuvent entraîner des problèmes de connexion avec Studio ou les applications. Effectuez les vérifications suivantes si vous rencontrez l’un de ces problèmes lorsque vous utilisez Studio derrière un pare-feu.
-
Vérifiez que l’URL de Studio et les URL de toutes vos applications figurent dans la liste d’autorisation de votre réseau. Par exemple :
*.studio.region.sagemaker.aws *.console.aws.a2z.com -
Vérifiez que les connexions websocket ne sont pas bloquées. Jupyter utilise des websockets.