Abonnieren

UiPath AI Center™

UiPath AI Center™

Knotenplanung verwalten

Überblick


📘

Hinweis:

Die Knotenplanung gilt nur fĂźr Agentknoten und sollte nicht auf Serverknoten angewendet werden.

Die Knotenplanung ist besonders hilfreich, um die Hardware besser zu handhaben und sicherzustellen, dass ML-Replikate (Pods), Fähigkeiten oder Pipelines. Sie sollten sie hauptsächlich in zwei Situationen verwenden:

  • Wenn Sie einen GPU-Knoten haben, um sicherzustellen, dass nur Workloads, die GPU erfordern, auf diesem Knoten geplant werden
  • Um Ihre ML-Workloads besser zu isolieren, damit sie andere Anwendungen nicht stĂśren.
    Standardmäßig werden alle Knoten mit den erforderlichen Ressourcen vom Kubernetes-Scheduler als gleich betrachtet.

Es gibt zwei Methoden, mit denen Sie die Planung von ML-Replikaten (Pods), Skills oder Pipelines auf bestimmte Knoten leiten kĂśnnen, und beide werden in UiPath AI Center TM unterstĂźtzt:

  • Assign Pods to Nodes using Node Affinity: this is useful when collocating ML pods with other pods on a node. Multiple labels can be applied to a node.
  • Taints and Tolerations: intended for a dedicated node, either repelling all pods (NoSchedule), or imposing a low scheduling preference (PreferNoSchedule) for pods that don't match the scheduling criteria. Although multiple taints can be applied to a node(s), node taints only support the “AND” Boolean logic.

Die Knotenaffinität ist eine Eigenschaft von Pods, die sie entweder als Präferenz oder als Anforderung zu einer Reihe von Knoten anzieht. Taints hingegen ermöglichen es einem Knoten, eine Reihe von Pods abzustoßen.
Die erste Methode erstellt eine Affinität zwischen Replikaten und Knoten unter Verwendung von Knotenbezeichnungen, während die zweite Methode Anti-Affinität anwendet, indem sie die Knoten tangiert.
Die PodSpec -Vorlagen der ML-Replikate unterstĂźtzen beide Methoden und werden basierend auf der GPU- oder Nicht-GPU-Auswahl bei der Bereitstellung angepasst.

Knotenaffinität


Wenn ein Agent-Knoten hinzugefßgt wurde, um den Ressourcenpool zu erweitern, und Sie die Planung von ML-Pods darauf beeinflussen mÜchten, kÜnnen Sie die Knotenaffinität anwenden. Dazu fßgen Sie dem Knoten mit dem folgenden Befehl eine Bezeichnung hinzu:

  • FĂźr CPU: kubectl label node <node_name> node.type=aic.ml.cpu
  • FĂźr GPU: kubectl label node <node_name> node.type=aic.ml.gpu

Die Knotenaffinität stellt nicht sicher, dass der Knoten fßr die Bereitstellung von ML-Workloads bestimmt ist, und verhindert nicht, dass andere Workload-Pods auf demselben Knoten geplant werden, auf den die Bezeichnungen angewendet werden.

Flecken


Um einen Knoten zu dedizieren, mßssen Sie Taints oder eine Kombination aus Knotenaffinität und Taints verwenden. Um einen Agent-Knoten fßr die Bereitstellung von ML-GPU- oder CPU-Pods zuzuweisen, kÜnnen Sie die folgenden Markierungen auf die Knoten anwenden:

  • FĂźr CPU: kubectl taint node <node_name> aic.ml/cpu=present:NoSchedule
  • FĂźr GPU: kubectl taint node <node_name> nvidia.com/gpu=present:NoSchedule

Kombinieren von Knotenaffinität und Taints


Um einen Agent-Knoten fßr die Bereitstellung von ML-GPU-Pods zuzuweisen und die Planung fßr ML-CPU-Pods fßr dieselben Knoten zu beeinflussen, kÜnnen Sie eine Kombination aus Knotenaffinität und Taints verwenden:

kubectl taint node <node_name> nvidia.com/gpu=present:PreferNoSchedule
kubectl label node <node_name> node.type=aic.ml.cpu

Aktualisiert vor 4 Monaten

Knotenplanung verwalten


Auf API-Referenzseiten sind Änderungsvorschläge beschränkt

Sie können nur Änderungen an dem Textkörperinhalt von Markdown, aber nicht an der API-Spezifikation vorschlagen.