

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Erste Schritte mit Amazon EMR Serverless
<a name="getting-started"></a>

Dieses Tutorial hilft Ihnen bei den ersten Schritten mit EMR Serverless, wenn Sie einen Spark- oder Hive-Beispiel-Workload bereitstellen. Sie werden Ihre eigene Anwendung erstellen, ausführen und debuggen. In den meisten Teilen dieses Tutorials zeigen wir Standardoptionen.

Bevor Sie eine serverlose EMR-Anwendung starten, führen Sie die folgenden Aufgaben aus.

**Topics**
+ [Erteilen Sie Berechtigungen zur Verwendung von EMR Serverless](#gs-permissions)
+ [Speicher für EMR Serverless vorbereiten](#gs-prepare-storage)
+ [Erstellen Sie ein EMR Studio zur Ausführung interaktiver Workloads](#gs-interactive)
+ [Erstellen Sie eine Job-Runtime-Rolle](#gs-runtime-role)
+ [Erste Schritte mit EMR Serverless über die Konsole](gs-console.md)
+ [Erste Schritte vom AWS CLI](gs-cli.md)

## Erteilen Sie Berechtigungen zur Verwendung von EMR Serverless
<a name="gs-permissions"></a>

Um EMR Serverless verwenden zu können, benötigen Sie eine Benutzer- oder IAM-Rolle mit einer angehängten Richtlinie, die Berechtigungen für EMR Serverless gewährt. Folgen Sie den Anweisungen unter, um einen Benutzer zu erstellen und diesem Benutzer die entsprechende Richtlinie zuzuweisen. [Erteilen Sie Berechtigungen](setting-up.md#setting-up-iam)

## Speicher für EMR Serverless vorbereiten
<a name="gs-prepare-storage"></a>

In diesem Tutorial verwenden Sie einen S3-Bucket, um Ausgabedateien und Protokolle aus dem Spark- oder Hive-Beispiel-Workload zu speichern, den Sie mit einer serverlosen EMR-Anwendung ausführen werden. Um einen Bucket zu erstellen, folgen Sie den Anweisungen unter [Bucket erstellen](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html) im *Amazon Simple Storage Service Console-Benutzerhandbuch*. Ersetzen Sie alle weiteren Verweise auf `amzn-s3-demo-bucket` durch den Namen des neu erstellten Buckets. 

## Erstellen Sie ein EMR Studio zur Ausführung interaktiver Workloads
<a name="gs-interactive"></a>

Wenn Sie EMR Serverless verwenden möchten, um interaktive Abfragen über Notebooks auszuführen, die in EMR Studio gehostet werden, müssen Sie einen S3-Bucket und die [Mindestdienstrolle für EMR Serverless](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-service-role.html#emr-studio-service-role-serverless) angeben, um einen Workspace zu erstellen. Die Schritte zur Einrichtung finden Sie unter [EMR Studio einrichten](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-set-up.html) im *Amazon EMR Management Guide*. Weitere Informationen zu interaktiven Workloads finden Sie unter. [Führen Sie interaktive Workloads mit EMR Serverless über EMR Studio aus](interactive-workloads.md)

## Erstellen Sie eine Job-Runtime-Rolle
<a name="gs-runtime-role"></a>

Auftragsausführungen in EMR Serverless verwenden eine Runtime-Rolle, die zur Laufzeit detaillierte Berechtigungen für bestimmte AWS-Services Ressourcen bereitstellt. In diesem Tutorial hostet ein öffentlicher S3-Bucket die Daten und Skripte. Der Bucket `amzn-s3-demo-bucket` speichert die Ausgabe. 

Um eine Job-Runtime-Rolle einzurichten, erstellen Sie zunächst eine Runtime-Rolle mit einer Vertrauensrichtlinie, damit EMR Serverless die neue Rolle verwenden kann. Als Nächstes fügen Sie dieser Rolle die erforderliche S3-Zugriffsrichtlinie hinzu. Die folgenden Schritte führen Sie durch den Prozess.

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

1. Navigieren Sie zur IAM-Konsole unter[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Wählen Sie im linken Navigationsbereich **Richtlinien** aus.

1. Wählen Sie **Richtlinie erstellen** aus.

1. Die Seite „**Richtlinie erstellen**“ wird auf einer neuen Registerkarte geöffnet. Wählen Sie den **Richtlinien-Editor** als Json aus und fügen Sie den Richtlinien-JSON unten ein.
**Wichtig**  
Ersetzen Sie die `amzn-s3-demo-bucket` nachstehende Richtlinie durch den tatsächlichen Bucket-Namen, der in erstellt wurde[Speicher für EMR Serverless vorbereiten](#gs-prepare-storage). Dies ist eine grundlegende Richtlinie für den S3-Zugriff. Weitere Beispiele für Rollen zur Laufzeit von Jobs finden Sie unter[Job-Runtime-Rollen für 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. Wählen Sie **Weiter**, um einen Namen für Ihre Richtlinie einzugeben, z. `EMRServerlessS3AndGlueAccessPolicy` B. **Richtlinie erstellen** 

1. Wählen Sie im linken Navigationsbereich der IAM-Konsole die Option **Rollen** aus.

1. Wählen Sie **Rolle erstellen** aus.

1. Wählen Sie als Rollentyp die Option **Benutzerdefinierte Vertrauensrichtlinie** aus und fügen Sie die folgende Vertrauensrichtlinie ein. Auf diese Weise können Jobs, die an Ihre Amazon EMR Serverless-Anwendungen gesendet wurden, in Ihrem Namen AWS-Services auf andere Jobs zugreifen.

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

****  

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

------

1. **Wählen Sie **Weiter**, um zur Seite „**Berechtigungen hinzufügen**“ zu navigieren, und wählen Sie EMRServerless dann S3. AndGlueAccessPolicy**

1. Geben Sie auf der Seite **Name, überprüfen und erstellen** **unter Rollenname** einen Namen für Ihre Rolle ein, `EMRServerlessS3RuntimeRole` z. B. Um diese IAM-Rolle zu erstellen, wählen Sie **Rolle erstellen** aus.

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

1. Erstellen Sie eine Datei namens `emr-serverless-trust-policy.json`, die die Vertrauensrichtlinie enthält, die für die IAM-Rolle verwendet werden soll. Die Datei sollte die folgende Richtlinie enthalten.

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

****  

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

------

1. Erstellen einer IAM-Rolle namens `EMRServerlessS3RuntimeRole`. Verwenden Sie die Vertrauensrichtlinie, die Sie im vorherigen Schritt erstellt haben.

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

   Notieren Sie sich den ARN in der Ausgabe. Sie verwenden den ARN der neuen Rolle bei der Einreichung des Jobs, im Folgenden als`job-role-arn`.

1. Erstellen Sie eine Datei mit dem Namen`emr-sample-access-policy.json`, die die IAM-Richtlinie für Ihren Workload definiert. Dies bietet Lesezugriff auf das Skript und die in öffentlichen S3-Buckets gespeicherten Daten sowie Lese- und Schreibzugriff auf. `amzn-s3-demo-bucket` 
**Wichtig**  
Ersetzen Sie die folgende Richtlinie durch den tatsächlichen Bucket-Namen, der `amzn-s3-demo-bucket` in.. erstellt wurde. [Speicher für EMR Serverless vorbereiten](#gs-prepare-storage) Dies ist eine grundlegende Richtlinie für den Zugriff auf AWS Glue und S3. Weitere Beispiele für Job-Runtime-Rollen finden Sie unter[Job-Runtime-Rollen für 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. Erstellen Sie eine IAM-Richtlinie `EMRServerlessS3AndGlueAccessPolicy` mit dem Namen der Richtliniendatei, die Sie in **Schritt 3** erstellt haben. Notieren Sie sich den ARN in der Ausgabe, da Sie im nächsten Schritt den ARN der neuen Richtlinie verwenden werden. 

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

   Notieren Sie sich den ARN der neuen Richtlinie in der Ausgabe. Sie werden ihn `policy-arn` im nächsten Schritt ersetzen.

1. Hängen Sie die IAM-Richtlinie `EMRServerlessS3AndGlueAccessPolicy` an die Job-Runtime-Rolle `EMRServerlessS3RuntimeRole` an.

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

------