Configurer l’authentification AWS pour le déploiement SageMaker
Cette documentation a été retirée et pourrait ne pas être mise à jour. Les produits, services ou technologies mentionnés dans ce contenu ne sont plus pris en charge. Pour consulter la documentation administrative actuelle, consultez Gérez votre compte Databricks.
Cet article décrit comment configurer les profils d'instance afin de vous permettre de déployer des modèles MLflow sur AWS SageMaker. Il est possible d'utiliser des clés d'accès pour un utilisateur AWS avec des autorisations similaires à celles du rôle IAM spécifié ici, mais Databricks recommande d'utiliser des profils d'instance pour autoriser un cluster à se déployer sur SageMaker.
Étape 1 : Créez un rôle IAM AWS et attachez la politique de permissions SageMaker
-
Dans la console AWS, accédez au service IAM .
-
Cliquez sur l’onglet tab dans la barre latérale.
-
Cliquez sur Créer un rôle .
-
Sous Sélectionner le type d'entité de confiance , sélectionnez service AWS .
-
Sous Choisissez le service qui utilisera ce rôle , cliquez sur le service EC2 .

-
Cliquez sur **Suivant : autorisations**.
-
-
Dans l'écran Attacher des stratégies d'autorisations , sélectionnez AmazonSageMakerFullAccess .

-
Cliquez sur Suivant : Examiner .
-
Dans le champ Nom du rôle , saisissez un nom de rôle.
-
Cliquez sur Créer un rôle .
-
Dans la liste Rôles, cliquez sur le nom du rôle.

Notez votre ARN du rôle, qui est du format arn:aws:iam::<account-id>:role/<role-name>.
Étape 2 : Ajouter une politique inline pour l'accès aux Ressources de déploiement SageMaker
Ajoutez une politique au rôle.
-
Cliquez sur
.
-
Collez la définition JSON suivante :
JSON{
"Version": "2012-10-17",
"Statement": [
{
"Action": ["s3:PutObjectAcl", "s3:PutObjectTagging"],
"Resource": ["arn:aws:s3:::mlflow-sagemaker-*-<account-id>", "arn:aws:s3:::mlflow-sagemaker-*-<account-id>/*"],
"Effect": "Allow"
},
{
"Action": ["iam:GetRole"],
"Resource": ["arn:aws:iam::<account-id>:role/<role-name>"],
"Effect": "Allow"
},
{
"Action": ["ecr:DescribeGitRepositories"],
"Resource": ["arn:aws:ecr:*:<account-id>:repository/*"],
"Effect": "Allow"
}
]
}
Ces autorisations sont requises pour permettre au cluster Databricks de :
- Obtenir l'ARN canonique du nouveau rôle.
- Upload des objets à portée de permission vers S3 pour une utilisation par les serveurs d'Endpoint SageMaker.
Les autorisations du rôle se présenteront comme suit :

Étape 3 : Mettre à jour la politique de confiance du rôle
Accorder l'accès iam:AssumeRole à sagemaker.amazonaws.com.
-
Accédez à Role Summary > Trust relationships > Edit trust relationship .
-
Collez et enregistrez le JSON suivant :
JSON{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
},
{
"Effect": "Allow",
"Principal": {
"Service": "sagemaker.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
Les relations de confiance de votre rôle devraient ressembler à ce qui suit :

Étape 4 : Autorisez le rôle AWS de votre Workspace Databricks à transmettre le rôle
-
Accédez à votre rôle AWS du workspace Databricks.
-
Cliquez sur
.
-
Collez et enregistrez la définition JSON suivante :
JSON{
"Version": "2012-10-17",
"Statement": [
{
"Action": ["iam:PassRole"],
"Resource": ["arn:aws:iam::<account-id>:role/<role-name>"],
"Effect": "Allow"
}
]
}
où account-id est l'ID du compte exécutant le service AWS SageMaker et
role-name est le rôle que vous avez défini à l'étape 1.
Étape 5 : Créer un profil d'instance de cluster Databricks
-
Dans vos paramètres d'administration du Workspace Databricks, accédez à l'onglet **Security tab**, puis cliquez sur **Gérer** à côté de **Profils d'instance**.
-
Cliquez sur Ajouter un profil d'instance .
-
Collez l'ARN du profil d'instance associé au rôle AWS que vous avez créé. Cet ARN est du type
arn:aws:iam::<account-id>:instance-profile/<role-name>et se trouve dans la console AWS :
-
Veuillez cliquer sur le bouton Ajouter.

Pour plus de détails, consultez Tutoriel : Configurer l'accès S3 avec un profil d'instance.
Étape 6 : Lancer un cluster avec le profil d'instance
Consultez les profils d'instance.