Erstellen einer Jobdefinition mit einem einzelnen Knoten für Amazon EC2 EC2-Ressourcen - AWS Batch

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.

Erstellen einer Jobdefinition mit einem einzelnen Knoten für Amazon EC2 EC2-Ressourcen

So erstellen Sie eine neue Aufgabendefinition für Amazon EC2 EC2-Ressourcen:
  1. Öffnen Sie dieAWS Batch Konsole unter https://console.aws.amazon.com/batch/.

  2. Wählen Sie in der NavigationsleisteAWS-Region die gewünschte aus.

  3. Wählen Sie im linken Navigationsbereich die Option Auftragsdefinitionen aus.

  4. Wählen Sie Create (Erstellen) aus.

  5. Wählen Sie Amazon Elastic Compute Cloud (Amazon EC2) aus.

  6. Deaktivieren Sie für die EC2-Plattformkonfiguration die Option Parallelverarbeitung mit mehreren Knoten aktivieren.

  7. Geben Sie unter Name einen eindeutigen Namen für Ihre Aufgabendefinition ein. Der Name kann bis zu 128 Zeichen enthalten. Er kann Groß- und Kleinbuchstaben, Zahlen, Bindestriche (-) und Unterstriche (_) enthalten.

  8. (Optional) Geben Sie für das Ausführungs-Timeout den Timeout-Wert (in Sekunden) ein. Das Ausführungs-Timeout ist die Zeitspanne, bis ein unvollendeter Job beendet wird. Wenn ein Versuch die Timeout-Dauer überschreitet, wird der Versuch gestoppt und in einenFAILED Status versetzt. Weitere Informationen finden Sie unter Job-Timeouts. Der Mindestwert beträgt 60 Sekunden.

  9. (Optional) Aktivieren Sie die Scheduling-Priorität. Geben Sie einen Wert zwischen 0 und 100 ein. Höhere Werte haben eine höhere Priorität.

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

  11. (Optional) Wählen Sie unter „Strategiebedingungen erneut versuchen“ die Option Bewertung beim Beenden 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 auf Beenden gesetzt werden. Diese Aktionen bedeuten Folgendes:

    • AWS BatchWiederholen — Der Versuch wird wiederholt, bis die von Ihnen angegebene Anzahl von Jobversuchen erreicht ist.

    • Beenden —AWS Batch stoppt den erneuten Versuch, den Job zu starten.

    Wichtig

    Wenn Sie „Bewertung beim Beenden hinzufügen“ wählen, müssen Sie mindestens einen Parameter konfigurieren und entweder eine Aktion auswählen oder Bewertung beim Beenden entfernen wählen.

  12. (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.

  13. (Optional).

  14. Wählen Sie Nächste Seite.

  15. Gehen Sie im Abschnitt Container-Konfiguration wie folgt vor:

    1. Wählen Sie unter Bild dasDocker Bild aus, das Sie für Ihren Job verwenden möchten. Images in derDocker Hub Registry sind standardmäßig verfügbar. Sie können auch andere Repositorys mit repository-url/image:tag angeben. Der Name kann bis zu 225 Zeichen enthalten. Er kann Groß- und Kleinbuchstaben, Zahlen, Bindestriche (-), Unterstriche (_), Doppelstriche (:), Schrägstriche (/) und Nummernzeichen (#) enthalten. Dieser Parameter wird Image zugeordnet im Abschnitt Create a container (Erstellen eines Containers) im Docker-Remote-API und dem IMAGE-Parameter von docker run.

      Anmerkung

      DockerDie Image-Architektur muss der Prozessorarchitektur der Compute-Ressourcen entsprechen, für die sie geplant sind. So können beispielsweiseArm basierteDocker Images nur aufArm basierten Compute-Ressourcen ausgeführt werden.

      • Bilder in öffentlichen Repositorys von Amazon ECR verwenden die vollständigeregistry/repository[:tag] oderregistry/repository[@digest] benennende Konventionen (z. B.public.ecr.aws/registry_alias/my-web-app:latest).

      • Bilder in Amazon ECR-Repositorys verwenden die vollständigeregistry/repository[:tag] Benennungskonvention (z. B.aws_account_id.dkr.ecr.region.amazonaws.com/my-web-app:latest).

      • Abbilder in offiziellen RepositorysDocker Hub verwenden unter einem einzelnen Namen (z. B.ubuntu odermongo).

      • Images in anderen RepositorysDocker Hub sind mit einem Organisationsnamen qualifiziert (z. B.amazon/amazon-ecs-agent).

      • Image in anderen Online-Repositorys sind durch einen Domänennamen zusätzlich qualifiziert (z. B, quay.io/assemblyline/ubuntu).

    2. Wählen Sie als Befehlssyntax Bash oder JSON.

    3. Geben Sie unter Befehl den Befehl an, der an den Container übergeben werden soll. Für einfachere Befehle geben Sie den Befehl wie für eine Befehlszeile ein. Stellen Sie dann sicher, dass dasJSON Ergebnis korrekt ist und an den übergeben wirdDocker daemon. Verwenden Sie für kompliziertere Befehle (z. B. mit Sonderzeichen) die JSON-Syntax.

      Tipp

      Wählen Sie „Info“, um Beispiele anzuzeigenBash und zuJSON codieren.

      Dieser Parameter ist Cmd im Abschnitt Erstellen eines Containers der Docker Remote-API und dem Parameter COMMAND von docker run zugeordnet. Weitere Informationen zu demDockerCMD Parameter finden Sie unter https://docs.docker.com/engine/reference/builder/#cmd.

      Anmerkung

      Sie können Standardwerte für die Parameterersetzung und Platzhalter in Ihrem Befehl verwenden. Weitere Informationen finden Sie unter Parameter.

    4. (Optional) Geben Sie unter Ausführungsrolle eine IAM-Rolle an, die den Amazon ECS-Containeragenten die Berechtigung erteilt,AWS -API-Aufrufe in Ihrem Namen durchzuführen. Diese Funktion verwendet Amazon ECS IAM-Rollen für Aufgaben. Weitere Informationen finden Sie unter IAM-Rollen zur Amazon ECS-Aufgabenausführung im Amazon Elastic Container Service-Entwicklerhandbuch.

    5. Wählen Sie für die Konfiguration der Aufgabenrolle eine IAM-Rolle aus, die über Berechtigungen für dieAWS APIs verfügt. Diese Funktion verwendet Amazon ECS IAM-Rollen für Aufgaben. Weitere Informationen finden Sie unter IAM-Rollen für Aufgaben im Entwicklerhandbuch zum Amazon Elastic Container Service.

      Anmerkung

      Hier werden nur Rollen angezeigt, für die die Amazon Elastic Container Service Task Role Vertrauensbeziehung besteht. Weitere Informationen zum Erstellen einer IAM-Rolle für IhreAWS Batch Jobs finden Sie unter Erstellen einer IAM-Rolle und -Richtlinie für Ihre Aufgaben im Amazon Elastic Container Service Developer Guide.

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

  17. Gehen Sie im Abschnitt Umgebungskonfiguration wie folgt vor:

    1. Geben Sie für vCPUs die Anzahl der vCPUs ein, die für den Container reserviert werden sollen. Dieser Parameter ordnet zu CpuShares im Bereich Erstellen eines Containers der Docker Remote API und der Option --cpu-shares für die docker run zu. Jede vCPU entspricht 1.024 CPU-Anteilen. Sie müssen mindestens eine vCPU angeben.

    2. Geben Sie für Speicher das für den Container verfügbare Speicherlimit ein. Wenn Ihr Container versucht, die hier angegebene Speichermenge zu überschreiten, wird der Container gestoppt. Dieser Parameter ordnet zu Memory im Bereich Erstellen eines Containers der Docker Remote API und der Option --memory für die docker run zu. Sie müssen mindestens 4 MB Arbeitsspeicher für einen Auftrag festlegen.

      Anmerkung

      Um Ihre Ressourcenauslastung zu maximieren, priorisieren Sie den Arbeitsspeicher für Jobs eines bestimmten Instanztyps. Weitere Informationen finden Sie unter DatenverarbeitungsressourceSpeicherverwaltung.

    3. Wählen Sie unter Anzahl der GPUs die Anzahl der GPUs für die Reservierung für den Container aus.

    4. (Optional) 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.

    5. (Optional) Wählen Sie für Secrets die Option Geheimnis hinzufügen aus, um Geheimnisse als Name-Wert-Paare hinzuzufügen. Diese Geheimnisse werden im Container enthüllt. Weitere Informationen finden Sie unter SecretOptions inAufgabendefinitionsparameter.

  18. Wählen Sie Nächste Seite.

  19. Gehen Sie im Abschnitt Linux-Konfiguration wie folgt vor:

    1. Für Benutzer geben Sie den Benutzernamen zur Verwendung innerhalb des Containers ein. Dieser Parameter ordnet zu User im Bereich Erstellen eines Containers der Docker Remote API und der Option --user für die docker run zu.

    2. (Optional) Um dem Jobcontainer erhöhte Berechtigungen auf der Host-Instance zu gewähren (ähnlich wie beimroot Benutzer), ziehen Sie den Regler Privileged nach rechts. Dieser Parameter ordnet zu Privileged im Bereich Erstellen eines Containers der Docker Remote API und der Option --privileged für die docker run zu.

    3. (Optional) Aktivieren Sie Enable init process, um eineninit Prozess innerhalb des Containers auszuführen. Dieser Prozess leitet Signalen weiter und erntet Prozesse.

  20. (Optional) Im Abschnitt Dateisystemkonfiguration:

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

    2. Geben Sie unter Shared Memory-Größe die Größe (in MiB) des/dev/shm -Volumes ein.

    3. Geben Sie unter Max. Auslagerungsgröße die Gesamtmenge des Auslagerungsspeichers (in MiB) ein, die der Container verwenden kann.

    4. 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 das Swapping aktiviert ist, wird standardmäßig 60 verwendet. Weitere Informationen finden Sie unter Swappiness inAufgabendefinitionsparameter.

    5. (Optional).

    6. (Optional) Wählen Sie für Tmpfs Add tmpfs aus, um einentmpfs Mount hinzuzufügen.

    7. (Optional) Wählen Sie unter 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.

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

      3. 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.

    8. (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 auch die Option EFS aktivieren.

    9. (Optional) Wählen Sie für Mount-Points die Option Mount-Points hinzufügen aus, um Mount-Points für Datenvolumina hinzuzufügen. Sie müssen das Quellvolume und den Containerpfad angeben. Diese Mount-Points werdenDocker daemon an die On-A-Container-Instance übergeben. Sie können sich auch dafür entscheiden, den Band nur lesbar zu machen.

    10. (Optional) Wählen Sie für die Ulimit-Konfiguration die Option Ulimit hinzufügen, um einenulimits Wert für den Container hinzuzufügen. Geben Sie die Werte „Name“, „Weicher Grenzwert“ und „Harter Grenzwert“ ein, und wählen Sie dann „Ulimit hinzufügen“.

  21. (Optional) Gehen Sie im Abschnitt Logging-Konfiguration wie folgt vor:

    1. Wählen Sie unter Protokolltreiber den zu verwendenden Protokolltreiber aus. Weitere Informationen zu den verfügbaren Protokolltreibern finden Sie unter LogDriver inAufgabendefinitionsparameter.

      Anmerkung

      Standardmäßig wird derawslogs Protokolltreiber verwendet.

    2. 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 aus.

    3. Wählen Sie für Secrets die Option Secret hinzufügen aus. Geben Sie ein Name-Wert-Paar ein und wählen Sie dann Geheimnis hinzufügen, um ein Geheimnis hinzuzufügen.

      Tipp

      Weitere Informationen finden Sie unter SecretOptions inAufgabendefinitionsparameter.

  22. Wählen Sie Nächste Seite.

  23. Sehen Sie sich die Konfigurationsschritte an, um die Jobdefinition zu überprüfen. Wenn Sie Änderungen vornehmen müssen, wählen Sie Edit (Bearbeiten). Wenn Sie fertig sind.