À propos de la haute disponibilité élastique interrégionale

Vous pouvez obtenir une haute disponibilité élastique interrégionale pour les charges de travail d'inférence d'IA exigeantes sur Google Kubernetes Engine (GKE) afin d'accéder efficacement et de manière fiable à la capacité d'accélérateur dans différentes Cloud de Confiance régions. Cette solution utilise la passerelle d'inférence multicluster GKE et les fonctionnalités d'autoscaling GKE, ce qui permet à vos charges de travail d'accéder à la capacité d'accélérateur et de la faire évoluer dans différentes régions. Cette approche améliore la disponibilité, l'évolutivité et la résilience des ressources pour vos applications d'IA. Ce document décrit les avantages, les composants clés et le fonctionnement général de la haute disponibilité élastique interrégionale.

Avant de lire ce document, vous devez connaître les points suivants :

Ce document s'adresse aux profils 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 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 Cloud de Confiance le contenu, consultez Rôles utilisateur et tâches courantes de l'utilisateur dans GKE Enterprise et tâches.

Avantages de la haute disponibilité élastique interrégionale

La haute disponibilité élastique interrégionale offre plusieurs avantages clés pour la gestion de vos charges de travail d'inférence d'IA/ML, y compris les suivants :

  • Capacité et évolutivité accrues : surmontez les pénuries d'accélérateurs dans une seule région en regroupant les ressources GPU ou TPU de plusieurs clusters dans différentes régions. Vous pouvez également utiliser différents types d'accélérateurs pour étendre davantage le pool de capacité. Cette approche permet à vos charges de travail d'inférence d'IA de dépasser la capacité d'une seule région ou d'un seul type d'accélérateur, en exploitant automatiquement les ressources disponibles dans votre parc, quelle que soit la région.
  • Débordement automatisé, fiabilité et disponibilité améliorées : la passerelle achemine intelligemment le trafic, en donnant la priorité aux régions ou aux clusters préférés. Lorsque les limites de capacité sont atteintes dans un emplacement, le trafic est automatiquement transféré vers d'autres emplacements disposant de ressources disponibles. Cette approche, combinée à des déploiements multirégionaux, améliore la haute disponibilité et la tolérance aux pannes, car le système peut contourner les clusters ou les régions qui rencontrent des problèmes.
  • Répartition du trafic optimisée par l'IA : utilisez l'équilibrage de charge basé sur l'utilisation avec des métriques personnalisées spécifiques à l'IA, telles que l'utilisation du cache clé-valeur. Cette configuration garantit des décisions d'acheminement optimisées à l'échelle mondiale. La distribution du trafic optimisée par l'IA envoie les requêtes aux backends équipés pour les gérer, ce qui permet de maximiser les performances et d'éviter la surcharge dans votre parc d'inférence multicluster.

Fonctionnement de la haute disponibilité élastique interrégionale

La haute disponibilité élastique interrégionale sur GKE permet à vos charges de travail d'inférence d'IA d'utiliser automatiquement la capacité d'accélérateur (telle que les GPU ou les TPU) dans plusieurs Cloud de Confiance régions. Lorsque votre région principale rencontre des contraintes de capacité pour les ressources requises, cette solution achemine intelligemment le trafic et met à l'échelle les charges de travail vers d'autres régions disposant de capacité disponible, tout en respectant vos préférences définies.

Les éléments suivants expliquent les composants clés de la haute disponibilité élastique interrégionale et leur fonctionnement combiné :

  • Passerelle d'inférence multicluster : votre application d'inférence est déployée sur plusieurs clusters GKE dans différentes régions. Ces clusters sont gérés dans le cadre d'un parc GKE. Une passerelle d'inférence multicluster GKE est configurée avec un équilibreur de charge interne, qui fournit un point de terminaison privé unique pour vos requêtes d'inférence. Cette passerelle connaît vos déploiements de services sur tous les clusters du parc.
  • Équilibrage basé sur l'utilisation : au lieu d'utiliser des taux de requêtes de base, l' équilibreur de charge distribue le trafic en fonction des métriques d'utilisation personnalisées en temps réel signalées par vos serveurs de modèles. Pour l'inférence d'IA, il s'agit souvent d'une métrique telle que l'utilisation du cache KV, qui reflète la charge réelle sur le serveur.
  • Préférences de localisation et de ressources : vous pouvez configurer les régions ou les zones autorisées à exécuter vos charges de travail d'inférence d'IA lors de la création du cluster, et vous pouvez spécifier un ordre de préférence à l'aide des éléments suivants :
    • GCPBackendPolicy: cette stratégie est associée à la passerelle et vous permet de définir des backends préférés. Vous pouvez spécifier les régions (c'est-à-dire les clusters) vers lesquelles l'équilibreur de charge doit en priorité envoyer le trafic. Cette stratégie est généralement alignée sur l'emplacement où vous avez réservé de la capacité ou sur l'emplacement où vos exigences de latence sont plus faibles.
    • Classe de calcul personnalisée (facultatif, si vous utilisez la création automatique de pool de nœuds): dans chaque cluster GKE individuel, vous pouvez utiliser des objets ComputeClass personnalisés pour définir les types de nœuds préférés, y compris les types de machines (par exemple, a3-highgpu-8g), les types de capacité (tels que réservé, à la demande et spot), et même les zones préférées dans cette région.
  • Scaling dynamique et routage du trafic : le trafic est mis à l'échelle et acheminé selon le processus suivant :
    • Les requêtes entrantes atteignent l'équilibreur de charge interne de la passerelle d'entrée multicluster.
    • L'équilibreur de charge, guidé par la GCPBackendPolicy, envoie d'abord le trafic aux backends de vos régions préférées.
    • Le trafic est distribué dans une région et entre les backends en fonction des métriques d'utilisation personnalisées.
    • L'autoscaler horizontal de pods (AHP) de chaque cluster met à l'échelle le nombre de pods de serveur de modèle en fonction des mêmes métriques d'utilisation.
    • L'autoscaler de cluster GKE et le provisionnement automatique des nœuds, guidés par la ComputeClass personnalisée, ajoutent ou suppriment des nœuds des types et des zones préférés pour répondre aux exigences de scaling du pod.
  • Haute disponibilité élastique interrégionale en action : si les serveurs de modèles des régions préférées sont entièrement utilisés (c'est-à-dire sans capacité supplémentaire disponible), l'équilibreur de charge transfère automatiquement le trafic vers les clusters d'autres régions configurées qui disposent de capacité disponible. L'autoscaler horizontal de pods et l'autoscaler de cluster mettent ensuite à l'échelle les ressources de ces régions de secours, si nécessaire.

Étape suivante