Lorsque vous activez l'autoscaling, l'autoscaler prend des décisions en matière de scaling en fonction des options que vous spécifiez. Chaque décision de scaling est consignée par Cloud Logging. Lisez ces journaux dans l'explorateur de journaux pour mieux comprendre les décisions de scaling prises par l'autoscaler.
L'explorateur de journaux vous permet de voir les événements liés au(x) :
- Recommandation de l'autoscaler pour le redimensionnement d'un groupe d'instances géré (MIG, Managed Instance Groups). Si l'autoscaler calcule une nouvelle taille recommandée pour un MIG, la modification de la taille recommandée est décrite dans les journaux de l'autoscaler. Consultez la section Redimensionner l'entrée de journal.
- Modifications de l'état de l'autoscaler. Par exemple, si l'autoscaler rencontre un problème après avoir fonctionné comme prévu, le changement d'état est décrit dans les journaux de l'autoscaler. Consultez la section Entrée du journal des modifications d'état.
Avant de commencer
- Lisez la documentation sur l'Autoscaling.
- Procurez-vous un autoscaler actif, avec affichage des journaux.
- Découvrez comment utiliser l'explorateur de journaux.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant 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 comme suit :
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Accédez à la page Explorateur de journaux.
- Déroulez le menu déroulant Ressource et sélectionnez Autoscaler.
Dans Google Cloud Console, accédez à la page Groupes d'instances.
Cliquez sur le nom du MIG pour lequel vous souhaitez afficher les journaux.
Cliquez sur l'onglet Surveillance.
Dans l'onglet Surveillance, le panneau Journaux se trouve en bas de la page. Ouvrez le panneau en cliquant sur l'icône située en bas de ce panneau.
Pour ouvrir la page Explorateur de journaux, cliquez sur l'icône Afficher dans l'explorateur de journaux dans ce panneau. L'explorateur de journaux s'ouvre avec une requête par défaut pour récupérer tous les journaux de l'autoscaler du MIG.
ON
: l'autoscaler redimensionne le MIG surnewSize
.OFF
: l'autoscaler ne redimensionne pas le MIG.ONLY_SCALE_OUT
: l'autoscaler ne redimensionne le MIG que si la valeur denewSize
est supérieure à la taille cible du MIG.servingSize
: nombre de VM du MIG, à l'exclusion des VM qui sont encore en période d'initialisation.signalTarget
: valeur cible que l'autoscaler conserve pour l'utilisation du processeur (en temps réel), l'utilisation prévue du processeur, l'utilisation de l'équilibrage de charge, ou une métrique configurée avec la cible d'utilisation.singleInstanceAssignment
: si le scaling est basé sur une valeur de métrique représentant le volume total de travail à effectuer,singleInstanceAssignment
correspond à la quantité de travail que chaque VM peut gérer.signalValue
: valeur du signal d'autoscaling. SisignalTarget
est défini, l'autoscaler comparesignalValue
avecsignalTarget
pour calculer le nombre de VM nécessaires, qui est représenté parcalculatedSize
.ON
: l'autoscaler redimensionne le MIG surnewSize
.OFF
: l'autoscaler ne redimensionne pas le MIG.ONLY_SCALE_OUT
: l'autoscaler ne redimensionne le MIG que si la valeur denewSize
est supérieure à la taille cible du MIG.metadata.newStatus.details
: nouvel état de l'autoscaler.metadata.oldStatus.details
: état précédent de l'autoscaler.- Mettez à jour votre autoscaler à partir des informations que vous avez collectées dans les journaux.
- Découvrez comment l'autoscaler prend des décisions.
- Examinez les options d'autoscaling.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.
Afficher les journaux de l'autoscaler
Pour afficher les journaux de l'autoscaler, utilisez la console Google Cloud, la gcloud CLI ou REST.
Console
Si vous avez activé l'autoscaling, vous pouvez consulter les journaux d'autoscaling dans la console Google Cloud.
Vous pouvez également accéder à la page Explorateur de journaux de votre MIG comme suit :
gcloud
Pour rechercher tous les journaux liés à l'autoscaling, utilisez la commande
logging read
. Exemple :gcloud logging read "resource.type=autoscaler" --limit 10 \ --format json
Pour afficher les journaux de l'autoscaler d'un MIG spécifique, spécifiez l'élément
instance_group_manager_name
comme suit :gcloud logging read "resource.type=autoscaler AND \ resource.labels.instance_group_manager_name=example-igm" \ --limit 10 --format json
Pour afficher les entrées de journal associées aux actions de redimensionnement de l'autoscaler, spécifiez le nom de la méthode
compute.autoscalers.resize
:gcloud logging read "resource.type=autoscaler AND \ resource.labels.instance_group_manager_name=example-igm AND \ protoPayload.methodName=compute.autoscalers.resize" \ --limit 10 --format json
Pour afficher les entrées de journal liées aux modifications d'état de l'autoscaler, spécifiez le nom de la méthode
compute.autoscalers.changeStatus
:gcloud logging read "resource.type=autoscaler AND \ resource.labels.instance_group_manager_name=example-igm AND \ protoPayload.methodName=compute.autoscalers.changeStatus" \ --limit 10 --format json
REST
Envoyez une requête à l'API Logging V2. Le corps de la requête doit contenir le paramètre de filtre (
filter
) à utiliser lors de la recherche de journaux et le projet (project
) pour lequel vous souhaitez afficher les journaux. Par exemple, pour effectuer une requête afin d'obtenir la liste des actions de redimensionnement d'un MIG spécifique, procédez comme suit :POST https://logging.googleapis.com/v2/entries:list { "filter": "resource.type=autoscaler AND resource.labels.instance_group_manager_name=example-igm AND protoPayload.methodName=compute.autoscalers.resize", "pageSize": 10, "resourceNames": [ "projects/example-project" ] }
Pour effectuer une requête afin d'obtenir la liste des modifications d'état d'un MIG spécifique, procédez comme suit :
POST https://logging.googleapis.com/v2/entries:list { "filter": "resource.type=autoscaler AND resource.labels.instance_group_manager_name=example-igm AND protoPayload.methodName=compute.autoscalers.changeStatus", "pageSize": 10, "resourceNames": [ "projects/example-project" ] }
Redimensionner une entrée de journal
Lorsque l'autoscaler calcule une taille recommandée pour votre MIG, Compute Engine crée une entrée de journal capturant les nouvelles et les anciennes tailles recommandées. Pour les MIG zonaux, l'entrée de journal capture également la raison de la modification de la taille recommandée.
Voici un exemple d'entrée de journal pour un MIG zonal. Dans cet exemple, en se basant sur l'autoscaling prédictif, l'autoscaler a calculé
3
VM pour atteindre l'objectif d'utilisation du processeur de35%
. Toutefois, le nombre maximal d'instances configurées dans la règle d'autoscaling n'est que de2
. L'autoscaler limite donc la taille recommandée à2
.{ insertId: "1l68z7sg4jw7kzo" logName: "projects/example-project/logs/cloudaudit.googleapis.com%2Fsystem_event" protoPayload: { @type: "type.googleapis.com/google.cloud.audit.AuditLog" metadata: { @type: "type.googleapis.com/autoscaler.AutoscalerSizeChangeExplanation" autoscalingMode: "ON" autoscalingReason: { scalingLimit: { limitPolicy: { maxNumReplicas: 2 } limitSize: 2 name: "MAX_INSTANCES" } scalingSignal: { calculatedSize: 3 calculationDetails: { servingSize: 1 signalTarget: 0.35 signalValue: 1.03533 } name: "PREDICTED_CPU_UTILIZATION" signalPolicy: { coolDownPeriodSec: 15 cpuUtilization: { predictiveMethod: "OPTIMIZE_AVAILABILITY" utilizationTarget: 0.35 } } } summary: "The autoscaler's recommended size changed from 1 to 2 because the autoscaler predicted that in 15 seconds the average CPU utilization across 1 serving instance will be 103.533%, which is above the utilization target of 35%. The calculated size was 3 to achieve the target CPU utilization but the size was limited by the maximum number of instances set in the autoscaling policy." } newSize: 2 oldSize: 1 } methodName: "compute.autoscalers.resize" resourceName: "projects/example-project/zones/us-east1-d/autoscalers/example-autoscaler" serviceName: "compute.googleapis.com" } receiveTimestamp: "2022-06-13T22:34:43.045973046Z" resource: { labels: { autoscaler_id: "1234567890123456789" autoscaler_name: "example-autoscaler" instance_group_manager_id: "1357908642148074125" instance_group_manager_name: "example-igm" location: "us-east1-d" project_id: "example-project" } type: "autoscaler" } severity: "INFO" timestamp: "2022-06-13T22:34:42.810216614Z" }
Le tableau suivant décrit les champs de l'entrée de journal :
Propriété Valeur autoscalingMode
Mode d'autoscaling au moment où l'entrée a été consignée. Quel que soit le mode, l'autoscaler calcule la taille recommandée, qui est représentée par newSize
dans le journal. Selon le mode d'autoscaling, l'autoscaler redimensionne le MIG comme suit :autoscalingReason
Détails sur le motif de l'autoscaling. Ce champ n'apparaît que pour les MIG zonaux. autoscalingReason.scalingLimit
Détails sur la fonctionnalité d'autoscaling ayant limité l'élément calculatedSize
, qui est la taille calculée par l'autoscaler en fonction du signal d'autoscaling. Les fonctionnalités d'autoscaling pouvant limiter le paramètrecalculatedSize
sont le nombre maximal ou minimal d'instances, les contrôles de scaling vertical ou la période de stabilisation. Si aucune limite ne s'applique àcalculatedSize
, le champscalingLimit
n'apparaît pas dans les journaux.autoscalingReason.scalingLimit.limitPolicy
Configuration de la fonctionnalité d'autoscaling ayant limité l'élément calculatedSize
. Le champlimitPolicy
n'est pas défini lorsque la stabilisation limite la valeurcalculatedSize
, car la stabilisation est une fonctionnalité d'autoscaling par défaut.autoscalingReason.scalingLimit.limitSize
Nombre de VM basées sur la fonctionnalité d'autoscaling ayant limité calculatedSize
.autoscalingReason.scalingLimit.name
Nom de la fonctionnalité d'autoscaling ayant limité l'élément calculatedSize
.autoscalingReason.scalingSignal
Informations détaillées sur le signal d'autoscaling qui est utilisé pour calculer le nombre de VM que le MIG doit contenir. Si la règle d'autoscaling comporte plusieurs signaux, l'autoscaler prend en compte le signal nécessitant le plus grand nombre de VM. autoscalingReason.scalingSignal.calculatedSize
Nombre de VM que le MIG doit avoir en fonction du signal d'autoscaling. Si scalingLimit
s'applique, l'autoscaler limitecalculatedSize
àscalingLimit.limitSize
.autoscalingReason.scalingSignal.calculationDetails
Détails utilisés pour déterminer la valeur calculatedSize
.autoscalingReason.scalingSignal.name
Nom du signal d'autoscaling sur lequel est basé le nombre de VM calculé par l'autoscaler, représenté par calculatedSize
dans le journal.autoscalingReason.scalingSignal.signalPolicy
Configuration du signal d'autoscaling en fonction duquel l'autoscaler a déterminé calculatedSize
.autoscalingReason.summary
Description de la raison de l'autoscaling. newSize
Taille recommandée actuelle du MIG. En fonction de autoscalingMode
, l'autoscaler redimensionne le MIG surnewSize
comme suit :oldSize
Taille recommandée précédente du MIG. Pour en savoir plus sur les autres champs de l'entrée de journal, consultez la section Format des entrées du journal d'audit.
Entrée du journal des modifications d'état
Lorsque l'état de l'autoscaler change, Compute Engine crée une entrée de journal capturant les anciens et les nouveaux messages d'état. Vous pouvez utiliser ces messages d'état pour déterminer pourquoi votre autoscaler ne se comporte pas comme prévu ou pour déboguer les problèmes que vous avez remarqués. Pour obtenir certains messages d'état courants, consultez la section Messages d'état fréquemment affichés.
Les champs suivants de
protoPayload
décrivent les anciens et nouveaux états :Voici un exemple d'entrée de journal décrivant une modification d'état. Dans cet exemple, vous remarquerez peut-être le nouveau message d'état indiquant des problèmes liés à votre configuration d'équilibrage de charge.
{ insertId: "ivho6kg4icqfio" logName: "projects/example-project/logs/cloudaudit.googleapis.com%2Fsystem_event" protoPayload: { metadata: { @type: "type.googleapis.com/autoscaler.AutoscalerStatusChange" newStatus: { details: "The autoscaler is configured to scale based on a load balancing signal but the instance group has not received any utilization data from the load balancer or the utilization is constantly 0. Check that the load balancing configuration is working" } oldStatus: { details: "OK" }, methodName: "compute.autoscalers.changeStatus" resourceName: "projects/example-project/zones/us-east1-b/autoscalers/example-autoscaler" serviceName: "compute.googleapis.com" } receiveTimestamp: "2022-06-08T03:54:12.332329320Z" resource: { labels: { autoscaler_id: "1234567890123456789" autoscaler_name: "example-autoscaler" instance_group_manager_id: "1357908642148074125" instance_group_manager_name: "example-igm" location: "us-east1-b" project_id: "example-project" } type: "autoscaler" } severity: "INFO" timestamp: "2022-06-08T03:54:10.675416812Z" } }
Pour en savoir plus sur les autres champs de l'entrée de journal, consultez la section Format des entrées du journal d'audit.
Étapes suivantes
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 2024/11/21 (UTC).
-