Donner aux tâches de transformation des lots l'accès aux ressources de votre Amazon VPC - 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.

Donner aux tâches de transformation des lots l'accès aux ressources de votre Amazon VPC

Pour contrôler l'accès à vos données et à vos tâches de transformation par lots, nous vous recommandons de créer un Amazon VPC privé et de le configurer afin que vos tâches ne soient pas accessibles sur l'Internet public. Vous spécifiez votre configuration de VPC lors de la création d'un modèle en spécifiant les sous-réseaux et les groupes de sécurité. Ensuite, vous spécifiez le même modèle lorsque vous créez une tâche de transformation par lots. Lorsque vous spécifiez les sous-réseaux et les groupes de sécurité, vous SageMaker créez des interfaces réseau élastiques associées à vos groupes de sécurité dans l'un des sous-réseaux. Les interfaces réseau permettent à vos conteneurs de modèles de se connecter aux ressources de votre VPC. Pour obtenir des informations sur les interfaces réseau, veuillez consulter Interfaces réseau Elastic dans le Guide de l'utilisateur Amazon VPC.

Ce document explique comment ajouter des configurations Amazon VPC pour les tâches de transformation par lots.

Configuration d'une tâche de transformation par lots pour l'accès à Amazon VPC

Pour spécifier des sous-réseaux et des groupes de sécurité dans votre VPC privé, utilisez VpcConfig le paramètre de requête de CreateModell'API ou fournissez ces informations lorsque vous créez un modèle dans SageMaker la console. Spécifiez ensuite le même modèle dans le paramètre de ModelName requête de l'CreateTransformJobAPI ou dans le champ Nom du modèle lorsque vous créez une tâche de transformation dans la SageMaker console. SageMaker utilise ces informations pour créer des interfaces réseau et les associer à vos modèles de conteneurs. Les interfaces réseau fournissent à vos conteneurs de modèles une connexion réseau au sein de votre VPC qui n'est pas connecté à Internet. Elles permettent également à votre tâche de transformation par lots de se connecter aux ressources de votre VPC privé.

Voici un exemple du paramètre VpcConfig que vous incluez dans votre appel à CreateModel :

VpcConfig: { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] }

Si vous créez un modèle à l'aide de l'opération d'API CreateModel, le rôle d'exécution IAM que vous utilisez pour créer votre modèle doit inclure les autorisations décrites dans CreateModel API : autorisations relatives aux rôles d'exécution, y compris les autorisations suivantes requises pour un VPC privé.

Lorsque vous créez un modèle dans la console, si vous sélectionnez Créer un nouveau rôle dans la section Paramètres du modèle, la AmazonSageMakerFullAccess politique utilisée pour créer le rôle contient déjà ces autorisations. Si vous sélectionnez Enter a custom IAM role ARN (Entrer un ARN de rôle IAM personnalisé) ou Use existing role (Utiliser un rôle existant), l'ARN de rôle que vous spécifiez doit avoir une politique d'exécution associée aux autorisations suivantes.

{ "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups"

Configurez votre VPC privé pour Batch Transform SageMaker

Lorsque vous configurez le VPC privé pour vos tâches de transformation SageMaker par lots, suivez les instructions suivantes. Pour obtenir des informations sur la configuration d'un VPC, veuillez consulter Utilisation de VPC et de sous-réseaux dans le Guide de l'utilisateur Amazon VPC.

S'assurer que les sous-réseaux ont suffisamment d'adresses IP

Vos sous-réseaux VPC doivent avoir au moins deux adresses IP privées pour chaque instance dans une tâche de transformation. Pour plus d'informations, veuillez consulter Dimensionnement des VPC et des sous-réseaux pour IPv4 dans le Guide de l'utilisateur Amazon VPC.

Création d'un point de terminaison d'un VPC Amazon S3

Si vous configurez votre VPC afin que les conteneurs de modèle n'aient pas accès à Internet, ces derniers ne peuvent pas se connecter aux compartiments Amazon S3 qui contiennent vos données, sauf si vous créez un point de terminaison d'un VPC autorisant l'accès. En créant un point de terminaison de VPC, vous autorisez vos conteneurs de modèle à accéder aux compartiments où vous stockez vos données et artefacts de modèle. Nous vous recommandons de créer également une politique personnalisée autorisant uniquement les demandes d'accès à vos compartiments S3 provenant de votre VPC privé. Pour plus d'informations, veuillez consulter Points de terminaison pour Amazon S3.

Création d'un point de terminaison de VPC S3
  1. Ouvrez la console Amazon VPC à l'adresse https://console.aws.amazon.com/vpc/.

  2. Dans le volet de navigation, choisissez Endpoints (Points de terminaison), puis Create Endpoint (Créer un point de terminaison).

  3. Pour Service Name (Nom de service), choisissez com.amazonaws.region.s3, où region (région) correspond au nom de la région où se trouve votre VPC.

  4. Pour VPC, choisissez le VPC que vous voulez utiliser pour ce point de terminaison.

  5. Pour Configure route tables (Configurer les tables de routage), sélectionnez les tables de routage à utiliser par le point de terminaison. Le service de VPC ajoute automatiquement un routage à chaque table de routage que vous sélectionnez et qui dirige le trafic S3 vers le nouveau point de terminaison.

  6. Pour Policy (Politique), choisissez Full Access (Accès total) pour autoriser un accès total au service S3 par n'importe quel utilisateur ou service au sein du VPC. Choisissez Personnalisé pour restreindre l’accès davantage. Pour plus d’informations, consultez Utilisez une politique de point de terminaison personnalisée pour limiter l'accès à S3.

Utilisez une politique de point de terminaison personnalisée pour limiter l'accès à S3

Par défaut, la politique de point de terminaison autorise un accès total à S3 pour n'importe quel utilisateur ou service au sein de votre VPC. Pour limiter l'accès à S3, créez une politique de point de terminaison personnalisé. Pour de plus amples informations, veuillez consulter Utilisation des politiques de point de terminaison pour Amazon S3. Vous pouvez également utiliser une politique de compartiment pour restreindre l'accès à vos compartiments S3 uniquement au trafic issu de votre Amazon VPC. Pour obtenir des informations, veuillez consulter Utilisation de politiques de compartiment Amazon S3.

Restreindre l'installation de packages sur le conteneur de modèles

La politique de point de terminaison par défaut permet aux utilisateurs d'installer des packages à partir des référentiels Amazon Linux et Amazon Linux 2 sur le conteneur d'entraînement. Si vous ne voulez pas que les utilisateurs installent des packages à partir de ce référentiel, créez une politique de point de terminaison personnalisée qui refuse explicitement l'accès aux référentiels Amazon Linux et Amazon Linux 2. Voici un exemple de politique qui refuse l'accès à ces référentiels :

{ "Statement": [ { "Sid": "AmazonLinuxAMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::packages.*.amazonaws.com/*", "arn:aws:s3:::repo.*.amazonaws.com/*" ] } ] } { "Statement": [ { "Sid": "AmazonLinux2AMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::amazonlinux.*.amazonaws.com/*" ] } ] }

Configuration des tables de routage

Utilisez les paramètres DNS par défaut pour votre table de routage de point de terminaison, afin que les URL Amazon S3 standard (par exemple, http://s3-aws-region.amazonaws.com/MyBucket) soient résolues. Si vous n'utilisez pas les paramètres DNS par défaut, veillez à ce que les URL que vous utilisez pour spécifier les emplacements des données dans vos tâches de transformation par lots soient résolues en configurant les tables de routage de point de terminaison. Pour obtenir des informations sur les tables de routage de point de terminaison d'un VPC, veuillez consulter Routage des points de terminaison de passerelle dans le Guide de l'utilisateur Amazon VPC.

Configurer le groupe de sécurité VPC

Dans une transformation par lots distribuée, vous devez autoriser la communication entre les différents conteneurs d'une même tâche de transformation. Pour ce faire, configurez une règle pour votre groupe de sécurité qui autorise les connexions entrantes et sortantes entre les membres d'un même groupe de sécurité. Les membres d'un même groupe de sécurité doivent pouvoir communiquer entre eux sur tous les ports. Pour de plus amples informations, veuillez consulter Règles des groupes de sécurité.

Connexion à des ressources en dehors de votre VPC

Si vous configurez votre VPC de façon à ce qu'il ne dispose pas d'un accès Internet, les tâches de transformation par lots qui utilisent ce VPC n'ont pas accès aux ressources en dehors de votre VPC. Si vos tâches de transformation par lots ont besoin d'accéder à des ressources en dehors de votre VPC, accordez-leur l'accès en effectuant l'une des actions suivantes :

  • Si votre tâche de transformation par lots nécessite l'accès à un AWS service prenant en charge les points de terminaison VPC d'interface, créez un point de terminaison pour vous connecter à ce service. Pour obtenir la liste des services qui prennent en charge les points de terminaison d'interface, veuillez consulter Points de terminaison d'un VPC dans le Guide de l'utilisateur Amazon VPC. Pour plus d'informations sur la création d'un point de terminaison VPC d'interface, consultez la section Points de terminaison VPC d'interface () dans le guide de AWS PrivateLink l'utilisateur Amazon VPC.

  • Si votre tâche de transformation par lots nécessite l'accès à un AWS service qui ne prend pas en charge les points de terminaison VPC d'interface ou à une ressource extérieure AWS, créez une passerelle NAT et configurez vos groupes de sécurité pour autoriser les connexions sortantes. Pour plus d'informations sur la configuration d'une passerelle NAT pour votre VPC, consultez Scénario 2 : VPC avec des sous-réseaux publics et privés (NAT) dans le Guide de l'utilisateur Amazon Virtual Private Cloud.