À propos de GKE Inference Gateway multicluster

La passerelle d'inférence Google Kubernetes Engine (GKE) multicluster équilibre la charge de vos charges de travail d'inférence d'IA/de ML sur plusieurs clusters GKE. Il intègre les passerelles multiclusters GKE pour le routage du trafic entre clusters avec Inference Gateway pour la mise en service de modèles d'IA/de ML. Cette intégration améliore l'évolutivité et la haute disponibilité de vos déploiements. Ce document explique les concepts et les avantages de base de la passerelle.

Pour savoir comment déployer GKE Inference Gateway multicluster, consultez Configurer GKE Inference Gateway multicluster.

Pour comprendre ce document, vous devez connaître les éléments suivants :

Ce document s'adresse aux personas suivants :

  • Ingénieurs en machine learning (ML), administrateurs et opérateurs de plate-forme, et spécialistes des données et de l'IA qui souhaitent utiliser les fonctionnalités d'orchestration de conteneurs Kubernetes pour diffuser des charges de travail d'IA/ML.
  • Architectes cloud ou spécialistes de la mise en réseau qui interagissent avec la mise en réseau Kubernetes.

Pour en savoir plus sur les rôles courants et les exemples de tâches que nous citons dans le contenuCloud de Confiance by S3NS , consultez Rôles utilisateur et tâches courantes de l'utilisateur dans GKE Enterprise.

Avantages de la passerelle d'inférence multicluster GKE

GKE Inference Gateway multicluster offre plusieurs avantages pour la gestion de vos charges de travail d'inférence d'IA/ML, y compris les suivants :

  • Améliore la haute disponibilité et la tolérance aux pannes grâce à un équilibrage de charge intelligent sur plusieurs clusters GKE, même dans différentes régions géographiques. Vos charges de travail d'inférence restent disponibles, et le système redirige automatiquement les requêtes si un cluster ou une région rencontrent des problèmes, ce qui minimise les temps d'arrêt.
  • Améliore l'évolutivité et optimise l'utilisation des ressources en regroupant les ressources GPU et TPU de différents clusters pour faire face à une demande accrue. Ce regroupement permet à vos charges de travail de dépasser la capacité d'un seul cluster et d'utiliser efficacement les ressources disponibles dans votre parc.
  • Maximise les performances grâce à un routage optimisé à l'échelle mondiale. La passerelle utilise des métriques avancées, telles que l'utilisation du cache de paires clé-valeur (KV) de tous les clusters, pour prendre des décisions de routage efficaces. Cette approche permet de s'assurer que les requêtes sont envoyées au cluster le mieux équipé pour les traiter, ce qui maximise les performances globales de votre parc d'inférence d'IA/ML.

Limites

La passerelle GKE Inference multiclusters présente les limites suivantes :

  • Intégration de Model Armor : la passerelle d'inférence GKE multicluster n'est pas compatible avec l'intégration de Model Armor.

  • Limites des groupes de points de terminaison du réseau (NEG) : la limite est de 50 NEG par service de backendCloud de Confiance by S3NS . Lorsque vous utilisez un InferencePool multiport, chaque port de chaque zone crée un NEG dédié. Par exemple, un InferencePool avec huit ports dans un cluster régional typique (trois zones) génère 24 NEG. Par conséquent, une passerelle multicluster ne peut agréger un tel InferencePool que depuis deux clusters maximum (deux clusters × 24 NEG = 48 NEG) avant d'atteindre la limite de 50 NEG.

Composants clés

La passerelle d'inférence GKE multicluster utilise plusieurs ressources personnalisées Kubernetes pour gérer les charges de travail d'inférence et le routage du trafic :

  • InferencePool : regroupe les backends de serveur de modèle identiques dans votre cluster cible. Cette ressource simplifie la gestion et le scaling de vos instances de diffusion de modèles. Les objets InferencePool multiport sont compatibles avec les déploiements monocluuster et multicluster.
  • InferenceObjective : définit les priorités de routage pour des modèles spécifiques dans un InferencePool. Ce routage permet de s'assurer que certains modèles bénéficient d'une préférence de trafic en fonction de vos besoins.
  • GCPInferencePoolImport : rend vos backends de modèle disponibles pour la configuration du routage à l'aide de HTTPRoute dans le cluster de configuration. Cette ressource est automatiquement créée dans votre cluster de configuration lorsque vous exportez un InferencePool à partir d'un cluster cible. Le cluster de configuration sert de point de contrôle central pour votre environnement multicluster.
  • GCPBackendPolicy : personnalise la manière dont le trafic est équilibré vers vos backends. Par exemple, vous pouvez activer l'équilibrage de charge en fonction de métriques personnalisées ou définir des limites sur les requêtes en cours par point de terminaison pour protéger vos serveurs de modèles.
  • AutoscalingMetric : définit des métriques personnalisées, telles que vllm:kv_cache_usage_perc, à exporter à partir de vos serveurs de modèles. Vous pouvez ensuite utiliser ces métriques dans GCPBackendPolicy pour prendre des décisions plus intelligentes en matière d'équilibrage de charge, et optimiser les performances et l'utilisation des ressources.

Fonctionnement de GKE Inference Gateway multicluster

La passerelle GKE Inference multiclusters gère et achemine le trafic vers vos modèles d'IA/ML déployés sur plusieurs clusters GKE. Elle fonctionne comme suit :

  • Gestion centralisée du trafic : un cluster de configuration dédié définit vos règles de routage du trafic. Le cluster de configuration sert de point de contrôle central pour votre environnement multicluster. Vous désignez un cluster GKE comme cluster de configuration lorsque vous activez l'objet Ingress multicluster pour votre parc. Cette approche centralisée vous permet de gérer la façon dont les requêtes sont dirigées vers vos modèles dans l'ensemble de votre parc de clusters GKE depuis un emplacement unique.
  • Déploiement flexible des modèles : vos modèles d'IA/de ML réels s'exécutent dans des clusters cibles distincts. Cette séparation vous permet de déployer des modèles là où cela a le plus de sens (par exemple, plus près des données ou des clusters avec du matériel spécifique).
  • Intégration facile des modèles : lorsque vous déployez un modèle dans un cluster cible, vous regroupez ses instances de diffusion à l'aide d'un InferencePool. L'exportation de ce pool d'inférence le rend automatiquement disponible pour le routage dans votre cluster de configuration.
  • Équilibrage de charge intelligent : la passerelle ne se contente pas de répartir le trafic, elle prend des décisions d'acheminement intelligentes. En la configurant pour qu'elle utilise différents signaux, y compris des métriques personnalisées provenant de vos serveurs de modèles, la passerelle permet de s'assurer que les requêtes entrantes sont envoyées au cluster ou à l'instance de modèle les mieux équipés, ce qui peut maximiser les performances et l'utilisation des ressources. Par exemple, vous pouvez acheminer les requêtes vers le cluster disposant de la plus grande capacité d'inférence disponible en fonction de métriques telles que l'utilisation du cache clé-valeur (KV).

Étapes suivantes