Appliquer des recommandations de types de machines aux instances de VM

Compute Engine propose des recommandations de type de machine pour vous aider à optimiser l'utilisation des ressources de vos instances de machine virtuelle (VM). Ces recommandations sont générées automatiquement en fonction des métriques système collectées par le service Cloud Monitoring au cours des huit jours précédant l'émission des recommandations. Aidez-vous de ces recommandations pour redimensionner le type de machine de votre instance et utiliser plus efficacement ses ressources. Cette fonctionnalité est également appelée Recommandations de dimensionnement.

Pour en savoir plus sur les types de machines disponibles pour les instances de VM, consultez la documentation sur les types de machines.

Avant de commencer

Tarifs

Les recommandations de types de machines sont disponibles gratuitement. Si vous appliquez une recommandation visant à redimensionner le type de machine de votre instance, vous payez pour le type de machine choisi.

Limitations et cas d'utilisation

Les recommandations de types de machines ne sont pas disponibles actuellement dans les cas suivants :

  • Instances de VM créées à l'aide de l'environnement flexible App Engine, de Dataflow ou de Google Kubernetes Engine
  • Instances de VM dotées d'espaces disques éphémères, de GPU ou de TPU
  • Instances de VM des séries de machines M1 et M2

L'algorithme de recommandation convient pour les charges de travail qui suivent des schémas hebdomadaires, augmentent ou diminuent au fil des semaines, sous-utilisent leurs ressources de manière continue ou sont constamment limitées par des ressources insuffisantes. Dans de tels cas, huit jours de données historiques suffisent à prévoir comment une modification de la taille de la machine peut améliorer l'utilisation des ressources.

L'algorithme de recommandation du type de machine est moins adapté aux charges de travail suivantes :

  • Les charges de travail présentant peu fréquemment des pics (par exemple, des pics mensuels), car huit jours de données ne suffisent pas pour capturer ou prédire les fluctuations d'utilisation du processeur.
  • Les charges de travail qui présentent de très brefs pics d'utilisation du processeur, car les recommandations sont basées sur l'utilisation moyenne du processeur à intervalles de 60 secondes. Il est possible que les recommandations ne soient pas générées assez rapidement pour capturer des pics d'une plus courte durée. Pour en savoir plus, consultez la section Fonctionnement des recommandations de types de machines.

Pour les charges de travail où le coût est plus important que les performances, comme les charges de travail par lots, vous pouvez ignorer les recommandations d'augmentation de la taille.

Dans de rares cas, un message d'erreur peut s'afficher lors de l'application d'une recommandation. Par exemple, un type de machine recommandé peut être trop petit pour le nombre de disques connectés, ne pas répondre aux besoins en ressources des images ou des licences, ou être indisponible dans une zone.

Fonctionnement des recommandations de types de machines

Compute Engine surveille l'utilisation du processeur et de la mémoire des VM en cours d'exécution. Il émet des recommandations basées sur les données collectées au cours des huit derniers jours. Compute Engine émet des recommandations telles que les suivantes :

  • Si la plupart du temps votre instance a peu utilisé les processeurs, Compute Engine recommandera un type de machine comportant moins de processeurs virtuels.

  • Si la plupart du temps votre instance a beaucoup utilisé les processeurs, Compute Engine recommandera un type de machine comportant davantage de processeurs virtuels.

  • Si votre instance n'a pas utilisé une grande partie de sa mémoire, Compute Engine recommandera un type de machine avec moins de mémoire.

  • Si la plupart du temps votre instance a utilisé intensivement une grande partie de sa mémoire, Compute Engine recommandera un type de machine comportant davantage de mémoire.

Compute Engine peut recommander d'utiliser un type de machine standard ou personnalisé. Sachez qu'il existe des limitations relatives à la quantité de mémoire et de processeurs virtuels disponibles sur une machine. Par exemple, l'augmentation d'une ressource peut nécessiter l'augmentation d'une autre ressource au même moment pour que les spécifications d'un type de machine valide soient respectées. En outre, Compute Engine ne recommande que les types de machines disponibles dans la zone où l'instance est en cours d'exécution.

Pour en savoir plus, consultez les spécifications relatives au type de machine personnalisé.

Pour les estimations de différence de coût, le coût d'une instance est basé sur l'utilisation au cours de la semaine précédente (avant la remise automatique proportionnelle à une utilisation soutenue) et est extrapolé à 30 jours. Cette valeur est ensuite comparée au coût mensuel du type de machine recommandé (avant la remise automatique proportionnelle à une utilisation soutenue). Pour plus de détails, consultez la documentation sur les tarifs.

Afficher les recommandations de types de machines

Compute Engine émet des recommandations via Google Cloud Console. Les recommandations sont également disponibles via l'outil de recommandation à l'aide de gcloud CLI ou de l'API.

Console

  1. Dans Google Cloud Console, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

  2. Dans la colonne Recommendation (Recommandation), examinez les recommandations relatives à chaque instance. Vous pouvez également trier la colonne en fonction du montant des économies estimées. Si aucune recommandation ne s'affiche à côté des instances, cela signifie que Compute Engine n'en a pas à proposer.

    Colonne de recommandations.

gcloud

Exécutez la commande gcloud recommender recommendations list, puis spécifiez l'outil de recommandation de dimensionnement d'instance de VM.

gcloud recommender recommendations list \
    --recommender=google.compute.instance.MachineTypeRecommender \
    --project=PROJECT_ID \
    --location=ZONE \
    --format=[config | csv | default | diff | flattened | get | json | list | object | table | text | value | yaml]

Remplacez les éléments suivants :

  • PROJECT_ID : par l'ID du projet.
  • ZONE : par la zone contenant des instances pour lesquelles vous souhaitez répertorier les recommandations.
  • FORMAT : format de sortie souhaité
    • csv, diff, get, table et value requièrent des projections non vides.

Le résultat de la commande gcloud recommender recommendations list inclut les champs suivants :

  • name : nom de la recommandation
  • description : explication de la recommandation, dans un format lisible
  • operationGroups : groupes d'opérations que vous pouvez effectuer dans un ordre sérialisé pour appliquer la recommandation

Pour en savoir plus, consultez la documentation sur le service de recommandation.

API

Utilisez l'API Recommender avec l'ID de l'outil de recommandation de dimensionnement d'instance de VM.

Si vous ne maîtrisez pas encore les conditions préalables d'authentification pour appeler les API Google Cloud, consultez la page Présentation de l'authentification.

L'exemple suivant de script bash utilise le flux d'authentification de l'utilisateur final avec des identifiants client OAuth. Le script utilise l'outil de ligne de commande Google oauth2l pour obtenir un jeton d'accès OAuth 2.0, puis envoie une requête curl à l'aide du jeton.

PROJECT_ID=my-project
LOCATION=us-central1-c
RECOMMENDER_ID=google.compute.instanceGroupManager.MachineTypeRecommender
OAUTH_JSON=~/client_secrets.json  # credentials for service account
OAUTH_HEADER="$(oauth2l header --json $OAUTH_JSON cloud-platform)"
curl -H "$OAUTH_HEADER" https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/recommenders/$RECOMMENDER_ID/recommendations

La réponse inclut les champs suivants :

  • name : nom de la recommandation
  • description : explication de la recommandation, dans un format lisible
  • operationGroups : groupes d'opérations que vous pouvez effectuer dans un ordre sérialisé pour appliquer la recommandation

Pour en savoir plus, consultez la documentation sur le service de recommandation.

Lorsque vous créez une instance, les recommandations concernant cette instance sont visibles 24 heures après sa création. Si vous modifiez le type de machine d'une instance, Compute Engine propose d'autres recommandations dans les 24 heures suivant la modification.

Ensuite, les recommandations sur l'instance de VM sont actualisées à intervalles réguliers tout au long de la journée.

Modifier les types de machines en fonction des recommandations

Si vous décidez d'appliquer les recommandations émises par Compute Engine, vous pouvez modifier le type de machine de l'instance directement à partir de l'écran des recommandations, ou effectuer manuellement les opérations renvoyées lors de l'affichage des recommandations de types de machines.

Console

  1. Dans Google Cloud Console, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

    Si une recommandation est disponible pour une instance, elle s'affiche dans la colonne Recommandation.

  2. Cliquez sur le texte de la recommandation de l'instance à redimensionner.

    Colonne de recommandations.

  3. Une fenêtre pop-up affiche plus de détails et le bouton Appliquer qui permet d'appliquer la recommandation à l'instance. Lorsque vous cliquez sur ce bouton, Compute Engine arrête l'instance, modifie son type de machine et la redémarre.

  4. Vous pouvez également cliquer sur le lien Personnaliser pour personnaliser l'instance selon vos préférences.

    Fenêtre contextuelle des détails relatifs aux recommandations

  5. Cliquez sur le bouton Apply (Appliquer) pour appliquer les modifications.

gcloud

Pour en savoir plus, consultez la section Modifier un type de machine.

API

Pour en savoir plus, consultez la section Modifier un type de machine.

Ignorer et restaurer des recommandations

Lorsque vous avez terminé d'utiliser une recommandation, vous pouvez l'ignorer depuis la console. Dans la console, cette action supprime une recommandation de l'estimation des économies totales et minimise son apparence afin qu'elle apparaisse grisée.

L'application d'une recommandation via la console n'a aucune incidence sur la liste des recommandations renvoyées par l'API Recommender ni sur leur état. Pour gérer l'état des recommandations renvoyées par l'API Recommender, consultez la page Utiliser l'API.

Pour ignorer une seule recommandation depuis la console, procédez comme suit :

  1. Dans Google Cloud Console, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

    Si une recommandation est disponible pour une instance, elle s'affiche dans la colonne Recommandation.

  2. Cliquez sur le texte de la recommandation que vous souhaitez ignorer.

    Colonne de recommandations.

  3. Une fenêtre pop-up affiche plus de détails et le bouton Ignorer la recommandation.

    Fenêtre pop-up des détails associés aux recommandations.

  4. Cliquez sur Ignorer la recommandation.

Pour ignorer toutes les recommandations de la console, procédez comme suit :

  1. Dans Google Cloud Console, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

  2. Cliquez sur le bouton Tout ignorer.

Ignorer toutes les recommandations.

Pour restaurer une recommandation :

  1. Dans Google Cloud Console, sur la page Instances de VM, cliquez sur le texte de recommandation grisé à restaurer.

    Fenêtre pop-up des détails associés aux recommandations.

  2. Une fenêtre contextuelle affiche plus de détails et le bouton Restaurer la recommandation.

    Ignorer les recommandations.

  3. Cliquez sur Restaurer la recommandation.

Utiliser l'agent de surveillance pour des recommandations plus précises

Cloud Monitoring propose un agent de surveillance qui collecte des métriques de disque, de processeur, de réseau et de processus supplémentaires à partir de vos instances de VM. Installez l'agent de surveillance sur les instances de VM pour qu'il puisse accéder aux ressources système et aux services d'application afin de collecter ces données.

Si l'agent de surveillance est installé et s'exécute sur une instance de VM, les métriques de processeur et de mémoire qu'il collecte sont automatiquement utilisées afin de calculer les recommandations de types de machines. Les métriques de l'agent permettent de mieux comprendre l'utilisation des ressources de l'instance par rapport aux métriques par défaut de Compute Engine. De cette façon, le moteur de recommandations peut mieux estimer les besoins en ressources et émettre des recommandations plus précises.

Pour installer l'agent, consultez la page Installer l'agent de surveillance.

Étape suivante