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 Auftragsdefinition mit einem Knoten auf Amazon EKS-Ressourcen
Gehen Sie wie folgt vor, um eine Auftragsdefinition für einen einzelnen Knoten auf Amazon Elastic Kubernetes Service (Amazon EKS) zu erstellen.
So erstellen Sie eine neue Jobdefinition auf Amazon EKS-Ressourcen:
-
Öffnen Sie die AWS Batch Konsole unter https://console.aws.amazon.com/batch/
. -
Wählen Sie in der oberen Navigationsleiste die aus, die Sie verwenden AWS-Region möchten.
-
Wählen Sie im linken Navigationsbereich Jobdefinitionen aus.
-
Wählen Sie Create (Erstellen) aus.
-
Wählen Sie als Orchestrierungstyp Elastic Kubernetes Service (EKS) aus.
-
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ü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 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öheren Werten wird eine höhere Priorität gegenüber niedrigeren Werten eingeräumt.
-
(Optional) Erweitern Sie Tags und wählen Sie dann Tag hinzufügen aus, um der Ressource Tags hinzuzufügen.
-
Wählen Sie „Nächste Seite“.
-
Im EKS pod Abschnitt „Eigenschaften“:
-
Geben Sie als Dienstkontoname ein Konto ein, das eine Identität für Prozesse bereitstellt, die in einem pod.
-
Schalten Sie das Host-Netzwerk ein, um das zu verwenden Kubernetes pod Netzwerkmodell und öffnen Sie einen Listening-Port für eingehende Verbindungen. Schalten Sie diese Einstellung nur für ausgehende Kommunikation aus.
-
Wählen Sie für die DNS-Richtlinie eine der folgenden Optionen aus:
-
Kein Wert (Null) — Der pod ignoriert die DNS-Einstellungen aus dem Kubernetes Umgebung.
-
Standard — Die pod erbt die Konfiguration für die Namensauflösung von dem Knoten, auf dem sie ausgeführt wird.
Anmerkung
Wenn keine DNS-Richtlinie angegeben ist, ist Standard nicht die Standard-DNS-Richtlinie. Stattdessen ClusterFirstwird verwendet.
-
ClusterFirst— Jede DNS-Abfrage, die nicht mit dem konfigurierten Cluster-Domänensuffix übereinstimmt, wird an den Upstream-Nameserver weitergeleitet, der vom Knoten geerbt wurde.
-
ClusterFirstWithHostNet— Wird verwendet, wenn das Host-Netzwerk aktiviert ist.
-
-
(Optional) Wählen Sie für Pod-Labels die Option Pod-Labels hinzufügen aus und geben Sie dann ein Name-Wert-Paar ein.
Wichtig
Das Präfix für ein Pod-Label darf nicht
kubernetes.io/
k8s.io/
, oder enthalten.batch.amazonaws.com/
-
(Optional) Wählen Sie für Pod-Anmerkungen die Option Anmerkungen hinzufügen aus und geben Sie dann ein Name-Wert-Paar ein.
Wichtig
Das Präfix für eine Pod-Anmerkung darf nicht, oder enthalten
kubernetes.io/
.k8s.io/
batch.amazonaws.com/
-
Wählen Sie „Nächste Seite“.
-
Gehen Sie im Abschnitt Container-Konfiguration wie folgt vor:
-
Geben Sie unter Name einen eindeutigen Namen für den Container ein. Der Name muss mit einem Buchstaben oder einer Zahl beginnen und kann bis zu 63 Zeichen lang sein. Er kann Groß- und Kleinbuchstaben, Zahlen und Bindestriche (-) enthalten.
-
Wählen Sie für Bild Docker Bild, das Sie für Ihre Arbeit verwenden möchten. Images in der Docker-Hub-Registry sind standardmäßig verfügbar. Sie können auch andere Repositorys mit
angeben. Er kann bis zu 255 Zeichen lang sein. Sie kann Groß- und Kleinbuchstaben, Zahlen, Bindestriche (-), Unterstriche (_), Doppelstriche (:), Punkte (.), Schrägstriche (/) und Zahlenzeichen (#) enthalten. Dieser Parameter entsprichtrepository-url
/image
:tag
Image
dem Abschnitt Create a containerder Docker Remote API und dem IMAGE
Parameter von docker runAnmerkung
Docker Die Image-Architektur muss mit der Prozessorarchitektur der Rechenressourcen übereinstimmen, für die sie geplant sind. Zum Beispiel Arm basiert Docker Bilder können nur ausgeführt werden auf Arm basierte Rechenressourcen.
-
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
-
Bilder in offiziellen Repositorien auf Docker Hub verwenden Sie einen einzigen Namen (z. B.
ubuntu
odermongo
). -
Bilder in anderen Repositorien auf 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
).
-
-
(Optional) Wählen Sie für die Richtlinie zum Abrufen von Bildern aus, wann Bilder abgerufen werden sollen.
-
(Optional) Geben Sie als Befehl einen Bash or JSON Befehl, der an den Container übergeben werden soll.
-
(Optional) Geben Sie unter Argumente Argumente ein, die an den Container übergeben werden sollen. Wenn kein Argument angegeben wird, wird der Befehl container image verwendet.
-
-
(Optional) Sie können der Auftragsdefinition Parameter als Name-Wert-Zuordnungen hinzufügen, um die Standardeinstellungen der Auftragsdefinition zu überschreiben. So fügen Sie einen Parameter hinzu:
-
Geben Sie für Parameter ein Name-Wert-Paar ein und wählen Sie dann Parameter hinzufügen aus.
Wichtig
Wenn Sie Parameter hinzufügen wählen, müssen Sie mindestens einen Parameter konfigurieren oder Parameter entfernen wählen
-
-
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, den hier angegebenen Speicher 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.
-
-
(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) Für die Volume-Bereitstellung:
-
Wählen Sie „Volume-Mount hinzufügen“.
-
Geben Sie einen Namen und anschließend einen Bereitstellungspfad in dem Container ein, in dem das Volume bereitgestellt ist. Geben Sie a ein SubPath, um anstelle des Stammverzeichnisses einen Unterpfad innerhalb des referenzierten Volumes anzugeben.
-
Wählen Sie Schreibgeschützt, um die Schreibberechtigungen für das Volume zu entfernen.
-
Wählen Sie „Volume-Mount hinzufügen“.
-
-
(Optional) Geben Sie unter Als Benutzer ausführen eine Benutzer-ID ein, um den Container-Prozess auszuführen.
Anmerkung
Die Benutzer-ID muss im Image vorhanden sein, damit der Container ausgeführt werden kann.
-
(Optional) Geben Sie für Als Gruppe ausführen eine Gruppen-ID ein, um die Laufzeit des Container-Prozesses auszuführen.
Anmerkung
Die Gruppen-ID muss im Image vorhanden sein, damit der Container ausgeführt werden kann.
-
(Optional) Um dem Container Ihres Jobs erhöhte Berechtigungen auf der Host-Instance zu gewähren (ähnlich wie dem
root
Benutzer), ziehen Sie den Schieberegler Privilegiert 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 das schreibgeschützte Root-Dateisystem, um den Schreibzugriff auf das Root-Dateisystem zu entfernen.
-
(Optional) Aktivieren Sie „Als Nicht-Root-T ausführen“, um die Container im pod als Benutzer, der kein Root-Benutzer ist.
Anmerkung
Wenn „Als Nicht-Root-Benutzer ausführen“ aktiviert ist, kubelet validiert das Image zur Laufzeit, um sicherzustellen, dass das Image nicht mit UID 0 ausgeführt wird.
-
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.