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 des CloudFormation modèles Amazon EMR dans le Service Catalog
Cette rubrique part du principe que les administrateurs connaissent bien CloudFormationles portefeuilles et les produits qu' AWS Service Catalog il contient, ainsi qu'Amazon EMR.
Pour simplifier la création de clusters Amazon EMR à partir de Studio, les administrateurs peuvent enregistrer un CloudFormation modèle Amazon EMR en tant que produit dans un portefeuille. AWS Service Catalog Pour mettre le modèle à la disposition des data scientists, ils doivent associer le portefeuille au rôle d'exécution de l' SageMaker IA utilisé dans Studio ou Studio Classic. Enfin, pour permettre aux utilisateurs de découvrir des modèles, de provisionner des clusters et de se connecter aux clusters Amazon EMR depuis Studio ou Studio Classic, les administrateurs doivent définir les autorisations d’accès appropriées.
Les CloudFormation modèles Amazon EMR peuvent permettre aux utilisateurs finaux de personnaliser différents aspects du cluster. Par exemple, les administrateurs peuvent définir une liste approuvée de types d’instances parmi lesquels les utilisateurs peuvent choisir lors de la création d’un cluster.
Les instructions suivantes utilisent des end-to-end CloudFormation piles
Note
Le GitHub référentiel aws-samples/ sagemaker-studio-emr
Le référentiel sagemaker-studio-emr/cloudformation/emr_servicecatalog_templates
Consultez Connectez-vous à un cluster Amazon EMR depuis SageMaker Studio ou Studio Classic pour plus d’informations sur les méthodes d’authentification que vous pouvez utiliser pour vous connecter à un cluster Amazon EMR.
Pour permettre aux data scientists de découvrir les CloudFormation modèles Amazon EMR et de provisionner des clusters depuis Studio ou Studio Classic, procédez comme suit.
Étape 0 : Vérifiez votre réseau et préparez votre CloudFormation stack
Avant de commencer :
-
Assurez-vous d’avoir passé en revue les exigences de mise en réseau et de sécurité dans Configuration de l’accès réseau pour votre cluster Amazon EMR.
-
Vous devez disposer d'une end-to-end CloudFormation pile existante prenant en charge la méthode d'authentification de votre choix. Vous trouverez des exemples de tels CloudFormation modèles dans le dépôt sagemaker-studio-emr GitHub aws-samples/
. Les étapes suivantes mettent en évidence les configurations spécifiques de votre end-to-end stack pour permettre l'utilisation de modèles Amazon EMR dans Studio ou Studio Classic.
Étape 1 : associez votre portefeuille Service Catalog à l' SageMaker IA
Dans votre portefeuille Service Catalog, associez votre ID de portefeuille au rôle d'exécution SageMaker AI accédant à votre cluster.
Pour ce faire, ajoutez la section suivante (ici au format YAML) à votre pile. Cela permet au rôle d'exécution SageMaker AI d'accéder au portefeuille Service Catalog spécifié contenant des produits tels que les modèles Amazon EMR. Cela permet aux rôles assumés par l' SageMaker IA de lancer ces produits.
Remplacez SageMakerExecutionRole.Arn et SageMakerStudioEMRProductPortfolio.ID par leurs valeurs réelles.
SageMakerStudioEMRProductPortfolioPrincipalAssociation: Type: AWS::ServiceCatalog::PortfolioPrincipalAssociation Properties: PrincipalARN:SageMakerExecutionRole.ArnPortfolioId:SageMakerStudioEMRProductPortfolio.IDPrincipalType: IAM
Pour plus de détails sur l’ensemble d’autorisations IAM requis, consultez la section sur les autorisations.
Étape 2 : Référencement d’un modèle Amazon EMR dans un produit Service Catalog
Dans un produit Service Catalog de votre portefeuille, référencez une ressource de modèle Amazon EMR et garantissez sa visibilité dans Studio ou Studio Classic.
Pour cela, référencez la ressource du modèle Amazon EMR dans la définition du produit Service Catalog, puis ajoutez la clé de balise "sagemaker:studio-visibility:emr" suivante, définie sur la valeur "true" (voir l’exemple au format YAML).
Dans la définition du produit Service Catalog, le CloudFormation modèle du cluster est référencé via une URL. La balise supplémentaire définie sur true garantit la visibilité des modèles Amazon EMR dans Studio ou Studio Classic.
Note
Le modèle Amazon EMR référencé par l’URL fournie dans l’exemple n’impose aucune exigence d’authentification lors de son lancement. Cette option est destinée à des fins de démonstration et d’apprentissage. Elle n’est pas recommandée dans un environnement de production.
SMStudioEMRNoAuthProduct: Type: AWS::ServiceCatalog::CloudFormationProduct Properties: Owner: AWS Name: SageMaker Studio Domain No Auth EMR ProvisioningArtifactParameters: - Name: SageMaker Studio Domain No Auth EMR Description: Provisions a SageMaker domain and No Auth EMR Cluster Info: LoadTemplateFromURL:Link to your CloudFormation template. For example, https://aws-blogs-artifacts-public.s3.amazonaws.com/artifacts/astra-m4-sagemaker/end-to-end/CFN-EMR-NoStudioNoAuthTemplate-v3.yamlTags: - Key: "sagemaker:studio-visibility:emr" Value: "true"
Étape 3 : paramétrer le modèle Amazon EMR CloudFormation
Le CloudFormation modèle utilisé pour définir le cluster Amazon EMR dans le produit Service Catalog permet aux administrateurs de spécifier des paramètres configurables. Les administrateurs peuvent définir des valeurs Default et des plages AllowedValues pour ces paramètres dans la section Parameters du modèle. Au cours du processus de lancement du cluster, les scientifiques des données peuvent fournir des entrées personnalisées ou effectuer des sélections parmi ces options prédéfinies pour personnaliser certains aspects de leur cluster Amazon EMR.
L’exemple suivant illustre les paramètres de saisie supplémentaires que les administrateurs peuvent définir lors de la création d’un modèle Amazon EMR.
"Parameters": { "EmrClusterName": { "Type": "String", "Description": "EMR cluster Name." }, "MasterInstanceType": { "Type": "String", "Description": "Instance type of the EMR master node.", "Default": "m5.xlarge", "AllowedValues": [ "m5.xlarge", "m5.2xlarge", "m5.4xlarge" ] }, "CoreInstanceType": { "Type": "String", "Description": "Instance type of the EMR core nodes.", "Default": "m5.xlarge", "AllowedValues": [ "m5.xlarge", "m5.2xlarge", "m5.4xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge" ] }, "CoreInstanceCount": { "Type": "String", "Description": "Number of core instances in the EMR cluster.", "Default": "2", "AllowedValues": [ "2", "5", "10" ] }, "EmrReleaseVersion": { "Type": "String", "Description": "The release version of EMR to launch.", "Default": "emr-5.33.1", "AllowedValues": [ "emr-5.33.1", "emr-6.4.0" ] } }
Une fois que les administrateurs ont mis les CloudFormation modèles Amazon EMR à disposition dans Studio, les data scientists peuvent les utiliser pour auto-provisionner des clusters Amazon EMR. La section Parameters définie dans le modèle se traduit par des champs de saisie sur le formulaire de création de cluster dans Studio ou Studio Classic. Pour chaque paramètre, les scientifiques des données peuvent entrer une valeur personnalisée dans la zone de saisie ou sélectionner l’une des options prédéfinies répertoriées dans un menu déroulant, qui correspond aux valeurs AllowedValues spécifiées dans le modèle.
L'illustration suivante montre le formulaire dynamique assemblé à partir d'un modèle CloudFormation Amazon EMR pour créer un cluster Amazon EMR dans Studio ou Studio Classic.
Consultez Lancement d’un cluster Amazon EMR depuis Studio ou Studio Classic pour découvrir comment lancer un cluster depuis Studio ou Studio Classic à l’aide de ces modèles Amazon EMR.
Étape 4 : Configuration des autorisations pour activer l’établissement d’une liste et le lancement des clusters Amazon EMR à partir de Studio
Enfin, attachez les autorisations IAM requises pour permettre de répertorier les clusters Amazon EMR en cours d’exécution existants et d’auto-provisionner de nouveaux clusters à partir de Studio ou de Studio Classic.
Le ou les rôles auxquels vous devez ajouter ces autorisations dépendent du fait que Studio ou Studio Classic et Amazon EMR sont déployés dans le même compte (choisissez Compte unique) ou dans des comptes différents (choisissez Compte croisé).
Important
Vous pouvez uniquement découvrir et vous connecter aux clusters Amazon EMR JupyterLab et aux applications Studio Classic lancées depuis des espaces privés. Assurez-vous que les clusters Amazon EMR sont situés dans la même AWS région que votre environnement Studio.
Si vos clusters Amazon EMR et Studio ou Studio Classic sont déployés dans le même AWS compte, associez les autorisations suivantes au rôle d'exécution SageMaker AI accédant à votre cluster.
-
Étape 1 : Récupérez l'ARN du rôle d'exécution SageMaker AI utilisé par votre espace privé.
Pour plus d'informations sur les espaces et les rôles d'exécution dans SageMaker l'IA, consultezComprendre les autorisations d’espace de domaine et les rôles d’exécution.
Pour plus d'informations sur la façon de récupérer l'ARN du rôle d'exécution de l' SageMaker IA, consultezObtention de votre rôle d’exécution.
-
Étape 2 : Attachez les autorisations suivantes au rôle d'exécution SageMaker AI accédant à vos clusters Amazon EMR.
-
Accédez à la Console IAM
. -
Choisissez Rôles, puis recherchez votre rôle d’exécution par son nom dans le champ Rechercher. Le nom du rôle est la dernière partie de l’ARN, après la dernière barre oblique (/).
-
Suivez le lien correspondant à votre rôle.
-
Choisissez Ajouter des autorisations, puis Créer une politique en ligne.
-
Dans l’onglet JSON, ajoutez les autorisations Amazon EMR autorisant l’accès et les opérations Amazon EMR. Pour plus de détails sur le document de politique, consultez Politiques Amazon EMR de liste dans Politiques de référence. Remplacez
regionetaccountIDpar leurs valeurs réelles avant de copier la liste des instructions dans la politique en ligne de votre rôle. -
Choisissez Suivant, puis fournissez un nom de politique.
-
Choisissez Create Policy (Créer une politique).
-
Répétez l’étape Créer une politique en ligne pour ajouter une autre politique accordant au rôle d’exécution les autorisations nécessaires pour provisionner de nouveaux clusters Amazon EMR à l’aide de modèles CloudFormation . Pour plus de détails sur le document de politique, consultez Create Amazon EMRclusters policies dansPolitiques de référence. Remplacez
regionetaccountIDpar leurs valeurs réelles avant de copier la liste des instructions dans la politique en ligne de votre rôle.
-
Note
Les utilisateurs de la connectivité de contrôle d’accès en fonction du rôle (RBAC) aux clusters Amazon EMR doivent également se référer à Configuration de l’authentification du rôle d’exécution lorsque votre cluster Amazon EMR et Studio sont sur le même compte.
Avant de commencer, récupérez l'ARN du rôle d'exécution de l' SageMaker IA utilisé par votre espace privé.
Pour plus d'informations sur les espaces et les rôles d'exécution dans SageMaker l'IA, consultezComprendre les autorisations d’espace de domaine et les rôles d’exécution.
Pour plus d'informations sur la façon de récupérer l'ARN du rôle d'exécution de l' SageMaker IA, consultezObtention de votre rôle d’exécution.
Si vos clusters Amazon EMR et Studio ou Studio Classic sont déployés dans des AWS comptes distincts, vous configurez les autorisations sur les deux comptes.
Note
Les utilisateurs de la connectivité de contrôle d’accès en fonction du rôle (RBAC) aux clusters Amazon EMR doivent également se référer à Configuration de l’authentification du rôle d’exécution lorsque votre cluster et Studio sont dans des comptes différents.
Sur le compte des clusters Amazon EMR
Procédez comme suit pour créer les rôles et les politiques nécessaires sur le compte où Amazon EMR est déployé, également appelé compte d’approbation :
-
Étape 1 : extrayez l’ARN du rôle de service de votre cluster Amazon EMR.
Pour découvrir comment trouver l’ARN du rôle de service d’un cluster, consultez Configuration des rôles de service IAM pour les autorisations Amazon EMR aux services et ressources AWS.
-
Étape 2 : créez un rôle IAM personnalisé nommé
AssumableRoleavec la configuration suivante :-
Autorisations : accordez les autorisations nécessaires à
AssumableRolepour autoriser l’accès aux ressources Amazon EMR. Ce rôle est également appelé rôle d’accès dans les scénarios impliquant un accès intercompte. -
Relation de confiance : configurez la politique d’approbation pour
AssumableRoleafin d’autoriser l’endossement du rôle d’exécution (SageMakerExecutionRoledans le diagramme entre comptes) depuis le compte Studio qui nécessite un accès.
En assumant ce rôle, Studio ou Studio Classic peut obtenir un accès temporaire aux autorisations dont il a besoin dans Amazon EMR.
Pour obtenir des instructions détaillées sur la façon de créer un nouveau
AssumableRolecompte sur votre AWS compte Amazon EMR, procédez comme suit :-
Accédez à la Console IAM
. -
Dans le volet de navigation de gauche, choisissez Politique, puis Créer une politique.
-
Dans l’onglet JSON, ajoutez les autorisations Amazon EMR autorisant l’accès et les opérations Amazon EMR. Pour plus de détails sur le document de politique, consultez Politiques Amazon EMR de liste dans Politiques de référence. Remplacez
regionetaccountIDpar leurs valeurs réelles avant de copier la liste des instructions dans la politique en ligne de votre rôle. -
Choisissez Suivant, puis fournissez un nom de politique.
-
Choisissez Create Policy (Créer une politique).
-
Dans le volet de navigation de gauche, choisissez Rôles, puis Créer un rôle.
-
Sur la page Créer un rôle, choisissez Politique d’approbation personnalisée comme entité de confiance.
-
Collez le document JSON suivant dans la section Politique d’approbation personnalisée, puis choisissez Suivant.
-
Dans la page Ajouter des autorisations, ajoutez l’autorisation que vous venez de créer, puis choisissez Suivant.
-
Sur la page Vérifier, entrez un nom pour le rôle, tel que
AssumableRole, et une description facultative. -
Passez en revue les détails du rôle, puis choisissez Créer un rôle.
Pour plus d’informations sur la création d’un rôle sur un compte AWS , consultez Création d’un rôle IAM (console).
-
Sur le compte Studio
Sur le compte sur lequel Studio est déployé, également appelé compte de confiance, mettez à jour le rôle d'exécution de l' SageMaker IA accédant à vos clusters avec les autorisations requises pour accéder aux ressources du compte de confiance.
-
Étape 1 : Récupérez l'ARN du rôle d'exécution SageMaker AI utilisé par votre espace privé.
Pour plus d'informations sur les espaces et les rôles d'exécution dans SageMaker l'IA, consultezComprendre les autorisations d’espace de domaine et les rôles d’exécution.
Pour plus d'informations sur la façon de récupérer l'ARN du rôle d'exécution de l' SageMaker IA, consultezObtention de votre rôle d’exécution.
-
Étape 2 : Attachez les autorisations suivantes au rôle d'exécution SageMaker AI accédant à vos clusters Amazon EMR.
-
Accédez à la Console IAM
. -
Choisissez Rôles, puis recherchez votre rôle d’exécution par son nom dans le champ Rechercher. Le nom du rôle est la dernière partie de l’ARN, après la dernière barre oblique (/).
-
Suivez le lien correspondant à votre rôle.
-
Choisissez Ajouter des autorisations, puis Créer une politique en ligne.
-
Dans l’onglet JSON, ajoutez la politique en ligne accordant au rôle les autorisations nécessaires pour mettre à jour les domaines, les profils utilisateur et les espaces. Pour plus de détails sur le document de politique, consultez Politique relative aux actions de mise à jour des domaines, des profils utilisateur et des espaces dans Politiques de référence. Remplacez
regionetaccountIDpar leurs valeurs réelles avant de copier la liste des instructions dans la politique en ligne de votre rôle. -
Choisissez Suivant, puis fournissez un nom de politique.
-
Choisissez Create Policy (Créer une politique).
-
Répétez l’étape Créer une politique en ligne pour ajouter une autre politique accordant au rôle d’exécution les autorisations permettant d’assumer
AssumableRolepuis d’exécuter les actions autorisées par la stratégie d’accès du rôle. Remplacezemr-accountpar l’ID du compte Amazon EMR etAssumableRolepar le nom du rôle assumable créé dans le compte Amazon EMR. -
Répétez l’étape Créer une politique en ligne pour ajouter une autre politique accordant au rôle d’exécution les autorisations nécessaires pour provisionner de nouveaux clusters Amazon EMR à l’aide de modèles CloudFormation . Pour plus de détails sur le document de politique, consultez Create Amazon EMRclusters policies dansPolitiques de référence. Remplacez
regionetaccountIDpar leurs valeurs réelles avant de copier la liste des instructions dans la politique en ligne de votre rôle. -
(Facultatif) Pour permettre de répertorier les clusters Amazon EMR déployés dans le même compte que Studio, ajoutez une politique en ligne supplémentaire à votre rôle d’exécution Studio, tel que défini dans Politiques Amazon EMR de liste dans Politiques de référence.
-
-
Étape 3 : associez vos rôles supposables (rôle d'accès) à votre domaine ou à votre profil utilisateur. JupyterLab les utilisateurs de Studio peuvent utiliser la console SageMaker AI ou le script fourni.
Choisissez l’onglet qui correspond à votre cas d’utilisation.