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 Jobdefinition mit einem Knoten auf Amazon-Ressourcen EC2
Gehen Sie wie folgt vor, um eine Einzelknoten-Auftragsdefinition auf Amazon Elastic Compute Cloud (Amazon EC2) -Ressourcen zu erstellen.
So erstellen Sie eine neue Jobdefinition auf EC2 Amazon-Ressourcen:
-
Öffnen Sie die AWS Batch Konsole unter https://console.aws.amazon.com/batch/
. -
Wählen Sie in der Navigationsleiste die aus, die Sie verwenden AWS-Region möchten.
-
Wählen Sie im linken Navigationsbereich Jobdefinitionen aus.
-
Wählen Sie Erstellen aus.
-
Wählen Sie als Orchestrierungstyp Amazon Elastic Compute Cloud (Amazon EC2).
-
Deaktivieren Sie für die EC2 Plattformkonfiguration die Option Parallelverarbeitung mit mehreren Knoten aktivieren.
-
Geben Sie unter Name einen eindeutigen Namen für Ihre Jobdefinition ein. Der Name kann bis zu 128 Zeichen lang sein. Er kann Groß- und Kleinbuchstaben, Zahlen, Bindestriche (-) und Unterstriche (_) enthalten.
-
(Optional) Geben Sie für das Ausführungstimeout den Timeout-Wert (in Sekunden) ein. Das Ausführungs-Timeout ist die Zeitspanne, bis ein unvollendeter Job beendet wird. Wenn ein Versuch die Timeoutdauer überschreitet, wird der Versuch gestoppt und erhält einen Status.
FAILED
Weitere Informationen finden Sie unter Timeouts bei der Job. Der Mindestwert beträgt 60 Sekunden. -
(Optional) Aktivieren Sie die Zeitplanungspriorität. Geben Sie einen Wert für die Planungspriorität zwischen 0 und 100 ein. Höhere Werte erhalten eine höhere Priorität.
-
(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. -
(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 Jobs.
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.
-
-
(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.
-
(Optional) Aktivieren Sie die Option Tags weitergeben, um Tags aus dem Auftrag und der Auftragsdefinition an die Amazon ECS-Aufgabe weiterzugeben.
-
Wählen Sie „Nächste Seite“.
-
Gehen Sie im Abschnitt Container-Konfiguration wie folgt vor:
-
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
angeben. Der Name kann bis zu 225 Zeichen lang sein. Er kann Groß- und Kleinbuchstaben, Zahlen, Bindestriche (-), Unterstriche (_), Doppelpunkte (:), Schrägstriche (/) und Zahlenzeichen (#) enthalten. Dieser Parameter wirdrepository-url
/image
:tag
Image
zugeordnet im Abschnitt Create a container(Erstellen eines Containers) im Docker-Remote-API und dem IMAGE
-Parameter von docker run. Anmerkung
Die Docker-Image-Architektur muss der Prozessorarchitektur der Compute-Ressourcen entsprechen, für die sie geplant sind. So können beispielsweise ARM-basierte Docker-Images nur auf ARM-basierten Compute-Ressourcen ausgeführt werden.
-
Bilder in öffentlichen Amazon ECR-Repositorys verwenden die vollständigen
registry/repository[:tag]
oder dieregistry/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 (z. B.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
odermongo
). -
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
).
-
-
Geben Sie für Command die Befehle als entsprechende JSON-Array-Zeichenfolge in das Feld ein.
Dieser Parameter ist
Cmd
im Abschnitt Erstellen eines Containersder Docker Remote-API und dem Parameter COMMAND
von docker runzugeordnet. Weitere Informationen zu dem Docker CMD
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.
-
(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 Aufgaben. Weitere Informationen finden Sie unter IAM-Rollen für die Ausführung von Amazon ECS-Aufgaben im Amazon Elastic Container Service Developer Guide.
-
Wählen Sie für die Konfiguration der Job Role eine IAM-Rolle aus, die über Berechtigungen für die AWS 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 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 im Amazon Elastic Container Service Developer Guide.
-
-
Wählen Sie unter Parameter die Option Parameter hinzufügen, um Platzhalter für die Parametersetzung als Schlüssel - und optionale Wertepaare hinzuzufügen.
-
Gehen Sie im Abschnitt Umgebungskonfiguration wie folgt vor:
-
Geben Sie für v CPUs die Zahl von v einCPUs , die für den Container reserviert werden sollen. Dieser Parameter ordnet zu
CpuShares
im Bereich Erstellen eines Containersder Docker Remote API und der Option --cpu-shares
für die docker runzu. Jede vCPU entspricht 1.024 CPU-Anteilen. Sie müssen mindestens eine vCPU angeben. -
Geben Sie unter Speicher das Speicherlimit ein, das für den Container verfügbar ist. Wenn Ihr Container versucht, die hier angegebene Speichermenge zu überschreiten, wird der Container gestoppt. Dieser Parameter ordnet zu
Memory
im Bereich Erstellen eines Containersder Docker Remote API und der Option --memory
für die docker runzu. Sie müssen mindestens 4 MB Arbeitsspeicher für einen Auftrag festlegen. Anmerkung
Um Ihre Ressourcennutzung zu maximieren, priorisieren Sie den Arbeitsspeicher für Jobs eines bestimmten Instance-Typs. Weitere Informationen finden Sie unter Speicherverwaltung für Rechenressourcen.
-
Wählen Sie unter Anzahl von die Anzahl der aus GPUs, die für den Container reserviert werden GPUs soll.
-
(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.
-
(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.
-
-
Wählen Sie Nächste Seite.
-
Gehen Sie im Abschnitt Linux-Konfiguration wie folgt vor:
-
Für Benutzer geben Sie den Benutzernamen zur Verwendung innerhalb des Containers ein. Dieser Parameter ordnet zu
User
im Bereich Erstellen eines Containersder Docker Remote API und der Option --user
für die docker runzu. -
(Optional) Um dem Job-Container erweiterte Berechtigungen für die Host-Instance zu gewähren (ähnlich wie dem
root
Benutzer), ziehen Sie den Schieberegler Privileged nach rechts. Dieser Parameter ordnet zuPrivileged
im Bereich Erstellen eines Containersder Docker Remote API und der Option --privileged
für die docker runzu. -
(Optional) Aktivieren Sie die Option „Init-Prozess aktivieren“, um einen
init
Prozess innerhalb des Containers auszuführen. Dieser Prozess leitet Signale weiter und verarbeitet Prozesse.
-
-
(Optional) Gehen Sie im Abschnitt zur Dateisystemkonfiguration wie folgt vor:
-
Aktivieren Sie die Option Schreibgeschütztes Dateisystem aktivieren, um den Schreibzugriff auf das Volume zu unterbinden.
-
Geben Sie für Größe des gemeinsamen Speichers die Größe (in MiB) des
/dev/shm
Volumes ein. -
Geben Sie für Max. Swap-Größe die Gesamtmenge an Swap-Speicher (in MiB) ein, die der Container verwenden kann.
-
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
-
(Optional) Erweitern Sie Zusätzliche Konfiguration.
-
(Optional) Wählen Sie für Tmpfs Add tmpfs aus, um einen Mount hinzuzufügen.
tmpfs
-
(Optional) Wählen Sie für Geräte die Option Gerät hinzufügen aus, um ein Gerät hinzuzufügen:
-
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.
-
Geben Sie für Host path (Host-Pfad) den Pfad eines Geräts in der Host-Instance an.
-
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.
-
-
(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.
-
(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 die Instance Docker daemon auf einer Container-Instanz übergeben. Sie können sich auch dafür entscheiden, das Volume schreibgeschützt zu machen.
-
(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.
-
-
Gehen Sie im Abschnitt Task-Eigenschaften wie folgt vor:
-
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 unterTutorial: Erstellen Sie die IAM-Ausführungsrolle.
-
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.
-
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 im Amazon Elastic Container Service Developer Guide.
-
-
(Optional) Gehen Sie im Abschnitt zur Konfiguration der Protokollierung wie folgt vor:
-
Wählen Sie unter Protokolltreiber den Protokolltreiber aus, den Sie verwenden möchten. Weitere Informationen zu den verfügbaren Protokolltreibern finden Sie unter:LogDriverLogConfiguration.
Anmerkung
Standardmäßig wird der
awslogs
Protokolltreiber verwendet. -
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.
-
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.
-
-
Wählen Sie Nächste Seite.
-
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.