Load-Balancing-Strategie für die KI-/ML-Modellinferenz in GKE auswählen


Auf dieser Seite erfahren Sie, wie Sie die richtige Load-Balancing-Strategie für KI‑/ML-Modellinferenz-Arbeitslasten in Google Kubernetes Engine (GKE) auswählen.

Diese Seite richtet sich an folgende Nutzer:

  • Entwickler für maschinelles Lernen (ML), Plattformadministratoren und ‑operatoren sowie Daten- und KI-Spezialisten, die daran interessiert sind, Kubernetes-Container-Orchestrierungsfunktionen für die Bereitstellung von KI‑/ML-Arbeitslasten zu nutzen.
  • Cloud-Architekten und Netzwerkspezialisten, die mit Kubernetes-Netzwerken interagieren.

Weitere Informationen zu gängigen Rollen und Beispielaufgaben, auf die wir in Google Cloud Inhalten verweisen, finden Sie unter Häufig verwendete GKE-Nutzerrollen und ‑Aufgaben.

Bevor Sie diese Seite lesen, sollten Sie mit Folgendem vertraut sein:

Wenn Sie KI‑/ML-Modellinferenz-Arbeitslasten in Google Kubernetes Engine (GKE) bereitstellen, sollten Sie die richtige Load-Balancing-Strategie auswählen, um Leistung, Skalierbarkeit und Kosteneffizienz zu optimieren. Google Cloud bietet die folgenden unterschiedlichen Lösungen:

  • GKE Inference Gateway: Eine Lösung für fortschrittliches KI-/ML-Routing. Weitere Informationen finden Sie in der Dokumentation zum GKE Inference Gateway.
  • GKE Gateway mit benutzerdefinierten Messwerten: Eine Lösung, die Application Load Balancer verwendet und eine universelle Steuerung bietet, die mit einem Application Load Balancer kombiniert werden kann.

Load-Balancing-Lösungen kombinieren

Sie können sowohl GKE Inference Gateway als auch GKE Gateway mit benutzerdefinierten Messwerten in einigen Architekturen zusammen verwenden. In diesen Architekturen wird der Application Load Balancer mit dem GKE Gateway mit benutzerdefinierten Messwerten verwendet. Ein globaler externer Application Load Balancer leitet den Traffic beispielsweise basierend auf Faktoren wie geografischer Lage und Systemdiagnosen an die entsprechende Region weiter. Weitere Informationen finden Sie unter Application Load Balancer. Sobald der Traffic eine bestimmte Region erreicht, führt das GKE Inference Gateway ein detailliertes, KI-bezogenes Load Balancing durch, um Anfragen an den optimalen Modellserver weiterzuleiten. Weitere Informationen finden Sie in der Dokumentation zum GKE Inference Gateway.

Berücksichtigen Sie bei der Auswahl der Google Cloud Load-Balancing-Lösung, die für Ihre Inferenzanwendungen in GKE am besten geeignet ist, die Merkmale Ihrer Arbeitslast, die Leistungsanforderungen und das Betriebsmodell.

Um Traffic an das am besten geeignete und am wenigsten ausgelastete Modellserver-Replikat weiterzuleiten, überwacht die Endpoint Picker-Erweiterung des GKE Inference Gateway wichtige KI-spezifische Messwerte. Zu diesen Messwerten gehören die KV-Cache-Auslastung des Modellservers, die Länge der Warteschlange für ausstehende Anfragen, die allgemeine GPU- oder TPU-Auslastung, die Verfügbarkeit von LoRA-Adaptern und die Rechenkosten einzelner Anfragen. Neben ausgefeiltem Routing bietet das GKE Inference Gateway auch die Priorisierung von Anfragen und optimiertes Autoscaling für Modellserver.

Übersicht über GKE Gateway mit benutzerdefinierten Messwerten

Application Load Balancer wie der globale externe Application Load Balancer und der regionale externe Application Load Balancer sind universelle Load Balancer, die Traffic basierend auf benutzerdefinierten Messwerten verteilen, die von Ihren Backend-Diensten gemeldet werden. Diese Funktion ermöglicht eine präzise Steuerung der Lastverteilung auf Grundlage anwendungsspezifischer Leistungsindikatoren.

Das GKE Gateway fungiert als Kubernetes-native Schnittstelle zum Bereitstellen und Verwalten von Application Load Balancern. Wenn Sie eine Gateway-Ressource in Ihrem GKE-Cluster definieren, konfiguriert der GKE-Gateway-Controller automatisch den zugrunde liegenden Application Load Balancer. So können Sie externen HTTP/HTTPS-Traffic zu Ihren GKE-Diensten direkt über Kubernetes verwalten und gleichzeitig die Load-Balancing-Infrastruktur von Google Cloudnutzen.

Load-Balancing-Lösungen vergleichen

In der folgenden Tabelle werden die Funktionen von GKE Inference Gateway und GKE Gateway mit benutzerdefinierten Messwerten verglichen.

Funktion Inference Gateway GKE Gateway mit benutzerdefinierten Messwerten (mit Application Load Balancern)
Primärer Anwendungsfall Optimiert Arbeitslasten für die Inferenz von generativer KI/ML in Kubernetes, z. B. die Bereitstellung von Large Language Models (LLMs). Das Verfahren eignet sich gut für die Bereitstellung mehrerer Anwendungsfälle mit einem einzigen Modell, für einen fairen Zugriff auf Modellressourcen und für die Optimierung latenzsensitiver, GPU-/TPU-basierter LLM-Arbeitslasten. Bietet universelles HTTP(S)-Load-Balancing für Arbeitslasten, bei denen eine genaue Traffic-Verteilung basierend auf benutzerdefinierten, von der Anwendung gemeldeten Messwerten (Lastsignalen) erforderlich ist. Eignet sich gut für latenzempfindliche Dienste wie Echtzeit-Gaming-Server oder Hochfrequenzhandelsplattformen, die benutzerdefinierte Nutzungsdaten melden.
Basis-Routing Unterstützt das standardmäßige HTTP(S)-Routing nach Host und Pfad und erweitert die GKE Gateway API. Unterstützt das standardmäßige HTTP(S)-Routing nach Host und Pfad, das mit den Standardressourcen der GKE Gateway API konfiguriert wird.
Erweiterte Routing-Logik Führt modellbezogenes Routing (z. B. modellbezogener Name auf Grundlage des Textkörpers), Trafficaufteilung und Spiegelung durch und wendet Prioritäts- und Kritikalitätsstufen an. Gleicht den Traffic anhand von anwendungsbezogenen benutzerdefinierten Messwerten mit dem ORCA-Standard (Open Request Cost Aggregation) aus. Dadurch werden Richtlinien wie WEIGHTED_ROUND_ROBIN für die Gewichtung von Endpunkten innerhalb eines Standorts aktiviert.
Unterstützte Messwerte Es werden eine Reihe von integrierten, KI-spezifischen Signalen verwendet, die sofort einsatzbereit sind, z. B. GPU-/TPU-Auslastung, „KV-Cache-Treffer“ und „Länge der Anfragewarteschlange“. Sie können auch anwendungsbezogene Messwerte konfigurieren, die über einen standardisierten HTTP-Header-Mechanismus gesendet werden. Basiert auf von der Anwendung gemeldeten Messwerten, indem ein standardisierter HTTP-Header-Mechanismus verwendet wird (dieser Mechanismus wird als „ORCA-Lastberichterstellung“ bezeichnet). Dieses Format ermöglicht die Meldung von Standardmesswerten wie CPU und Arbeitsspeicher oder von benutzerdefinierten Messwerten für anwendungsspezifische eingeschränkte Ressourcen.
Anfragen verarbeiten Reduziert die Kosten für nicht einheitliche Anfragen, die bei LLMs häufig anfallen. Unterstützt Anfragen mit [kritischen Stufen](/kubernetes-engine/docs/concepts/about-gke-inference-gateway#traffic-distribution). Optimiert für relativ einheitliche Anfragekosten. Enthält keine integrierte Priorisierung von Anfragen.
Unterstützung von LoRa-Adaptern Bietet natives, affinitätsbasiertes Routing zu geeigneten LoRa-Back-Ends. Bietet keine native Unterstützung.
Autoscaling-Integration Optimiert die Skalierung für Modellserver basierend auf KI-spezifischen Messwerten wie „KV-Cache-Treffer“. Das horizontale Pod-Autoscaling (HPA) kann benutzerdefinierte Messwerte verwenden, die Einrichtung ist jedoch allgemein und basiert auf Messwerten, die für Application Load Balancer gemeldet werden.
Einrichtung und Konfiguration Konfigurieren Sie sie mit der GKE Gateway API. Erweitert die Standard-API mit speziellen benutzerdefinierten Ressourcendefinitionen (Custom Resource Definitions, CRDs) für InferencePool und InferenceModel, um die KI-basierten Funktionen zu aktivieren. Konfigurieren Sie sie mit den Standardressourcen der GKE Gateway API. Die Anwendung muss den HTTP-Header-basierten Mechanismus zum Melden benutzerdefinierter Messwerte implementieren.
Sicherheit Bietet KI-Inhaltsfilterung mit Model Armor am Gateway. Es werden grundlegende GKE-Sicherheitsfunktionen wie TLS, IAM, rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) und Namespaces genutzt. Verwendet den standardmäßigen Sicherheitsstack für Application Load Balancer, einschließlich Model Armor, TLS-Beendigung und IAM. Model Armor wird auch durch die Integration als Dienst-Erweiterung unterstützt.
Beobachtbarkeit Bietet integrierte Observability für KI-spezifische Messwerte, einschließlich GPU- oder TPU-Auslastung, „KV-Cache-Treffer“, „Länge der Anfragewarteschlange“ und Modelllatenz. Die Observability hängt von allen benutzerdefinierten Messwerten ab, für die die Anwendung konfiguriert ist. Sie können diese in Cloud Monitoring aufrufen. Dazu können Standardmesswerte oder benutzerdefinierte Messwerte gehören.
Erweiterbarkeit Basiert auf einer erweiterbaren Open-Source-Grundlage, die einen nutzerverwalteten Algorithmus für die Endpunktauswahl unterstützt. Erweitert die GKE Gateway API mit spezialisierten benutzerdefinierten Ressourcendefinitionen (InferencePool, InferenceModel), um gängige KI-/ML-Anwendungsfälle zu vereinfachen. ORCA ist flexibel konzipiert und ermöglicht die Erweiterung des Load-Balancings mit beliebigen benutzerdefinierten Messwerten (Lastsignal), die von der Anwendung gemeldet werden können.
Startphase Vorschau GA

Wann sollte GKE Inference Gateway verwendet werden?

Mit dem GKE Inference Gateway können Sie anspruchsvolle KI-/ML-Inferenzarbeitslasten in GKE optimieren, insbesondere für LLMs.

Wählen Sie GKE Inference Gateway aus, wenn Sie Folgendes benötigen:

  • Modellbasiertes Routing: Traffic basierend auf LLM-spezifischen Status wie KV-Cache-Treffern oder der Länge der Anfragewarteschlange oder an bestimmte LoRA-Adapter weiterleiten.
  • Kostenbewusstes Load Balancing: Inferenzanfragen mit variablen Verarbeitungskosten effizient verarbeiten und nach Kritikalitätsstufen (kritisch, Standard oder abwerfbar) priorisieren.
  • KI-spezifisches Autoscaling: Modellserver werden dynamisch auf Grundlage relevanter KI-Messwerte skaliert, um die Ressourcennutzung zu optimieren.
  • Integrierte KI-Sicherheit und ‑Beobachtbarkeit: Nutzen Sie die native Model Armor-Integration für KI-Sicherheitsprüfungen und erhalten Sie sofort einsatzbereite Informationen zur GPU-/TPU-Auslastung, zu KV-Cache-Treffern und zur Länge der Anfragewarteschlange.
  • Vereinfachte Bereitstellung von generativer KI: Profitieren Sie von einer speziell entwickelten, erweiterbaren Lösung, die gängige Bereitstellungsmuster für generative KI in GKE vereinfacht und gleichzeitig Anpassungen über die GKE Gateway API-Grundlage ermöglicht.

Wann sollte GKE Gateway mit benutzerdefinierten Messwerten verwendet werden?

Verwenden Sie GKE Gateway mit benutzerdefinierten Messwerten für flexibles, universelles Load Balancing, das sich an die individuellen Leistungsindikatoren Ihrer Anwendung anpasst, auch in einigen Inferenzszenarien.

Wählen Sie GKE Gateway mit benutzerdefinierten Messwerten aus, wenn Sie Folgendes benötigen:

  • Hohe Traffic-Volumina mit relativ einheitlichen Anfragekosten bewältigen
  • Verteilen Sie die Last anhand von anwendungsbezogenen benutzerdefinierten Messwerten mit ORCA-Lastberichten.
  • Vermeiden Sie KI-/LLM-spezifische Routing-Funktionen, die vom GKE Inference Gateway angeboten werden.
  • Achten Sie auf Konsistenz mit vorhandenen Application Load Balancer-Bereitstellungen, die den Anforderungen Ihres Inferenzdienstes entsprechen.

Nächste Schritte