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.
Automatische Skalierung der Serverkapazität
Die Serving-Kapazität wird auf zwei Ebenen skaliert. HyperPod Ray Serve skaliert die Replikate innerhalb des Clusters entsprechend der Anforderungslast, und Managed Karpenter skaliert die Clusterknoten, um diese Replikate aufzunehmen. Die beiden funktionieren zusammen: Die automatische Replikatskalierung reagiert zuerst, und die automatische Knotenskalierung erhöht die Kapazität, wenn die vorhandenen Knoten leer sind.
Automatische Skalierung von Ray Serve-Replikaten
Ray Serve passt die Anzahl der Replikate für eine Bereitstellung auf der Grundlage der Anforderungslast an. Stellen Sie für die Bereitstellung eine Autoscaling-Konfiguration anstelle einer festen Replikatanzahl ein:
deployments: - name: Model autoscaling_config: min_replicas: 1 max_replicas: 8 target_ongoing_requests: 5
Damit die automatische Replikatskalierung Worker-Pods hinzufügen und entfernen kann, muss der Ray-Autoscaler für den Cluster aktiviert sein. enableInTreeAutoscaling: trueIn der RayCluster Spezifikation oder in einem der folgenden Werte festgelegt: rayClusterConfig RayService
spec: enableInTreeAutoscaling: true
Ohne sie autoscaling_config ändert die Bereitstellung zwar die Anzahl der Zielreplikate, erstellt aber KubeRay nicht die Worker-Pods, die diese Anforderungen erfüllen.
Die automatische Replikatskalierung bleibt innerhalb der aktuellen Knotenkapazität des Clusters. Wenn Ray Serve mehr Replikate benötigt, als die Knoten aufnehmen können, stehen die Pods so lange aus, bis ein Knoten verfügbar ist.
Automatische Skalierung von Knoten mit verwaltetem Karpenter
Managed Karpenter on HyperPod fügt Knoten hinzu, wenn Ray-Pods ausstehen, und entfernt sie, wenn sie inaktiv sind, sodass die Bereitstellungskapazität ohne festen Knotenpool dem Bedarf entspricht. Spot-Instances werden in Bezug auf die Knotenkapazität unterstützt, was die Kosten für unterbrechungsfreien Betrieb senkt. Informationen zur Einrichtung und Konfiguration finden Sie unter. Autoscaling auf EKS SageMaker HyperPod
Verwendung von beidem zusammen
Stellen Sie die automatische Replikatskalierung für die Bereitstellung und die automatische Knotenskalierung für den Cluster ein. Die beiden Ebenen bilden zusammen eine Kette, die auf die zunehmende Anforderungslast reagiert:
-
Ray Serve erkennt einen Anstieg der Last. Der Autoscaler stellt fest, dass die Anzahl laufender Anfragen überschritten wird,
target_ongoing_requestsund beschließt, ein weiteres Replikat hinzuzufügen. -
KubeRay erstellt einen neuen Worker-Pod. Ray Serve signalisiert KubeRay , die Worker-Gruppe zu skalieren, und KubeRay erstellt einen Pod für das neue Replikat.
-
Der Pod bleibt ausstehend, wenn keine Kapazität vorhanden ist. Wenn die vorhandenen Knoten nicht in den neuen Pod passen (unzureichende GPU oder Arbeitsspeicher), wechselt der Pod in den
PendingStatus. -
Managed Karpenter stellt einen Knoten bereit. HyperPod managed Karpenter erkennt den ausstehenden Pod, wählt einen geeigneten Instanztyp aus und startet einen neuen Knoten.
-
Der Knoten wird aktiviert und der Pod beginnt zu laufen. Sobald der Knoten bereit ist und dem Cluster beitritt, plant Kubernetes den ausstehenden Pod darauf ein. Das neue Replikat lädt das Modell und beginnt mit der Bearbeitung von Anfragen.
Beim Herunterskalieren kehrt sich der Prozess um: Ray Serve entfernt inaktive Replikate, KubeRay löscht die Worker-Pods, und Managed Karpenter beendet Knoten, die keine laufenden Pods haben, nach dem Konsolidierungsfenster.