Un groupe d'instances géré (MIG) qui répartit ses VM sur plusieurs zones d'une même région est également appelé MIG régional. Un MIG limité à une seule zone est également appelé MIG zonal.
Vous pouvez utiliser un MIG régional pour augmenter la résilience de votre charge de travail basée sur le MIG. En répartissant votre charge de travail sur plusieurs zones d'une même région, vous êtes protégé contre les cas extrêmes où toutes les instances d'une même zone échouent.
Cette page contient des informations conceptuelles sur les MIG régionaux :
- Pourquoi choisir un MIG régional plutôt qu'un MIG zonal
- Options de configuration régionale
- Différences de comportement des MIG zonaux
- Augmenter la disponibilité en effectuant un surprovisionnement
Pour savoir comment créer un MIG régional, consultez la page Créer un MIG dans plusieurs zones.
Pourquoi choisir des groupes d'instances gérés régionaux ?
Google recommande les MIG régionaux plutôt que les MIG zonaux pour les raisons suivantes :
- Vous pouvez utiliser des MIG régionaux pour gérer jusqu'à 2 000 instances, soit deux fois plus d'instances qu'avec des MIG zonaux. Si vous en avez besoin de plus, vous pouvez augmenter la limite de taille d'un MIG régional à 4 000 instances.
- Vous pouvez utiliser des MIG régionaux pour répartir la charge de l'application sur plusieurs zones, au lieu de limiter votre application à une seule zone ou de gérer plusieurs MIG zonaux sur différentes zones.
L'utilisation de plusieurs zones vous protège contre les défaillances de zone et les scénarios inattendus dans lesquels un groupe entier d'instances d'une même zone cesse de fonctionner correctement. Dans une telle éventualité, votre application peut continuer à traiter le trafic à partir d'instances exécutées dans une autre zone de la même région.
En cas de défaillance d'une zone ou lorsque tout un groupe d'instances d'une même zone ne répond plus, un MIG régional continue à prendre en charge vos instances comme suit :
Les instances qui appartiennent aux zones restantes du MIG régional continuent de diffuser le trafic. Aucune nouvelle instance n'est ajoutée et aucune instance n'est redistribuée (sauf si vous configurez l'autoscaling).
Une fois la zone défaillante récupérée, le MIG recommence à diffuser le trafic depuis cette zone.
Pour concevoir des applications robustes et évolutives, utilisez des MIG régionaux.
Options de configuration supplémentaires pour les MIG régionaux
La création d'un MIG régional est semblable à la création d'un MIG zonal, sauf que vous disposez d'options supplémentaires :
- Vous pouvez sélectionner les zones d'une région dans lesquelles créer des VM.
- Vous pouvez choisir une forme de distribution cible pour déterminer comment distribuer les instances dans les zones sélectionnées.
- Vous pouvez choisir de désactiver ou de réactiver la redistribution proactive des instances, qui tente de répartir uniformément les VM du groupe sur les zones sélectionnées.
Ces options sont décrites dans les sections suivantes.
Sélectionner la zone
Par défaut, un MIG régional distribue ses instances gérées équitablement sur trois zones. Pour diverses raisons, vous pouvez avoir besoin de sélectionner des zones spécifiques pour une application. Par exemple, si vous avez besoin de GPU pour vos instances, vous pouvez sélectionner uniquement des zones compatibles avec les GPU, ou disposer de disques persistants ou réservations uniquement disponibles dans certaines zones.
Si vous souhaitez choisir le nombre de zones ou des zones spécifiques dans lesquelles le groupe doit s'exécuter, vous devez le faire lors de la création du groupe. Une fois que vous avez choisi des zones spécifiques lors de la création, vous ne pouvez plus les modifier ni les mettre à jour.
Si vous souhaitez que votre MIG utilise automatiquement les zones qui acceptent le matériel spécifié dans la configuration de votre MIG, vous pouvez définir la forme de distribution cible du MIG sur BALANCED
, ANY
ou ANY_SINGLE_ZONE
et sélectionner toutes les zones d'une région. Le groupe d'instances géré vérifie automatiquement la disponibilité des ressources et planifie uniquement les instances dans les zones qui en contiennent.
Pour en savoir plus, consultez la page Forme de distribution cible.
Pour sélectionner plus de trois zones dans une région, vous devez spécifier ces zones une à une. Par exemple, pour sélectionner les quatre zones d'une région, vous devez désigner explicitement ces quatre zones dans votre requête. Si vous ne le faites pas, Compute Engine sélectionne trois zones par défaut.
Pour sélectionner deux zones ou une seule zone d'une région, vous devez spécifier explicitement chaque zone. Même si la région ne contient que deux zones, vous devez spécifier explicitement les zones dans votre requête.
Google développe régulièrement son infrastructure en mettant à disposition du matériel spécialisé dans davantage de zones. Un MIG régional vérifie régulièrement la disponibilité du matériel et commence automatiquement à planifier des instances dans les zones acceptant les machines requises. Si, pour une raison quelconque, vous ne souhaitez pas exécuter vos instances dans certaines zones, ne les sélectionnez pas lors de la création du groupe.
Pour découvrir comment créer un groupe d'instances géré régional et sélectionner des zones, consultez la section Créer un MIG régional.
Forme de distribution cible
Par défaut, un MIG régional distribue ses instances gérées équitablement sur l'ensemble des zones sélectionnées. Toutefois, si vous avez besoin de matériel indisponible dans toutes les zones ou si vous devez hiérarchiser l'utilisation des réservations zonales, vous pouvez opter pour une autre distribution.
Pour configurer la distribution des instances du MIG régional entre les zones sélectionnées d'une région, définissez la forme de distribution cible du MIG. Les options suivantes sont disponibles :
- EVEN (ÉGAL, valeur par défaut) : le groupe crée et supprime des VM pour atteindre et conserver le même nombre de VM dans les zones sélectionnées. Dans une distribution
EVEN
, le nombre de VM ne diffère pas de plus de 1 entre deux zones données. Option recommandée pour les charges de travail de diffusion à disponibilité élevée. - BALANCED (ÉQUILIBRÉ) : le groupe priorise la création de VM dans les zones où des ressources sont disponibles, tout en répartissant les VM aussi uniformément que possible entre les zones sélectionnées afin de minimiser l'impact d'une défaillance zonale. Option recommandée pour les charges de travail de diffusion ou par lot à disponibilité élevée.
- ANY (N'IMPORTE QUELLE ZONE) : le groupe choisit les zones dans lesquelles créer les instances de VM afin de respecter le nombre de VM demandé dans les limites des ressources disponibles et d'optimiser l'utilisation des réservations zonales non utilisées. Option recommandée pour les charges de travail par lot ne nécessitant pas une disponibilité élevée.
- N'IMPORTE QUELLE ZONE UNIQUE : le groupe crée toutes les instances de VM dans une seule zone. La zone est choisie en fonction de la compatibilité matérielle, de la disponibilité actuelle des ressources et des quotas, et des réservations correspondantes. Option recommandée en association avec une stratégie d'emplacement compact des instances pour les charges de travail qui nécessitent une communication approfondie entre les VM.
Lorsque vous créez votre MIG, si vous définissez sa forme sur BALANCED
, ANY
ou ANY_SINGLE_ZONE
, vous n'avez pas besoin de vérifier manuellement les zones qui acceptent le matériel que vous spécifiez dans la configuration du MIG. Vous pouvez sélectionner toutes les zones d'une région et, si la forme est définie sur BALANCED
, ANY
ou ANY_SINGLE_ZONE
, votre MIG régional vérifie la disponibilité des ressources à votre place et planifie uniquement les instances dans les zones qui disposent des ressources.
Choisissez une option en fonction des exigences liées à vos charges de travail et des capacités des MIG dont vous avez besoin. Pour en savoir plus, consultez le tableau de comparaison et les cas d'utilisation.
Pour savoir comment configurer la forme cible d'un MIG nouveau ou existant, consultez la section Définir une règle de distribution des instances entre les zones.
Redistribution proactive des instances
Par défaut, un MIG régional tente de maintenir une distribution uniforme des instances dans les zones de la région afin de maximiser la disponibilité de votre application en cas de défaillance de la zone.
Si vous supprimez ou abandonnez des instances de votre groupe, cela entraîne une distribution inégale entre les zones. Le groupe redistribue alors les instances de manière proactive pour rétablir une distribution égale.
Pour rétablir une distribution égale entre les zones, le groupe supprime des instances dans les zones contenant davantage d'instances et ajoute des instances dans celles qui en contiennent moins. Le groupe choisit automatiquement les instances à supprimer.
Par exemple, supposons que vous disposiez d'un MIG régional avec 12 instances réparties dans les trois zones suivantes : a
, b
et c
. Si vous supprimez trois instances gérées dans c
, le groupe tente d'effectuer un rééquilibrage afin que les instances soient à nouveau distribuées de manière égale entre les zones. Dans ce cas, le groupe supprime deux instances (une de a
et une de b
) et crée deux instances dans la zone c
, afin que chaque zone contienne trois instances. La distribution est ainsi à nouveau égale. Vous n'avez pas la possibilité de sélectionner les instances qui seront supprimées. Le groupe perd temporairement de la capacité pendant le démarrage des nouvelles instances.
Pour empêcher la redistribution automatique de vos instances, vous pouvez désactiver la redistribution proactive des instances.
La désactivation de la redistribution proactive des instances est utile lorsque vous souhaitez effectuer les opérations suivantes :
- Supprimer ou abandonner des instances du groupe sans affecter les autres instances en cours d'exécution. Par exemple, vous pouvez supprimer une instance de nœud de calcul de traitement par lots une fois la tâche terminée sans affecter les autres nœuds de calcul.
- Protéger les instances d'une suppression automatique indésirable due à la redistribution proactive en utilisant des charges de travail avec état.
- Définissez la forme de distribution cible du groupe d'instances géré sur
BALANCED
ouANY_SINGLE_ZONE
.
Si vous désactivez la redistribution proactive des instances, un MIG n'ajoute ni ne supprime aucune instance de manière proactive pour atteindre l'équilibre. Toutefois, il profite toujours des opérations de redimensionnement pour tendre vers l'équilibre, chacune de ces opérations étant traitée comme une opportunité d'équilibrer le groupe. Par exemple, lors d'un scaling vertical, le groupe utilise automatiquement le rescaling pour supprimer des instances des zones les plus importantes. Lors d'un scaling horizontal, il ajoute des instances aux zones les plus petites.
Différences de comportement des MIG zonaux
La principale différence entre un MIG zonal et un MIG régional est qu'un MIG régional peut utiliser plusieurs zones.
Les instances gérées d'un MIG régional sont réparties entre les zones d'une région. Par conséquent, les fonctionnalités du MIG ci-dessous se comportent différemment.
Autoscaling d'un MIG régional
Compute Engine propose l'autoscaling pour les MIG, ce qui permet à vos groupes d'ajouter (c'est-à-dire effectuer un scaling horizontal) ou de supprimer (c'est-à-dire effectuer un scaling vertical) automatiquement des VM selon que la charge augmente ou diminue.
Si vous activez l'autoscaling pour un MIG régional, cette fonctionnalité se comporte comme suit :
L'autoscaler décide dans quelle zone créer les VM en fonction du signal d'autoscaling le plus important dans chaque zone. Par exemple, si vous effectuez un scaling basé sur l'utilisation du processeur, l'autoscaler crée davantage de VM dans les zones plus utilisées.
Si les zones ont des valeurs de signal différentes, l'autoscaling peut créer une distribution inégale des VM. Dans ce cas, l'autoscaler tente d'équilibrer la charge entre les zones en créant des VM supplémentaires dans les zones qui en comptent le moins. Une fois que les zones avec des VM supplémentaires prennent le relais de la charge, le nombre de VM sur les zones doit être équilibré.
Si la valeur du signal dans une zone déclenche un scaling horizontal, mais que la valeur du signal global dans le MIG régional ne nécessite pas de VM supplémentaire ou nécessite une VM supplémentaire dans une zone différente, l'autoscaler peut ajouter une VM et puis la supprimer immédiatement dans l'une des zones.
Lorsqu'un signal d'autoscaling s'applique à un MIG régional dans son ensemble, par exemple avec des planifications de scaling ou des métriques de surveillance, l'autoscaler répartit les VM sur les zones aussi équitablement que possible.
Une fois la forme de distribution cible définie sur
BALANCED
, l'autoscaler connaît la disponibilité des ressources entre les zones. L'autoscaler ne crée des VM de manière proactive que dans les zones disposant d'un quota et d'une capacité suffisants pour les VM, comme spécifié dans la configuration du MIG.
Mettre à jour un MIG régional
Vous ne pouvez pas modifier ou mettre à jour les zones d'un MIG régional après la création du groupe. Toutefois, vous pouvez définir la forme de distribution cible du groupe pour prioriser l'utilisation de différentes zones, par exemple si vous avez des ressources réservées ou que vous avez besoin de matériel qui n'est pas disponible dans toutes les zones.
Si vous souhaitez déployer un nouveau modèle sur un MIG régional, consultez la section Mettre à jour un MIG régional.
Si vous souhaitez ajouter ou supprimer des instances dans un MIG, le processus est le même pour les MIG régionaux et zonaux. Reportez-vous à la section Ajouter et supprimer des VM dans un MIG.
Si vous souhaitez configurer des disques avec état ou des métadonnées avec état dans un MIG, consultez la section Configurer des groupes d'instances gérés (MIG) avec état.
Augmenter la disponibilité en effectuant un surprovisionnement
Divers événements peuvent entraîner l'indisponibilité d'une ou de plusieurs instances. Vous pouvez atténuer le problème à l'aide de plusieurs services Google Cloud :
- Utilisez un MIG régional avec une forme de distribution cible
EVEN
ouBALANCED
pour distribuer votre application sur plusieurs zones. - Utilisez l'autoréparation basée sur les applications pour recréer des instances dont les applications présentent des défaillances.
- Utilisez l'équilibrage de charge pour détourner automatiquement le trafic utilisateur des instances indisponibles.
Toutefois, même si vous faites appel à ces services, vos utilisateurs peuvent toujours rencontrer des problèmes si trop d'instances sont indisponibles simultanément.
Afin de parer aux cas extrêmes dans lesquels une zone tout entière devient indisponible ou tout un groupe d'instances cesse de répondre, nous vous recommandons vivement de surprovisionner votre MIG. Selon les besoins de l'application, le surprovisionnement du groupe empêche votre système de tomber en panne lorsqu'une zone ou un groupe d'instances ne répond plus.
Google formule ces recommandations de surprovisionnement en retenant comme priorité la disponibilité de votre application pour les utilisateurs. Ces recommandations impliquent de provisionner et d'acheter plus d'instances que votre application n'en requiert au quotidien. Déterminez le niveau de surprovisionnement nécessaire en tenant compte des besoins de l'application et de vos contraintes budgétaires.
Vous pouvez définir la taille de votre MIG au moment de sa création. Une fois la création terminée, vous pouvez ajouter ou supprimer des instances.
Vous pouvez configurer un autoscaler pour ajouter et supprimer automatiquement des instances dans le groupe en fonction de la charge.
Estimer la taille de groupe recommandée
Nous vous recommandons de provisionner suffisamment d'instances afin que, si toutes les instances d'une zone sont indisponibles, le nombre d'instances restantes soit toujours conforme au nombre minimal d'instances requis.
Déterminez la taille minimale recommandée pour votre groupe à l'aide du tableau suivant :
Nombre de zones | Instances de VM supplémentaires | Nombre total d'instances de VM recommandé |
---|---|---|
2 | +100 % | 200 % |
3 | +50 % | 150 % |
4 | +33 % | 133 % |
Provisionner un MIG régional sur trois zones ou plus
Lorsque vous créez un MIG régional dans une région comportant au moins trois zones, nous vous recommandons de surprovisionner votre groupe d'au moins 50 %. Par défaut, un MIG régional crée des instances dans trois zones. Des instances distribuées entre trois zones suffisent déjà à préserver au moins les deux tiers de votre capacité de diffusion. En cas de défaillance de l'une des zones, les deux autres zones de la région peuvent continuer à diffuser le trafic sans interruption. En cas de perte d'un tiers de la capacité, un surprovisionnement à 150 % garantit que 100 % du trafic reste pris en charge par les zones restantes.
Par exemple, si vous avez besoin de 20 instances distribuées entre trois zones dans votre MIG, nous vous recommandons d'ajouter au moins 50 % d'instances supplémentaires. Dans ce cas, 50 % de 20 instances équivalent à 10 instances supplémentaires, soit un total de 30 instances dans le groupe. Si vous créez un MIG régional avec une taille de 30, le groupe répartit les VM dans les trois zones, comme suit :
Zone | Nombre d'instances de VM |
---|---|
exemple-zone-1 | 10 |
exemple-zone-2 | 10 |
exemple-zone-3 | 10 |
En cas de défaillance de l'une des zones, il vous reste 20 instances pour diffuser le trafic.
Provisionner un MIG régional sur deux zones
Pour provisionner vos instances dans deux zones au lieu de trois, Google recommande de doubler le nombre d'instances. Par exemple, si vous avez besoin de 20 instances pour votre service (réparties sur deux zones), nous vous recommandons de configurer un MIG régional avec 40 instances, de sorte que chaque zone dispose de 20 instances. En cas de défaillance de l'une des zones, il vous reste 20 instances pour diffuser le trafic.
Zone | Nombre d'instances de VM |
---|---|
exemple-zone-1 | 20 |
exemple-zone-2 | 20 |
S'il est difficile de diviser le nombre d'instances de votre groupe entre deux zones, Compute Engine répartit les VM de la manière la plus équitable possible, puis place de manière aléatoire les instances restantes dans l'une des zones.
Provisionner un MIG régional sur une zone
Il est possible de créer un MIG régional comportant une seule zone. Cette opération s'apparente à la création d'un MIG zonal.
La création d'un MIG régional à une seule zone est déconseillée, car cela offre une garantie minime en matière d'applications à disponibilité élevée. En cas de défaillance de la zone, l'intégralité de votre MIG devient indisponible, ce qui risque de perturber les utilisateurs.
Étape suivante
- Créez un groupe d'instances géré (MIG) régional.
- Apprenez à créer des applications Web évolutives et résilientes.
- Découvrez la reprise après sinistre sur Google Cloud Platform.