Rezept: Verhindern, dass Pods auf bestimmten Knoten geplant werden - Amazon EKS

Hilf mit, diese Seite zu verbessern

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.

Wenn Sie zu diesem Benutzerhandbuch beitragen möchten, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.

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.

Rezept: Verhindern, dass Pods auf bestimmten Knoten geplant werden

Übersicht

Der Betrieb von Knoten mit speziellen Prozessoren kann teurer sein als der Betrieb von Knoten auf Standardcomputern. GPUs Um diese Knoten vor Workloads zu schützen, für die keine spezielle Hardware erforderlich ist, können Sie Kubernetes-Taints verwenden. Taints kennzeichnen Knoten, um Pods abzuwehren, für die es keine entsprechenden Toleranzen gibt. So wird sichergestellt, dass nur kompatible Workloads geplant werden. Weitere Informationen finden Sie unter Taints and Tolerations in der Kubernetes-Dokumentation.

Kubernetes-Knoten-Taints können mithilfe der AWS Management Console oder über die Amazon EKS-API auf neue und bestehende verwaltete Knotengruppen angewendet werden. Dieses Rezept zeigt, wie Sie mithilfe der AWS CLI Taints auf von Amazon EKS verwaltete Knotengruppen anwenden. Informationen zum Erstellen einer Knotengruppe mit einem Taint mithilfe von finden Sie unter AWS Management Console. Erstellen Sie eine verwaltete Knotengruppe für Ihren Cluster

Voraussetzungen

Schritte

Schritt 1: Erstellen Sie eine Knotengruppe mit Taints

Verwenden Sie den aws eks create-nodegroup Befehl, um eine neue verwaltete Knotengruppe mit Taints zu erstellen. In diesem Beispiel wird ein Taint mit Schlüssel dedicatedgpuGroup, Wert und Effekt angewendet. NO_SCHEDULE

aws eks create-nodegroup \ --cli-input-json ' { "clusterName": "my-cluster", "nodegroupName": "node-taints-example", "subnets": [ "subnet-1234567890abcdef0", "subnet-abcdef01234567890", "subnet-021345abcdef67890" ], "nodeRole": "arn:aws: iam::111122223333:role/AmazonEKSNodeRole", "taints": [ { "key": "dedicated", "value": "gpuGroup", "effect": "NO_SCHEDULE" } ] }'

Weitere Informationen und Beispiele finden Sie unter Taint in der Kubernetes-Referenzdokumentation.

Schritt 2: Aktualisieren Sie Taints auf einer vorhandenen Knotengruppe

Verwenden Sie den AWS eks update-nodegroup-config AWS CLI-Befehl, um Taints für verwaltete Knotengruppen hinzuzufügen, zu entfernen oder zu ersetzen.

aws eks update-nodegroup-config --cluster-name my-cluster --nodegroup-name node-taints-example --taints 'removeTaints=[{key=dedicated,value=gpuGroup,effect=NO_SCHEDULE}]'

Hinweise

  • Taints können aktualisiert werden, nachdem Sie die Knotengruppe mit dem UpdateNodegroupConfig-API erstellen.

  • Der Taint-Schlüssel muss mit einem Buchstaben oder einer Zahl beginnen. Es kann Buchstaben, Zahlen, Bindestriche (-), Punkte (.) und Unterstriche (_) enthalten. Er kann bis zu 63 Zeichen lang sein.

  • Optional kann der Taint-Schlüssel mit einem DNS-Subdomänenpräfix und einem einzelnen / beginnen. Wenn er mit einem DNS-Subdomänenpräfix beginnt, kann er 253 Zeichen lang sein.

  • Der Wert ist optional und muss mit einem Buchstaben oder einer Zahl beginnen. Es kann Buchstaben, Zahlen, Bindestriche (-), Punkte (.) und Unterstriche (_) enthalten. Er kann bis zu 63 Zeichen lang sein.

  • Wenn Sie Kubernetes direkt oder das verwenden AWS Management Console, muss der Taint-Effekt,, oder seinNoSchedule. PreferNoSchedule NoExecute Bei Verwendung der AWS CLI oder API muss der Taint-Effekt jedochNO_SCHEDULE,PREFER_NO_SCHEDULE, oder NO_EXECUTE sein.

  • Für eine Knotengruppe sind maximal 50 Taints zulässig.

  • Wenn Taints, die mithilfe einer verwalteten Knotengruppe erstellt wurden, manuell von einem Knoten entfernt werden, fügt Amazon EKS die Taints dem Knoten nicht wieder hinzu. Dies gilt auch dann, wenn die Taints in der Konfiguration der verwalteten Knotengruppe angegeben sind.