Commencez avec des sessions AWS Glue interactives - 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.

Commencez avec des sessions AWS Glue interactives

Dans ce guide, vous apprendrez à lancer une session AWS Glue interactive dans SageMaker Studio Classic et à gérer votre environnement avec Jupyter magics.

Autorisations pour les sessions AWS Glue interactives dans SageMaker Studio Classic

Cette section répertorie les politiques requises pour exécuter des sessions AWS Glue interactives dans Studio Classic et explique comment les configurer. Elle explique notamment comment :

  • Associez la politique AwsGlueSessionUserRestrictedServiceRole gérée à votre rôle SageMaker d'exécution.

  • Créez une politique personnalisée en ligne pour votre rôle SageMaker d'exécution.

  • Modifiez la relation de confiance de votre rôle SageMaker d'exécution.

Pour associer la politique gérée par AwsGlueSessionUserRestrictedServiceRole à votre rôle d'exécution
  1. Ouvrez la console IAM.

  2. Sélectionnez Roles (Rôles) dans le panneau de gauche.

  3. Trouvez votre rôle d'exécution dans Studio Classic. Choisissez le nom du rôle pour accéder à la page récapitulative du rôle.

  4. Sous l'onglet Permissions (Autorisations), sélectionnez Attach policies (Attacher des politiques) dans le menu déroulant Add Permissions (Ajouter des autorisations).

  5. Cochez la case à côté de la politique gérée AwsGlueSessionUserRestrictedServiceRole.

  6. Choisissez Attach Policies (Attacher des politiques).

    La page récapitulative affiche les politiques gérées que vous venez d'ajouter.

Pour créer une politique personnalisée intégrée à votre rôle d'exécution
  1. Sélectionnez Create inline policy (Créer une politique en ligne) dans le menu déroulant Add Permissions (Ajouter des autorisations).

  2. Sélectionnez l'onglet JSON.

  3. Copiez-collez ce contenu dans la politique suivante.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "unique_statement_id", "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole", "sts:GetCallerIdentity" ], "Resource": "*" } ] }
  4. Choisissez Examiner une politique.

  5. Entrez un nom et choisissez Create policy (Créer une politique).

    La page récapitulative affiche la politique personnalisée que vous venez d'ajouter.

Pour modifier la relation d'approbation de votre rôle d'exécution
  1. Sélectionnez l'onglet Trust Relationships (Relations d'approbation).

  2. Choisissez Edit trust policy (Modifier la politique d'approbation).

  3. Copiez-collez ce contenu dans la politique suivante.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "glue.amazonaws.com", "sagemaker.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  4. Choisissez Mettre à jour une politique.

Vous pouvez ajouter des rôles et des politiques supplémentaires si vous avez besoin d'accéder à d'autres ressources AWS . Pour une description des rôles et politiques supplémentaires que vous pouvez inclure, consultez la section Sessions interactives avec IAM dans la AWS Glue documentation.

Propagation de balises

Les balises sont couramment utilisées pour suivre et répartir les coûts, contrôler l'accès à votre session, isoler vos ressources, etc. Pour en savoir plus sur l'ajout de métadonnées à vos ressources AWS à l'aide du balisage, ou pour plus de détails sur les cas d'utilisation courants, consultez Informations supplémentaires.

Vous pouvez activer la propagation automatique des AWS balises vers les nouvelles sessions AWS Glue interactives créées depuis l'interface utilisateur de Studio Classic. Lorsqu'une session AWS Glue interactive est créée à partir de SageMaker Studio Classic, toutes les balises définies par l'utilisateur associées au profil utilisateur ou à l'espace partagé sont transférées vers la nouvelle session AWS Glue interactive. En outre, SageMaker Studio Classic ajoute automatiquement deux balises internes AWS générées ((sagemaker:user-profile-arnetsagemaker:domain-arn) ou (sagemaker:shared-space-arnet)sagemaker:domain-arn) aux nouvelles sessions AWS Glue interactives créées à partir de l'interface utilisateur de Studio Classic. Vous pouvez utiliser ces balises pour agréger les coûts entre des domaines, des profils d'utilisateurs ou des espaces individuels.

Activation de la propagation des balises

Pour activer la propagation automatique des balises vers les nouvelles sessions AWS Glue interactives, définissez les autorisations suivantes pour votre rôle SageMaker d'exécution et le rôle IAM associé à votre AWS Glue session :

Note

Par défaut, le rôle associé à la session AWS Glue interactive est le même que le rôle SageMaker d'exécution. Vous pouvez définir un rôle d'exécution différent pour la session AWS Glue interactive à l'aide de la commande %iam_role magique. Pour plus d'informations sur les commandes magiques de Jupyter disponibles pour configurer des sessions AWS Glue interactives, consultez. Configuration de votre session AWS Glue interactive dans SageMaker Studio Classic

  • Sur votre rôle SageMaker d'exécution : créez une nouvelle politique intégrée et collez le fichier JSON suivant. La politique accorde au rôle d'exécution l'autorisation de décrire (DescribeUserProfile,DescribeSpace,DescribeDomain) et de répertorier les balises (ListTag) définies sur les profils utilisateur, les espaces partagés et le SageMaker domaine.

    { "Effect": "Allow", "Action": [ "sagemaker:ListTags" ], "Resource": [ "arn:aws:sagemaker:*:*:user-profile/*", "arn:aws:sagemaker:*:*:space/*" ] }, { "Effect": "Allow", "Action": [ "sagemaker:DescribeUserProfile" ], "Resource": [ "arn:aws:sagemaker:*:*:user-profile/*" ] }, { "Effect": "Allow", "Action": [ "sagemaker:DescribeSpace" ], "Resource": [ "arn:aws:sagemaker:*:*:space/*" ] } { "Effect": "Allow", "Action": [ "sagemaker:DescribeDomain" ], "Resource": [ "arn:aws:sagemaker:*:*:domain/*" ] }
  • Sur le rôle IAM de votre session AWS Glue  : créez une nouvelle politique intégrée et collez le fichier JSON suivant. La politique accorde à votre rôle l'autorisation d'associer des balises (TagResource) à votre session ou de récupérer sa liste de balises (GetTags).

    { "Effect": "Allow", "Action": [ "glue:TagResource", "glue:GetTags" ], "Resource": [ "arn:aws:glue:*:*:session/*" ] }
Note
  • Les défaillances survenant lors de l'application de ces autorisations n'empêchent pas la création de sessions AWS Glue interactives. Vous trouverez des informations sur la raison de l'échec dans les CloudWatchjournaux de SageMaker Studio Classic.

  • Vous devez redémarrer le noyau de votre session AWS Glue interactive pour propager la mise à jour de la valeur d'une balise.

Il est important de noter les points suivants :

  • Une fois qu'une balise est attachée à une session, elle ne peut pas être supprimée par propagation.

    Vous pouvez supprimer des balises d'une session AWS Glue interactive directement via l' AWS CLI AWS Glue API ou le site https://console.aws.amazon.com/sagemaker/. Par exemple, à l'aide du AWS CLI, vous pouvez supprimer une balise en fournissant l'ARN de la session et les clés de balise que vous souhaitez supprimer comme suit :

    aws glue untag-resource \ --resource-arn arn:aws:glue:region:account-id:session:session-name \ --tags-to-remove tag-key1,tag-key2
  • SageMaker Studio Classic ajoute deux balises internes AWS générées (sagemaker:user-profile-arnetsagemaker:domain-arn) ou (sagemaker:shared-space-arnetsagemaker:domain-arn) aux nouvelles sessions AWS Glue interactives créées à partir de l'interface utilisateur de Studio Classic. Ces balises sont prises en compte dans la limite de 50 balises fixée pour toutes les AWS ressources. Les deux sagemaker:user-profile-arn et sagemaker:shared-space-arn contiennent l'ID de domaine auquel ils appartiennent.

  • Les balises, les touches commençant par aws:AWS:, ou toute combinaison de lettres majuscules et minuscules comme préfixe pour les clés ne sont pas propagées et sont réservées à l'usage. AWS

Informations supplémentaires

Pour plus d'informations sur le balisage, consultez les ressources suivantes.

  • Pour en savoir plus sur l'ajout de métadonnées à vos AWS ressources grâce au balisage, consultez la section Marquage des AWS ressources.

  • Pour plus d'informations sur le suivi des coûts à l'aide de balises, consultez la section Analyse des coûts dans les meilleures pratiques d'administration de SageMaker Studio Classic.

  • Pour plus d'informations sur le contrôle de l'accès AWS Glue en fonction des clés de balise, voir ABAC with AWS Glue.

Lancez votre session AWS Glue interactive sur SageMaker Studio Classic

Après avoir créé les rôles, les politiques et le SageMaker domaine, vous pouvez lancer votre session AWS Glue interactive dans SageMaker Studio Classic.

Pour lancer AWS Glue dans SageMaker Studio Classic
  1. Créez un SageMaker domaine. Pour obtenir des instructions permettant de créer un nouveau domaine, consultez Vue d'ensemble SageMaker du domaine Amazon.

  2. Connectez-vous à la SageMaker console à l'adresse https://console.aws.amazon.com/sagemaker/.

  3. Sélectionnez Control Panel (Panneau de configuration) dans le panneau de gauche.

  4. Dans le menu déroulant Launch App (Lancer l'application) situé à côté du nom d'utilisateur, sélectionnezStudio.

  5. Dans la vue Jupyter, choisissez File (Fichier), puis New (Nouveau), puis Notebook (Bloc-notes).

  6. Dans le menu déroulant Image, sélectionnez SparkAnalytics 1.0 ou SparkAnalytics2.0. Dans le menu déroulant du noyau, sélectionnez Glue Spark ou Glue Python [PySpark and Ray]. Choisissez Select (Sélectionner).

  7. (facultatif) Utilisez les commandes magiques Jupyter pour personnaliser votre environnement. Pour plus d'informations sur les commandes magiques Jupyter, consultez Configuration de votre session AWS Glue interactive dans SageMaker Studio Classic.

  8. Commencez à écrire vos scripts de traitement de données Spark.

Configuration de votre session AWS Glue interactive dans SageMaker Studio Classic

Note

Toutes les configurations magiques sont reportées aux sessions suivantes pendant toute la durée de vie du AWS Glue noyau.

Vous pouvez utiliser la magie de Jupyter dans votre session AWS Glue interactive pour modifier vos paramètres de session et de configuration. Les commandes magiques sont de courtes commandes préfixées par % au début des cellules Jupyter qui fournissent un moyen simple et rapide de vous aider à contrôler votre environnement. Dans votre session AWS Glue interactive, les magies suivantes sont configurées par défaut pour vous :

Commande magique Valeur par défaut
%glue_version

3.0

%iam_role

rôle d'exécution attaché à votre SageMaker domaine

%region

votre région

Vous pouvez utiliser les commandes magiques pour personnaliser davantage votre environnement. Par exemple, si vous souhaitez modifier le nombre de collaborateurs alloués à votre tâche du nombre 5 par défaut à 10, vous pouvez spécifier %number_of_workers 10. Si vous souhaitez configurer votre session pour qu'elle s'arrête après 10 minutes d'inactivité au lieu des 2 880 par défaut, vous pouvez spécifier %idle_timeout 10.

Toutes les magies Jupyter actuellement disponibles dans le AWS Glue sont également dans Studio Classic. SageMaker Pour obtenir la liste complète des AWS Glue magies disponibles, consultez Configuration de sessions AWS Glue interactives pour les ordinateurs portables Jupyter et AWS Glue Studio Classic.