

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.

# Tutorial: Erstellen Sie eine parallel Jobdefinition mit mehreren Knoten auf Amazon EC2 EC2-Ressourcen
<a name="multi-node-job-def-ec2"></a>

Um eine parallel Jobdefinition mit mehreren Knoten auf Amazon Elastic Compute Cloud (Amazon EC2) -Ressourcen zu erstellen.

**Anmerkung**  
Informationen zum Erstellen einer Auftragsdefinition *mit einem Knoten* finden Sie unter. [Erstellen Sie eine Auftragsdefinition mit einem Knoten auf Amazon EC2 EC2-Ressourcen](create-job-definition-EC2.md)

**So erstellen Sie eine parallel Auftragsdefinition mit mehreren Knoten auf Amazon EC2 EC2-Ressourcen:**

1. Öffnen Sie die AWS Batch Konsole unter. [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)

1. Wählen Sie in der Navigationsleiste die aus, die Sie verwenden AWS-Region möchten.

1. Wählen Sie im Navigationsbereich die Option **Jobdefinitionen** aus.

1. Wählen Sie **Erstellen** aus.

1. Wählen Sie als **Orchestrierungstyp** **Amazon Elastic Compute Cloud (Amazon EC2**).

1. **Aktivieren Sie für Multi-Node-Parallel** aktivieren die Option Multi-Node-Parallel.

1. Geben Sie **unter Name** einen eindeutigen Namen für Ihre Jobdefinition ein. Der Name kann bis zu 128 Zeichen lang sein und Groß- und Kleinbuchstaben, Zahlen, Bindestriche (-) und Unterstriche (\$1) enthalten.

1. (Optional) Geben Sie für das **Ausführungstimeout** die maximale Anzahl von Sekunden an, für die Auftragsversuche ausgeführt werden sollen. Wenn ein Versuch die Timeoutdauer überschreitet, wird der Versuch gestoppt und erhält einen `FAILED` Status. Weitere Informationen finden Sie unter [Timeouts bei der Job](job_timeouts.md).

1. (Optional) Aktivieren Sie die **Zeitplanungspriorität**. Geben Sie einen Wert für die Planungspriorität zwischen 0 und 100 ein. Höheren Werten wird eine höhere Priorität gegenüber niedrigeren Werten eingeräumt.

1. (Optional) Geben Sie für **Auftragsversuche** ein, wie oft AWS Batch versucht wird, den Job in den `RUNNABLE` Status zu versetzen. Geben Sie eine Zahl zwischen 1 und 10 ein.

1. (Optional) Wählen Sie **unter Bedingungen für die Wiederholungsstrategie** die Option Beim **Beenden bewerten hinzufügen** aus. Geben Sie mindestens einen Parameterwert ein und wählen Sie dann eine **Aktion** aus. Für jeden Satz von Bedingungen muss **Aktion** entweder auf „**Erneut versuchen**“ oder „**Beenden**“ gesetzt sein. Diese Aktionen bedeuten Folgendes: 
   + **Wiederholen** — AWS Batch Wiederholt die Versuche, bis die von Ihnen angegebene Anzahl von Auftragsversuchen erreicht ist.
   + **Beenden** — AWS Batch beendet die Wiederholung des Auftrags.
**Wichtig**  
Wenn Sie „Beim **Beenden bewerten hinzufügen**“ wählen, müssen Sie mindestens einen Parameter konfigurieren und entweder eine **Aktion** auswählen oder „Beim **Beenden auswerten entfernen**“ wählen.

1. (Optional) Erweitern Sie „**Tags**“ und wählen Sie dann „**Tag hinzufügen**“, um der Ressource Tags hinzuzufügen. Geben Sie einen Schlüssel und einen optionalen Wert ein und wählen Sie dann **Tag hinzufügen** aus. Sie können auch Tags **propagieren aktivieren, um Tags** aus dem Job und der Auftragsdefinition an die Amazon ECS-Aufgabe weiterzugeben.

1. Wählen Sie „**Nächste** Seite“.

1. Geben Sie unter **Number of Nodes (Anzahl von Knoten)** die Gesamtanzahl von Knoten ein, die für Ihren Auftrag verwendet werden sollen.

1. Unter **Main node (Hauptknoten)** geben Sie den für den Hauptknoten zu verwendenden Knotenindex ein. Der standardmäßige Hauptknotenindex lautet `0`.

1. Wählen Sie für **Instance-Typ** einen Instance-Typ aus.
**Anmerkung**  
Der von Ihnen gewählte Instance-Typ gilt für alle Knoten.

1. Wählen Sie für **Parameter** die Option **Parameter hinzufügen** aus, um Platzhalter für die Parametersetzung als **Schlüssel** - und optionale **Wertepaare** hinzuzufügen.

1. Gehen Sie im Abschnitt **Knotenbereiche** wie folgt vor:

   1. Wählen Sie **Knotenbereich hinzufügen** aus. Dadurch wird ein Abschnitt mit **Knotenbereich** erstellt.

   1. Legen Sie unter **Target nodes (Zielknoten)** mit der Notation `range_start:range_end` den Bereich für Ihre Knotengruppe fest.

      Sie können bis zu fünf Knotenbereiche für die Knoten erstellen, die Sie für Ihren Job angegeben haben. Knotenbereiche verwenden den Indexwert für einen Knoten und der Knotenindex beginnt bei 0. Stellen Sie sicher, dass der Indexwert für das Bereichsende Ihrer letzten Knotengruppe um eins unter der von Ihnen angegebenen Anzahl von Knoten liegt. Nehmen wir beispielsweise an, Sie haben 10 Knoten angegeben und möchten eine einzelne Knotengruppe verwenden. Dann ist Ihr Endbereich 9.

   1. Wählen Sie **unter Bild** das Docker Bild aus, das Sie für Ihren Job verwenden möchten. Images in der Docker Hub-Registrierung sind standardmäßig verfügbar. Sie können auch andere Repositorys mit `repository-url/image:tag` angeben. Der Name kann bis zu 225 Zeichen lang sein. Er kann Groß- und Kleinbuchstaben, Zahlen, Bindestriche (-), Unterstriche (\$1), Doppelpunkte (:), Schrägstriche (/) und Zahlenzeichen (\$1) enthalten. Dieser Parameter wird `Image` zugeordnet im Abschnitt [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) (Erstellen eines Containers) im [Docker-Remote-API](https://docs.docker.com/engine/api/v1.38/) und dem `IMAGE`-Parameter von [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/).
**Anmerkung**  
Die Docker-Image-Architektur muss der Prozessorarchitektur der Compute-Ressourcen entsprechen, für die sie geplant sind. Beispielsweise können ARM-basierte Docker-Images nur auf ARM-basierten Rechenressourcen ausgeführt werden.
      + Bilder in öffentlichen Amazon ECR-Repositorys verwenden die vollständigen `registry/repository[:tag]` oder die `registry/repository[@digest]` Namenskonventionen (z. B.`public.ecr.aws/registry_alias/my-web-app:latest`).
      + Bilder in Amazon ECR-Repositorys verwenden die vollständige `registry/repository[:tag]` Namenskonvention. Beispiel: `aws_account_id.dkr.ecr.region.amazonaws.com``/my-web-app:latest`
      + Images in offiziellen Repositorys in Docker Hub verwenden einen einzelnen Namen (z. B. `ubuntu` oder `mongo`).
      + Images in anderen Repositorys in Docker Hub sind mit einem Organisationsnamen qualifiziert (z. B `amazon/amazon-ecs-agent`).
      + Image in anderen Online-Repositorys sind durch einen Domain-Namen zusätzlich qualifiziert (z. B. `quay.io/assemblyline/ubuntu`).

   1. Geben Sie für **Command** die Befehle als entsprechende **JSON-String-Array-Entsprechung** in das Feld ein.

      Dieser Parameter ist `Cmd` im Abschnitt [Erstellen eines Containers](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) der [Docker Remote-API](https://docs.docker.com/engine/api/v1.38/) und dem Parameter `COMMAND` von [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/) zugeordnet. Weitere Informationen zu dem Docker `CMD` Parameter finden Sie unter [https://docs.docker.com/engine/reference/builder/](https://docs.docker.com/engine/reference/builder/#cmd) \$1cmd.
**Anmerkung**  
Sie können Standardwerte für die Parameterersetzung und Platzhalter in Ihrem Befehl verwenden. Weitere Informationen finden Sie unter [Parameter](job_definition_parameters.md#parameters).

   1. Geben Sie für **v** die Anzahl von v anCPUs, die für CPUs den Container reserviert werden sollen. Dieser Parameter ordnet zu `CpuShares` im Bereich [Erstellen eines Containers](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) der [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) und der Option `--cpu-shares` für die [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/) zu. Jede vCPU entspricht 1.024 CPU-Anteilen. Sie müssen mindestens eine vCPU angeben.

   1. Geben Sie unter **Arbeitsspeicher** die Arbeitsspeichergrenze (in MiB) für die Präsentation an den Container des Auftrags an. Wenn Ihr Container versucht, den hier angegebenen Arbeitsspeicher zu überschreiten, wird der Container angehalten. Dieser Parameter ordnet zu `Memory` im Bereich [Erstellen eines Containers](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) der [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) und der Option `--memory` für die [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/) zu. Sie müssen mindestens 4 MB Arbeitsspeicher für einen Auftrag festlegen.
**Anmerkung**  
Um Ihre Ressourcennutzung zu maximieren, können Sie Ihren Jobs so viel Speicher wie möglich für einen bestimmten Instance-Typ zur Verfügung stellen. Weitere Informationen finden Sie unter [Speicherverwaltung für Rechenressourcen](memory-management.md).

   1. (Optional) Geben Sie **unter Anzahl von GPUs** die Anzahl GPUs Ihrer Job-Nutzungen an. Der Job wird auf einem Container mit der angegebenen Anzahl von Containern ausgeführt GPUs , die an diesen Container angeheftet sind.

   1. (Optional) Für die **Rolle Job** können Sie eine IAM-Rolle angeben, die dem Container in Ihrem Job Berechtigungen zur Verwendung von erteilt. AWS APIs Diese Funktion verwendet Amazon ECS IAM-Rollen für Aufgabenfunktionen. Weitere Informationen, einschließlich der Voraussetzungen für die Konfiguration, finden Sie unter [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) im *Amazon Elastic Container Service Developer Guide*.
**Anmerkung**  
Für Jobs, die auf Fargate-Ressourcen ausgeführt werden, ist eine Jobrolle erforderlich.
**Anmerkung**  
Hier werden nur Rollen angezeigt, für die die **Amazon Elastic Container Service Task Role** Vertrauensstellung besteht. Weitere Informationen zum Erstellen einer IAM-Rolle für Ihre AWS Batch Jobs finden Sie unter [Creating an IAM Role and Policy for your Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html#create_task_iam_policy_and_role) im *Amazon Elastic Container Service Developer Guide*.

   1. (Optional) Geben Sie für die **Ausführungsrolle** eine IAM-Rolle an, die den Amazon ECS-Container-Agenten die Erlaubnis erteilt, AWS API-Aufrufe in Ihrem Namen durchzuführen. Diese Funktion verwendet Amazon ECS IAM-Rollen für Aufgabenfunktionen. Weitere Informationen finden Sie unter [IAM-Rollen für die Ausführung von Amazon ECS-Aufgaben](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_execution_IAM_role.html) im *Amazon Elastic Container Service Developer Guide*. 

1. (Optional) Erweitern Sie **Zusätzliche Konfiguration**:

   1. Wählen Sie für **Umgebungsvariablen** die Option **Umgebungsvariable hinzufügen** aus, um Umgebungsvariablen als Name-Wert-Paare hinzuzufügen. Diese Variablen werden an den Container übergeben.

   1. Für die **Job-Rollenkonfiguration** können Sie eine IAM-Rolle angeben, die dem Container in Ihrem Job Berechtigungen zur Verwendung von gewährt. AWS APIs Diese Funktion verwendet Amazon ECS IAM-Rollen für Aufgabenfunktionen. Weitere Informationen, einschließlich der Voraussetzungen für die Konfiguration, finden Sie unter [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) im *Amazon Elastic Container Service Developer Guide*.
**Anmerkung**  
Für Jobs, die auf Fargate-Ressourcen ausgeführt werden, ist eine Jobrolle erforderlich.
**Anmerkung**  
Hier werden nur Rollen angezeigt, für die die **Amazon Elastic Container Service Task Role** Vertrauensstellung besteht. Weitere Informationen zum Erstellen einer IAM-Rolle für Ihre AWS Batch Jobs finden Sie unter [Creating an IAM Role and Policy for your Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html#create_task_iam_policy_and_role) im *Amazon Elastic Container Service Developer Guide*.

   1. Geben Sie für die **Ausführungsrolle** eine IAM-Rolle an, die den Amazon ECS-Container-Agenten die Erlaubnis erteilt, AWS API-Aufrufe in Ihrem Namen durchzuführen. Diese Funktion verwendet Amazon ECS IAM-Rollen für Aufgabenfunktionen. Weitere Informationen finden Sie unter [IAM-Rollen für die Ausführung von Amazon ECS-Aufgaben](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_execution_IAM_role.html) im *Amazon Elastic Container Service Developer Guide*.

1. Im Abschnitt **Sicherheitskonfiguration**:

   1. (Optional) Um dem Container Ihres Jobs erhöhte Rechte auf der Host-Instance zu gewähren (ähnlich wie dem `root` Benutzer), aktivieren Sie **Privilegiert**. Dieser Parameter ordnet zu `Privileged` im Bereich [Erstellen eines Containers](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) der [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) und der Option `--privileged` für die [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/) zu.

   1. (Optional) Geben Sie **unter Benutzer** den Benutzernamen ein, der im Container verwendet werden soll. Dieser Parameter ordnet zu `User` im Bereich [Erstellen eines Containers](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) der [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) und der Option `--user` für die [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/) zu.

   1. (Optional) Wählen Sie unter **Secrets** die Option **Add secret** aus, um Secrets als Name-Wert-Paare hinzuzufügen. Diese Geheimnisse werden im Container offengelegt. [Weitere Informationen finden Sie unter:SecretOptionsLogConfiguration.](https://docs.aws.amazon.com/batch/latest/APIReference/API_LogConfiguration.html#Batch-Type-LogConfiguration-secretOptions)

1. **Im Abschnitt zur Linux-Konfiguration:**

   1. **Aktivieren Sie die Option Schreibgeschütztes Dateisystem** aktivieren, um den Schreibzugriff auf das Volume zu unterbinden.

   1. (Optional) Aktivieren Sie die Option „**initProzess aktivieren**“, um einen `init` Prozess innerhalb des Containers auszuführen. Dieser Prozess leitet Signale weiter und verarbeitet Prozesse.

   1. Geben Sie für **Größe des gemeinsamen Speichers** die Größe (in MiB) des `/dev/shm` Volumes ein.

   1. Geben Sie für **Max. Swap-Größe** die Gesamtmenge an Swap-Speicher (in MiB) ein, die der Container verwenden kann.

   1. Geben Sie für **Swappiness** einen Wert zwischen 0 und 100 ein, um das Swappiness-Verhalten des Containers anzugeben. Wenn Sie keinen Wert angeben und Swapping aktiviert ist, ist der Standardwert 60. [Weitere Informationen finden Sie unter:Swappiness. LinuxParameters](https://docs.aws.amazon.com/batch/latest/APIReference/API_LinuxParameters.html#Batch-Type-LinuxParameters-swappiness)

   1. (Optional) Wählen Sie für **Geräte** die Option **Gerät hinzufügen aus, um ein Gerät hinzuzufügen**:

      1. Geben Sie für **Container path (Container-Pfad)** den Pfad in der Container-Instance an, um das der Host-Instance zugeordnete Gerät zugänglich zu machen. Wenn Sie dieses Feld leer lassen, wird der Hostpfad im Container verwendet.

      1. Geben Sie für **Host path (Host-Pfad)** den Pfad eines Geräts in der Host-Instance an.

      1. Wählen Sie **unter Berechtigungen** eine oder mehrere Berechtigungen aus, die auf das Gerät angewendet werden sollen. Die verfügbaren Berechtigungen sind **READ**, **WRITE** und **MKNOD**.

1. (Optional) Wählen Sie für **Bereitstellungspunkte** die Option **Konfiguration für Bereitstellungspunkte hinzufügen** aus, um Bereitstellungspunkte für Datenvolumes hinzuzufügen. Sie müssen das Quellvolume und den Containerpfad angeben. Diese Einhängepunkte werden an den Docker Daemon auf einer Container-Instance übergeben. Sie können sich auch dafür entscheiden, das Volume **schreibgeschützt** zu machen.

1. (Optional) Wählen Sie für die **Ulimits-Konfiguration** die Option **Ulimit hinzufügen** aus, um einen `ulimits` Wert für den Container hinzuzufügen. Geben Sie die Werte **Name**, **Soft Limit** und **Hard Limit ein und wählen Sie dann **Add** ulimit** aus.

1. (Optional) Wählen Sie für die **Volumes-Konfiguration** die Option **Volume hinzufügen** aus, um eine Liste von Volumes zu erstellen, die an den Container übergeben werden sollen. Geben Sie den **Namen** und den **Quellpfad** für das Volume ein und wählen Sie dann **Volume hinzufügen**. Sie können sich auch dafür entscheiden, **EFS aktivieren zu aktivieren**.

1. (Optional) Wählen Sie für **Tmpfs** Add **tmpfs aus, um einen Mount hinzuzufügen**. `tmpfs`

1. **Gehen Sie im Abschnitt „Aufgabeneigenschaften“ wie folgt vor:**

   1. Wählen Sie für **Ausführungsrolle — bedingt** eine Rolle aus, damit Amazon ECS-Agenten AWS API-Aufrufe in Ihrem Namen tätigen können. Weitere Informationen zur Erstellung einer **Ausführungsrolle** finden Sie unter[Tutorial: Erstellen Sie die IAM-Ausführungsrolle](create-execution-role.md).

   1. 
**Wichtig**  
Um den **ECS-Ausführungsbefehl** verwenden zu können, muss Ihre Rechenumgebung die [Überlegungen zur Rechenumgebung für parallel Jobs mit mehreren Knoten](mnp-ce.md) erfüllen.

      Wählen Sie den **ECS-Ausführungsbefehl** aktivieren, um den direkten Zugriff auf die Amazon ECS-Container-Shell zu aktivieren und das Host-Betriebssystem zu umgehen. Sie müssen eine **Aufgabenrolle** wählen.
**Wichtig**  
Der **ECS-Befehl Execute** setzt voraus, dass das Dateisystem beschreibbar ist. 

   1. Wählen Sie für **Aufgabenrolle** eine Amazon ECS Identity and Access Management (IAM) -Rolle aus, damit der Container AWS API-Aufrufe in Ihrem Namen tätigen kann. Weitere Informationen finden Sie unter [Amazon ECS-Aufgaben-IAM-Rolle](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) im *Amazon Elastic Container Service Developer Guide*.

1. (Optional) Gehen Sie im Abschnitt zur **Konfiguration der Protokollierung** wie folgt vor:

   1. Wählen **Sie unter Protokolltreiber** den Protokolltreiber aus, den Sie verwenden möchten. [Weitere Informationen zu den verfügbaren Protokolltreibern finden Sie unter:LogDriverLogConfiguration.](https://docs.aws.amazon.com/batch/latest/APIReference/API_LogConfiguration.html#Batch-Type-LogConfiguration-logDriver)
**Anmerkung**  
Standardmäßig wird der `awslogs` Protokolltreiber verwendet.

   1. Wählen Sie **unter Optionen** die **Option Hinzufügen** aus, um eine Option hinzuzufügen. Geben Sie ein Name-Wert-Paar ein und wählen Sie dann Option **hinzufügen**.

   1. Wählen Sie für **Geheimnisse** die Option Geheimnis **hinzufügen** aus. Geben Sie ein Name-Wert-Paar ein und wählen Sie dann **Geheimnis hinzufügen aus, um ein Geheimnis** hinzuzufügen.
**Tipp**  
[Weitere Informationen finden Sie unter:Geheime Optionen. LogConfiguration](https://docs.aws.amazon.com/batch/latest/APIReference/API_LogConfiguration.html#Batch-Type-LogConfiguration-secretOptions)

1. **Wählen Sie Nächste Seite.**

1. Lesen Sie zur **Überprüfung der Jobdefinition** die Konfigurationsschritte. Wenn Sie Änderungen vornehmen müssen, wählen Sie **Edit** (Bearbeiten). Wenn Sie fertig sind, wählen Sie **Jobdefinition erstellen**.