Vous pouvez configurer l'autoscaling pour un groupe d'instances géré (MIG) afin d'ajouter ou supprimer automatiquement des instances de machine virtuelle (VM) en fonction de l'augmentation ou de la diminution de charge. Toutefois, si l'initialisation de votre application prend quelques minutes ou plus, l'ajout d'instances en réponse aux modifications en temps réel risque de ne pas faire augmenter suffisamment vite la capacité de l'application. Par exemple, en cas d'augmentation importante de la charge (par exemple, lorsque les utilisateurs commencent à travailler le matin), l'initialisation de l'application sur de nouvelles instances pourrait être retardée.
Vous pouvez utiliser l'autoscaling prédictif afin d'améliorer les temps de réponse des applications dont les délais d'initialisation sont longs et dont les charges de travail varient de manière prévisible selon des cycles quotidiens ou hebdomadaires.
Lorsque vous activez l'autoscaling prédictif, Compute Engine prévoit la charge future en fonction de l'historique de votre MIG, et effectue un scaling horizontal du MIG avant la charge prévue afin que les nouvelles instances soient prêtes à être livrées lorsque la charge arrive. Sans autoscaling prédictif, un autoscaler ne peut effectuer un scaling horizontal d'un groupe que de manière réactive, en fonction des variations de charge observées en temps réel. Lorsque l'autoscaling prédictif est activé, l'autoscaler utilise les données en temps réel ainsi que les données historiques pour couvrir la charge actuelle et prévue. Pour en savoir plus, consultez Fonctionnement de l'autoscaling prédictif et Vérifier si l'autoscaling prédictif est adapté à votre charge de travail.
Avant de commencer
- Si vous voulez utiliser les exemples de ligne de commande de ce guide, installez la Google Cloud CLI ou lancez Cloud Shell.
- Découvrez les principes de base de l'autoscaler.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification permet de valider votre identité pour accéder aux services et aux API Google Cloud . Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes :
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Installez la Google Cloud CLI. Une fois que la Google Cloud CLI est installée, initialisez-la en exécutant la commande suivante :
gcloud initSi vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
- Set a default region and zone.
REST
Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.
Installez la Google Cloud CLI. Une fois que la Google Cloud CLI est installée, initialisez-la en exécutant la commande suivante :
gcloud initSi vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud .
Tarification
L'autoscaling prédictif est disponible sans frais. Toutefois, si vous activez l'autoscaling prédictif pour optimiser la disponibilité, vous payez les ressources Compute Engine utilisées par votre MIG.
Limites
- L'autoscaling prédictif ne fonctionne qu'avec la métrique de scaling "Utilisation du processeur". Les métriques Cloud Load Balancing ou Cloud Monitoring ne sont pas prises en charge.
- Compute Engine nécessite trois jours d'historique d'autoscaling basé sur le processeur pour pouvoir générer des prévisions.
- Les prévisions sont basées sur des modèles de charge quotidiens et hebdomadaires. Compute Engine ne prédit pas les événements mensuels, annuels ou non récurrents. Il ne prédit pas non plus les modèles de charge de moins de 10 minutes. Vous pouvez utiliser l'autoscaling basé sur les planifications pour demander davantage de capacité pour des modèles de charge non récurrents ou autres.
Charges de travail appropriées
L'autoscaling prédictif fonctionne mieux si votre charge de travail répond aux critères suivants :
- L'initialisation de votre application prend beaucoup de temps (si vous configurez par exemple une période d'initialisation de plus de deux minutes).
- Votre charge de travail varie de manière prévisible selon des cycles quotidiens ou hebdomadaires.
Si l'initialisation de votre service prend beaucoup de temps, vos utilisateurs peuvent observer une latence du service après un événement de scaling horizontal, lorsque les nouvelles VM sont provisionnées mais n'ont pas encore commencé la diffusion. L'autoscaling prédictif prend en compte le temps d'initialisation de votre application et effectue un scaling horizontal afin d'anticiper l'augmentation prévue de l'utilisation, ce qui permet de garantir que le nombre d'instances de diffusion disponibles est suffisant pour l'utilisation cible.
Pour vous donner une idée de l'impact potentiel de l'autoscaling prédictif sur votre groupe, consultez Vérifier si l'autoscaling prédictif est adapté à votre charge de travail.
Activer et désactiver l'autoscaling prédictif
Vous pouvez activer l'autoscaling prédictif lorsque vous effectuez un scaling en fonction de l'utilisation du processeur. Pour en savoir plus sur la configuration de l'autoscaling basé sur le processeur, consultez Scaling basé sur l'utilisation du processeur.
Si votre MIG n'a pas d'historique d'autoscaler, il est possible que trois jours s'écoulent avant que l'algorithme prédictif n'impacte l'autoscaler. Pendant ce temps, le scaling du groupe est basé strictement sur les données en temps réel. Après trois jours, le groupe commence à évoluer à l'aide des prévisions. Au fur et à mesure que les données historiques de charge sont recueillies, l'autoscaler prédictif est capable de mieux comprendre vos modèles de charge et ses prévisions s'améliorent. Compute Engine utilise jusqu'à trois semaines d'historique de charge de votre MIG pour alimenter le modèle de machine learning.
Console
Dans la console, accédez à la page Groupes d'instances.
Dans la liste, cliquez sur le nom d'un MIG existant pour ouvrir la page de présentation du groupe.
Cliquez sur Modifier.
Cliquez sur Taille du groupe et autoscaling pour développer la section, puis procédez comme suit :
Si aucune configuration d'autoscaling n'existe, configurez-la comme suit :
- Dans la section Autoscaling, cliquez sur Configurer l'autoscaling. Le signal d'utilisation du processeur est ajouté par défaut.
- Spécifiez le nombre minimal et maximal d'instances que l'autoscaler peut créer dans ce groupe.
- Dans la section Signaux d'autoscaling, cliquez sur le signal d'utilisation du processeur.
- Modifiez le type de signal et l'objectif d'utilisation du CPU si nécessaire.
Dans la section Autoscaling prédictif, sélectionnez Optimiser pour la disponibilité pour activer l'autoscaling prédictif.
- Si vous souhaitez désactiver l'algorithme prédictif et utiliser uniquement l'autoscaler en temps réel, vous pouvez également sélectionner Désactivé.
Cliquez sur OK.
Si l'autoscaling basé sur l'utilisation du processeur est déjà configuré, procédez comme suit :
- Dans la section Signaux d'autoscaling, cliquez sur le signal d'utilisation du processeur.
- Dans la section Autoscaling prédictif, sélectionnez Optimiser pour la disponibilité pour activer l'autoscaling prédictif.
Cliquez sur OK.
Dans la section Période d'initialisation, spécifiez le temps nécessaire à l'initialisation de votre application sur une nouvelle instance. Ce paramètre indique à l'autoscaler prédictif qu'il doit effectuer le scaling horizontal plus longtemps à l'avance afin que les applications soient initialisées dès l'arrivée de la charge.
Cliquez sur Enregistrer.
gcloud
Lorsque vous définissez ou mettez à jour l'autoscaler d'un MIG, incluez le flag
--cpu-utilization-predictive-methodavec l'une des valeurs suivantes :optimize-availability: pour activer l'algorithme prédictifnone(valeur par défaut) : pour désactiver l'algorithme prédictif
Si l'autoscaling basé sur le processeur n'est pas encore activé pour le groupe, vous devez l'activer. Vous pouvez utiliser la commande
set-autoscalingpour configurer à partir de zéro la règle d'autoscaling d'un groupe. Par exemple, la commande ci-dessous montre comment configurer l'autoscaling avec les paramètres suivants :- Autoscaling prédictif activé.
- Utilisation du processeur ciblée à 75 %.
- Nombre maximal d'instances défini sur 20.
- Une période d'initialisation (
--cool-down-period) définie sur cinq minutes. Ce paramètre indique à l'autoscaler prédictif qu'il doit effectuer un scaling horizontal 5 minutes avant l'arrivée de la charge attendue afin que les applications soient initialisées dès l'arrivée de la charge.
gcloud compute instance-groups managed set-autoscaling MIG_NAME \ --cpu-utilization-predictive-method optimize-availability \ --target-cpu-utilization 0.75 \ --max-num-replicas 20 \ --cool-down-period 300
Si l'autoscaling basé sur le processeur est déjà activé pour le groupe, utilisez la commande
update-autoscalingpour activer l'algorithme prédictif :gcloud compute instance-groups managed update-autoscaling MIG_NAME \ --cpu-utilization-predictive-method=optimize-availability
REST
Lorsque vous créez ou mettez à jour un autoscaler, incluez le champ
predictiveMethoddans le corps de la requête avec l'une des valeurs suivantes :OPTIMIZE_AVAILABILITY: pour activer l'algorithme prédictifNONE(valeur par défaut) : pour désactiver l'algorithme prédictif
Si le groupe ne dispose d'aucune configuration d'autoscaling, procédez comme suit :
- Pour un MIG régional : appelez la méthode
regionAutoscalers.insert. - Pour un MIG zonal : appelez la méthode
autoscalers.insert.
Si le groupe dispose déjà d'une configuration d'autoscaling, procédez comme suit :
- Pour un MIG régional : appelez la méthode
regionAutoscalers.patch. - Pour un MIG zonal : appelez la méthode
autoscalers.patch.
Si l'autoscaling basé sur le processeur n'est pas encore activé pour le groupe, vous devez l'activer.
Par exemple, la requête suivante corrige une ressource d'autoscaler existante afin d'activer l'autoscaling basé sur le processeur avec les paramètres suivants :
- Autoscaling prédictif activé.
- Utilisation du processeur ciblée à 75 %.
- Nombre maximal d'instances défini sur 20.
- Une période d'initialisation (
coolDownPeriodSec) définie sur cinq minutes. Ce paramètre indique à l'autoscaler prédictif qu'il doit effectuer un scaling horizontal 5 minutes avant l'arrivée de la charge attendue afin que les applications soient initialisées dès l'arrivée de la charge.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/autoscalers/ { "name": "AUTOSCALER_NAME", "target": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME", "autoscalingPolicy": { "cpuUtilization": { "utilizationTarget": 0.75, "predictiveMethod": "OPTIMIZE_AVAILABILITY" }, "maxNumReplicas": 20, "coolDownPeriodSec": 300 } }Vérifier si l'autoscaler prédictif est activé
Pour afficher la configuration d'autoscaling actuelle d'un MIG, consultez la section Obtenir les propriétés d'un MIG.
Configurer l'autoscaling prédictif
Pour savoir comment configurer l'utilisation cible, le nombre minimal et maximal d'instances et la période d'initialisation, consultez Scaling basé sur l'utilisation du processeur. Lorsque vous configurez ces options, l'autoscaler prédictif s'efforce de maintenir toutes les instances au niveau d'utilisation cible que vous avez défini, dans les limites minimale et maximale du groupe, de la même façon qu'un autoscaler en temps réel.
Utilisez le paramètre de période d'initialisation pour prendre en compte le temps nécessaire à l'initialisation de votre application. Cela permet à l'autoscaler d'anticiper l'augmentation prévue de la charge, car il sait combien de temps à l'avance il doit démarrer de nouvelles instances afin que votre application soit prête à les diffuser à l'arrivée de la charge.
Vérifier si l'autoscaling prédictif est adapté à votre charge de travail
Pour voir si l'autoscaling prédictif peut améliorer la disponibilité de votre application, vous pouvez comparer les performances de la configuration actuelle d'autoscaling basée sur les processeurs de votre groupe avec l'autoscaling prédictif. Vous n'avez pas besoin d'activer l'autoscaling prédictif pour effectuer la comparaison.
Pour en savoir plus sur les charges de travail adaptées à l'autoscaling prédictif, consultez Charges de travail appropriées.
Vérifier les surcharges
Votre MIG avec autoscaling est surchargé lorsque son utilisation de processeur moyenne dépasse votre cible. Pour vérifier si la configuration de l'autoscaling a entraîné une surcharge des VM au cours des sept derniers jours, et pour vérifier si l'autoscaling prédictif peut permettre de réduire les surcharges, procédez comme suit :
Dans la console, accédez à la page Groupes d'instances.
Cliquez sur un MIG existant pour lequel l'autoscaling basé sur le processeur est configuré. La page de présentation du groupe s'affiche.
Cliquez sur Modifier.
Cliquez sur Taille du groupe et autoscaling pour développer la section.
Dans la section Autoscaling, sous Signaux d'autoscaling, développez la section Utilisation du processeur puis cliquez sur Vérifier si l'autoscaling prédictif peut optimiser la disponibilité.
Sur la base des données des sept derniers jours, le tableau indique le nombre de VM utilisées par jour et le nombre de VM surchargées chaque jour pour les lignes suivantes :
- Configuration d'autoscaling actuelle : affiche les performances de l'autoscaler en fonction de sa configuration au cours des sept derniers jours.
- Avec l'autoscaling prédictif défini sur "Optimiser pour la disponibilité" : affiche les performances qu'aurait pu enregistrer l'autoscaler si l'autoscaling prédictif avait été activé au cours des sept derniers jours.
Vous pouvez utiliser le "nombre de VM utilisées par jour" comme un indicateur de vos coûts. Par exemple, pour réduire le nombre quotidien de VM surchargées, l'autoscaler prédictif peut créer des VM plus tôt et les exécuter pendant plus longtemps, ce qui génère des frais supplémentaires.
Surveiller et simuler un autoscaling prédictif
Vous pouvez visualiser les tailles passées de votre groupe à l'aide de Cloud Monitoring. Le graphique de surveillance montre comment votre configuration d'autoscaling a fait évoluer votre groupe au fil du temps. Il montre également comment l'autoscaling prédictif aurait fait évoluer votre groupe s'il avait été activé.
Lorsque l'autoscaling prédictif est désactivé pour un groupe, cet outil permet de simuler l'autoscaling prédictif avant de l'activer.
Dans la console, accédez à la page Groupes d'instances.
Cliquez sur un MIG existant pour lequel l'autoscaling basé sur le processeur est configuré. La page de présentation du groupe s'affiche.
Cliquez sur Surveillance pour afficher les graphiques associés au groupe.
Dans le premier graphique, cliquez sur son titre et sélectionnez Autoscaling prédictif. Cette vue indique la taille réelle du groupe ainsi que sa taille prédite.
Vous pouvez sélectionner une plage de dates différente pour voir un historique plus long, ou effectuer un zoom sur une période pendant laquelle la demande a augmenté pour voir l'impact de l'autoscaling prédictif sur la taille du groupe avant l'arrivée de la charge prévue.
Fonctionnement de l'autoscaling prédictif
L'autoscaler prédictif prédit votre métrique de scaling en fonction des tendances historiques de la métrique. Les prévisions sont recalculées toutes les deux ou trois minutes, ce qui permet à l'autoscaler d'adapter rapidement ses prévisions aux dernières variations de charge. L'autoscaler prédictif a besoin d'au moins trois jours d'historique pour déterminer un modèle d'utilisation de service représentatif et effectuer ensuite des prévisions. Compute Engine utilise jusqu'à trois semaines d'historique de charge de votre MIG pour alimenter le modèle de machine learning.
L'autoscaler prédictif calcule le nombre de VM nécessaires pour atteindre votre utilisation cible, et ce en fonction de nombreux facteurs, dont les suivants :
- La valeur future prévue de la métrique de scaling
- La valeur actuelle de la métrique de scaling
- La confiance dans les tendances passées, y compris la variabilité passée de la métrique de scaling
- La période d'initialisation de l'application configurée, également appelée période d'initialisation
Sur la base de ces facteurs, l'autoscaler prédictif effectue un scaling horizontal de votre groupe par anticipation à la demande attendue.
Figure 1 : Comparatif des VM de diffusion avec ou sans autoscaling prédictif
Dans la figure 1, la ligne bleue représente une demande de VM croissante. La ligne noire indique la réponse de l'autoscaler : d'autres VM sont ajoutées. Toutefois, pour les applications dont les délais d'initialisation sont longs, la ligne grise indique que les VM ajoutées ont besoin d'un délai supplémentaire pour pouvoir effectuer la diffusion, ce qui peut donner un nombre de VM de diffusion insuffisant pour répondre à la demande. Lorsque l'autoscaling prédictif est activé, l'augmentation attendue de la demande et le long délai d'initialisation de l'application sont pris en compte : l'autoscaler répond en ajoutant des VM plus tôt afin qu'il y ait un nombre suffisant de VM de diffusion. Vous pouvez configurer combien de temps à l'avance les nouvelles instances doivent être ajoutées en définissant une période d'initialisation.
Données d'utilisation en temps réel
L'autoscaler prédictif ne peut pas déterminer de modèle pour toutes les évolutions futures de l'utilisation à partir de données historiques seules. C'est pourquoi il fonctionne aussi bien avec les données en temps réel. Par exemple, un événement marquant inattendu peut contribuer à un pic d'utilisation qui n'aurait pas pu être anticipé avec l'historique seul. Pour gérer ces modifications imprévisibles de la charge, l'autoscaler prédictif répond comme suit :
- Il adapte ses prévisions : les prévisions sont recalculées en permanence en quelques minutes et sont ajustées pour intégrer les données les plus récentes. Le moment exact de l'ajustement aux nouveaux modèles dépend entre autres de la reproductibilité des nouveaux modèles et du degré de différence entre le nouveau modèle et les prévisions antérieures.
- Il utilise des données en temps réel : le nombre d'instances recommandé par l'autoscaler, basé sur les valeurs en temps réel de la métrique, est toujours suffisant pour atteindre l'objectif d'utilisation du groupe. Si la valeur actuelle d'un signal en temps réel est supérieure à la prévision, la valeur actuelle du signal est prioritaire sur la prévision. Par conséquent, les MIG sur lesquels l'autoscaling prédictif est activé ont toujours plus de disponibilité que les MIG sans autoscaling prédictif.
Figure 2. Deux graphiques illustrent la manière dont les prévisions s'adaptent à l'utilisation réelle du processeur.
Dans la figure 2, la ligne jaune pointillée indique la prévision à t1. Cependant, l'utilisation réelle du processeur, comme indiqué par la ligne bleue continue, est différente de celle prédite. Sur le graphique de gauche, l'utilisation réelle du processeur est plus élevée que prévu. Sur le graphique de droite, l'utilisation réelle du processeur est inférieure à celle prévue. La ligne bleue pointillée affiche la prévision ajustée.
Pics courts et imprévisibles
Les pics courts et imprévisibles sont traités en temps réel. Au minimum, l'autoscaler crée le nombre d'instances nécessaires pour maintenir l'utilisation au niveau de la cible configurée, en fonction de la valeur actuelle réelle de la métrique. Cependant, ces instances ne sont pas créées à l'avance, comme illustré dans la figure suivante.
Figure 3. Un pic court et imprévisible empêche l'autoscaler de réagir en temps réel.
Dans la figure 3, la ligne bleue continue indique l'utilisation réelle du processeur. Un pic inattendu d'utilisation du processeur n'a pas pu être prédit. Puisque l'autoscaler surveille constamment les données en temps réel, il ajoute des instances pour gérer les pics. La ligne noire continue illustre l'ajout réactif de VM par l'autoscaler en réponse au pic. La ligne grise continue indique le nombre de VM de diffusion. La ligne grise est en retard par rapport à la ligne noire en raison du temps d'initialisation de l'application. Dans ce scénario, le groupe est temporairement surchargé.
Baisses soudaines
Un autre type de changement imprévisible d'utilisation est une baisse soudaine, par exemple, une baisse due à une défaillance d'une partie de la pile d'application. Dans ce cas, le nombre d'instances est initialement conforme à la prévision. Cependant, au fil du temps, la prévision s'ajuste à l'utilisation inférieure aux prévisions, ce qui donne lieu à un scaling vertical. Le moment exact où survient cet ajustement dépend de nombreux facteurs, tels que la fréquence de ce type de changement par le passé, la durée de la baisse et la profondeur de la baisse.
Figure 4. Lors d'une baisse soudaine, l'autoscaler prédictif modifie ses prévisions.
Dans la figure 4, la ligne jaune pointillée indique la prévision à t1. Cependant, l'utilisation réelle du processeur, comme indiqué par la ligne bleue continue, est inférieure à celle prédite. La ligne bleue pointillée indique la prévision mise à jour, qui a été ajustée automatiquement après avoir observé l'utilisation inférieure à la prévision. De ce fait, l'autoscaler supprime les instances conformément à la période de stabilisation standard.
Données historiques
L'autoscaler prédictif a besoin d'au moins trois jours de charge historique pour commencer à effectuer des prévisions. Si vous disposez d'un nouveau MIG sans données historiques, Compute Engine adapte votre groupe de manière réactive à l'aide de données en temps réel jusqu'à ce que suffisamment de données historiques soient disponibles. Au bout de trois jours, et à mesure que Compute Engine collecte des données d'utilisation supplémentaires, les prévisions s'améliorent.
Si vous mettez à jour votre application en créant un MIG et en supprimant l'ancien (par exemple, dans le cadre d'un déploiement bleu-vert), votre nouveau MIG a besoin de trois jours de données historiques pour que l'autoscaling prédictif puisse commencer à générer des prévisions. Si vous souhaitez conserver l'historique de charge des MIG afin que les prévisions puissent être lancées immédiatement lorsque vous créez un MIG, contactez-nous pour savoir comment rejoindre une preview privée.
Étapes suivantes
- Découvrez comment gérer les autoscalers.
- Découvrez comment l'autoscaler prend ses décisions.
- Découvrez comment utiliser plusieurs signaux d'autoscaling pour effectuer un scaling de votre groupe.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/11/18 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/11/18 (UTC)."],[],[]] -