

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.

# Commencer à utiliser Amazon EMR Serverless
<a name="getting-started"></a>

Ce didacticiel vous aide à démarrer avec EMR Serverless lorsque vous déployez un exemple de charge de travail Spark ou Hive. Vous allez créer, exécuter et déboguer votre propre application. Nous présentons les options par défaut dans la plupart des parties de ce didacticiel.

Avant de lancer une application EMR sans serveur, effectuez les tâches suivantes.

**Topics**
+ [Accorder des autorisations pour utiliser EMR Serverless](#gs-permissions)
+ [Préparer le stockage pour EMR Serverless](#gs-prepare-storage)
+ [Création d'un studio EMR pour exécuter des charges de travail interactives](#gs-interactive)
+ [Création d'un rôle d'exécution de tâches](#gs-runtime-role)
+ [Commencer à utiliser EMR Serverless depuis la console](gs-console.md)
+ [Commencer à partir du AWS CLI](gs-cli.md)

## Accorder des autorisations pour utiliser EMR Serverless
<a name="gs-permissions"></a>

Pour utiliser EMR Serverless, vous avez besoin d'un utilisateur ou d'un rôle IAM associé à une politique qui accorde des autorisations pour EMR Serverless. Pour créer un utilisateur et associer la politique appropriée à cet utilisateur, suivez les instructions figurant dans[Accorder des autorisations](setting-up.md#setting-up-iam).

## Préparer le stockage pour EMR Serverless
<a name="gs-prepare-storage"></a>

Dans ce didacticiel, vous allez utiliser un compartiment S3 pour stocker les fichiers de sortie et les journaux de l'exemple de charge de travail Spark ou Hive que vous exécuterez à l'aide d'une application EMR sans serveur. Pour créer un bucket, suivez les instructions de la section [Création d'un bucket](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html) dans le *guide de l'utilisateur de la console Amazon Simple Storage Service*. Remplacez toute autre référence `amzn-s3-demo-bucket` à par le nom du compartiment nouvellement créé. 

## Création d'un studio EMR pour exécuter des charges de travail interactives
<a name="gs-interactive"></a>

Si vous souhaitez utiliser EMR Serverless pour exécuter des requêtes interactives via des blocs-notes hébergés dans EMR Studio, vous devez spécifier un compartiment S3 et le [rôle de service minimum pour EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-service-role.html#emr-studio-service-role-serverless) Serverless afin de créer un espace de travail. Pour connaître les étapes de configuration, consultez la section [Configurer un studio EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-set-up.html) dans le guide de gestion Amazon *EMR.* Pour plus d'informations sur les charges de travail interactives, consultez[Exécutez des charges de travail interactives avec EMR Serverless via EMR Studio](interactive-workloads.md).

## Création d'un rôle d'exécution de tâches
<a name="gs-runtime-role"></a>

Les exécutions de tâches dans EMR Serverless utilisent un rôle d'exécution qui fournit des autorisations détaillées à des ressources spécifiques Services AWS lors de l'exécution. Dans ce didacticiel, un compartiment S3 public héberge les données et les scripts. Le bucket `amzn-s3-demo-bucket` stocke la sortie. 

Pour configurer un rôle d'exécution de tâche, créez d'abord un rôle d'exécution avec une politique de confiance afin qu'EMR Serverless puisse utiliser le nouveau rôle. Ensuite, associez la politique d'accès S3 requise à ce rôle. Les étapes suivantes vous guident tout au long du processus.

------
#### [ Console ]

1. Accédez à la console IAM à [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) l'adresse.

1. Dans le volet de navigation de gauche, choisissez **Politiques**.

1. Choisissez **Create Policy** (Créer une politique).

1. La page **Créer une politique** s'ouvre dans un nouvel onglet. Sélectionnez l'**éditeur de politique en** tant que Json et collez le JSON de politique ci-dessous.
**Important**  
Remplacez `amzn-s3-demo-bucket` dans la politique ci-dessous par le nom réel du bucket créé dans[Préparer le stockage pour EMR Serverless](#gs-prepare-storage). Il s'agit d'une politique de base pour l'accès à S3. Pour d'autres exemples de rôles d'exécution de tâches, consultez[Rôles d'exécution des tâches pour Amazon EMR Serverless](security-iam-runtime-role.md).

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "ReadAccessForEMRSamples",
         "Effect": "Allow",
         "Action": [
           "s3:GetObject",
           "s3:ListBucket"
         ],
         "Resource": [
           "arn:aws:s3:::*.elasticmapreduce",
           "arn:aws:s3:::*.elasticmapreduce/*"
         ]
       },
       {
         "Sid": "FullAccessToOutputBucket",
         "Effect": "Allow",
         "Action": [
           "s3:PutObject",
           "s3:GetObject",
           "s3:ListBucket",
           "s3:DeleteObject"
         ],
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket",
           "arn:aws:s3:::amzn-s3-demo-bucket/*"
         ]
       },
       {
         "Sid": "GlueCreateAndReadDataCatalog",
         "Effect": "Allow",
         "Action": [
           "glue:GetDatabase",
           "glue:CreateDatabase",
           "glue:GetDataBases",
           "glue:CreateTable",
           "glue:GetTable",
           "glue:UpdateTable",
           "glue:DeleteTable",
           "glue:GetTables",
           "glue:GetPartition",
           "glue:GetPartitions",
           "glue:CreatePartition",
           "glue:BatchCreatePartition",
           "glue:GetUserDefinedFunctions"
         ],
         "Resource": [
           "*"
         ]
       }
     ]
   }
   ```

------

1. Choisissez **Suivant** pour saisir le nom de votre politique, tel que `EMRServerlessS3AndGlueAccessPolicy` « **Créer une politique** » 

1. Dans le volet de navigation gauche de la console IAM, sélectionnez **Rôles**.

1. Choisissez **Créer un rôle**.

1. Pour le type de rôle, choisissez **Politique de confiance personnalisée** et collez la politique de confiance suivante. Cela permet aux tâches soumises à vos applications Amazon EMR Serverless d'accéder à d'autres applications en votre Services AWS nom.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "sts:AssumeRole"
         ],
         "Resource": "arn:aws:iam::123456789012:role/EMRServerlessExecutionRole",
         "Sid": "AllowSTSAssumerole"
       }
     ]
   }
   ```

------

1. Choisissez **Suivant** pour accéder à la page **Ajouter des autorisations**, puis sélectionnez **EMRServerlessS3 AndGlueAccessPolicy**.

1. Dans la page **Nom, révision et création**, pour **Nom du rôle**, entrez le nom de votre rôle, par exemple,`EMRServerlessS3RuntimeRole`. Pour créer ce rôle IAM, choisissez **Create role**.

------
#### [ CLI ]

1. Créez un fichier nommé `emr-serverless-trust-policy.json` contenant la stratégie d'approbation à utiliser pour le rôle IAM. Le fichier doit contenir la politique suivante.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "EMRServerlessTrustPolicy",
         "Action": [
           "sts:AssumeRole"
         ],
         "Effect": "Allow",
         "Resource": "arn:aws:iam::123456789012:role/EMRServerlessExecutionRole"
       }
     ]
   }
   ```

------

1. Créez un rôle IAM nommé `EMRServerlessS3RuntimeRole`. Utilisez la politique de confiance que vous avez créée à l'étape précédente.

   ```
   aws iam create-role \
       --role-name EMRServerlessS3RuntimeRole \
       --assume-role-policy-document file://emr-serverless-trust-policy.json
   ```

   Notez l'ARN dans la sortie. Vous utilisez l'ARN du nouveau rôle lors de la soumission des tâches, appelé ensuite`job-role-arn`.

1. Créez un fichier nommé `emr-sample-access-policy.json` qui définit la politique IAM pour votre charge de travail. Cela fournit un accès en lecture au script et aux données stockées dans des compartiments S3 publics et un accès en lecture-écriture à. `amzn-s3-demo-bucket` 
**Important**  
Remplacez `amzn-s3-demo-bucket` dans la politique ci-dessous par le nom réel du bucket créé dans[Préparer le stockage pour EMR Serverless](#gs-prepare-storage).. Il s'agit d'une politique de base pour l'accès à AWS Glue et S3. Pour d'autres exemples de rôles d'exécution de tâches, consultez[Rôles d'exécution des tâches pour Amazon EMR Serverless](security-iam-runtime-role.md).

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "ReadAccessForEMRSamples",
         "Effect": "Allow",
         "Action": [
           "s3:GetObject",
           "s3:ListBucket"
         ],
         "Resource": [
           "arn:aws:s3:::*.elasticmapreduce",
           "arn:aws:s3:::*.elasticmapreduce/*"
         ]
       },
       {
         "Sid": "FullAccessToOutputBucket",
         "Effect": "Allow",
         "Action": [
           "s3:PutObject",
           "s3:GetObject",
           "s3:ListBucket",
           "s3:DeleteObject"
         ],
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket",
           "arn:aws:s3:::amzn-s3-demo-bucket/*"
         ]
       },
       {
         "Sid": "GlueCreateAndReadDataCatalog",
         "Effect": "Allow",
         "Action": [
           "glue:GetDatabase",
           "glue:CreateDatabase",
           "glue:GetDataBases",
           "glue:CreateTable",
           "glue:GetTable",
           "glue:UpdateTable",
           "glue:DeleteTable",
           "glue:GetTables",
           "glue:GetPartition",
           "glue:GetPartitions",
           "glue:CreatePartition",
           "glue:BatchCreatePartition",
           "glue:GetUserDefinedFunctions"
         ],
         "Resource": [
           "*"
         ]
       }
     ]
   }
   ```

------

1. Créez une stratégie IAM nommée `EMRServerlessS3AndGlueAccessPolicy` avec le fichier de stratégie que vous avez créé à l'**étape 3**. Prenez note de l'ARN dans la sortie, car vous utiliserez l'ARN de la nouvelle politique à l'étape suivante. 

   ```
   aws iam create-policy \
       --policy-name EMRServerlessS3AndGlueAccessPolicy \
       --policy-document file://emr-sample-access-policy.json
   ```

   Notez l'ARN de la nouvelle politique dans le résultat. Vous le remplacerez `policy-arn` à l'étape suivante.

1. Associez la politique IAM `EMRServerlessS3AndGlueAccessPolicy` au rôle `EMRServerlessS3RuntimeRole` d'exécution du job.

   ```
   aws iam attach-role-policy \
       --role-name EMRServerlessS3RuntimeRole \
       --policy-arn policy-arn
   ```

------