Spécifier une configuration minimum de la plate-forme du processeur pour les instances de VM


Cette page explique comment créer ou mettre à jour une instance de machine virtuelle (VM) afin d'utiliser une plateforme de processeur minimale au lieu de la plateforme par défaut.

Spécifier une plateforme de processeur minimale est utile si votre charge de travail nécessite les gains de performances offerts par cette plateforme spécifique. Toutefois, la spécification d'une configuration minimale de plateforme de processeur peut limiter les zones dans lesquelles vous pouvez créer vos VM.

Les centres de données Google proposent deux plateformes de processeur :

  • Plateforme composée de machines hôtes Intel Xeon contenant des processeurs Sandy Bridge, Ivy Bridge, Haswell, Broadwell, Skylake ou Cascade Lake
  • Plate-forme contenant des processeurs AMD EPYC Rome

Chaque plate-forme de processeur prend en charge des fonctionnalités incrémentielles telles que les extensions vectorielles avancées (par exemple, AVX2 et AVX-512). Certaines fonctionnalités fondamentales liées aux systèmes, telles que la vitesse d'horloge et le temps de recherche d'accès à la mémoire, peuvent varier selon les plateformes de processeur.

Avant de commencer

Quand sélectionner une configuration minimum de plate-forme de processeur

Vous n'aurez probablement pas à sélectionner de plateforme de processeur minimale. Chaque zone Compute Engine possède une plateforme de processeur par défaut que Google retire ou met à jour de temps à autre. Si vous créez une VM sans spécification minimale de processeur, elle utilisera la plateforme de processeur par défaut.

Google vous recommande de sélectionner une configuration minimum de plateforme de processeur uniquement si celle-ci offre des gains de performances significatifs pour votre charge de travail ou si elle offre des fonctionnalités que vous utilisez dans votre code telles que AVX2, AVX-512 ou MPX. Le fait de sélectionner une configuration minimale de plateforme de processeur pour votre VM implique des contraintes qui affectent votre capacité à démarrer des VM dans les zones où certaines plateformes de processeur ne sont disponibles qu'en nombre limité.

Comment fonctionne la sélection d'une configuration minimale de plate-forme de processeur ?

Lorsque vous spécifiez une configuration minimale de plateforme de processeur, tenez compte des points suivants :

  • Compute Engine utilise toujours la configuration minimum de plate-forme de processeur disponible.
  • Si Google supprime ou met à jour une plateforme de processeur dans une zone, votre VM peut continuer de s'exécuter sur la plateforme de processeur plus récente disponible dans cette zone si vous arrêtez et redémarrez la VM. La suppression d'une plateforme de processeur est un événement rare. Google vous informe toujours avant de supprimer ou de mettre à jour une plateforme de processeur.

La sélection d'une configuration minimale de plate-forme de processeur pour une VM entraîne les effets suivants :

  • Votre VM utilise cette plateforme de processeur, sauf si vous l'arrêtez et que vous modifiez la plateforme de processeur.
  • Lors d'une migration en direct, votre VM conserve la plateforme de processeur sélectionnée.

Retirer ou mettre à niveau une plate-forme de processeur par défaut

Google peut parfois retirer une plate-forme de processeur ou mettre à jour la plate-forme de processeur par défaut dans une zone pour les raisons suivantes :

  • La capacité de la zone augmente au fil du temps et passe de manière proactive à une plate-forme de processeur plus récente lorsque celle-ci devient disponible.
  • Tous les 3 à 5 ans, Google remplace les anciennes plateformes de processeur par des plateformes plus récentes. Nous mettons également à jour la plateforme de processeur par défaut vers la plateforme la plus récente disponible dans la zone.

Lors de la création d'une région ou d'une zone, la plateforme de processeur la plus récente est utilisée.

Lorsqu'une zone est supprimée ou que la plate-forme de processeur par défaut est modifiée pour une zone, Google informe les clients concernés selon un calendrier détaillé et fournit des instructions spécifiques pour la transition vers la nouvelle plateforme.

Les VM n'utilisent jamais une plateforme plus ancienne que la plateforme de processeur minimum spécifiée. Si Compute Engine fait passer votre VM vers une plateforme plus récente, le coût de la VM ne change pas.

Limites

Disponibilité des plateformes de processeur

La disponibilité des plateformes de processeur varie selon les zones et dépend du matériel disponible dans chaque zone. Voici la liste des configurations minimales de plateforme de processeur acceptées et la syntaxe valide pour chaque plateforme :

  • Processeurs Intel Xeon E5 (Sandy Bridge) : "Intel Sandy Bridge"
  • Processeurs Intel Xeon E5 v2 (Ivy Bridge) : "Intel Ivy Bridge"
  • Processeurs Intel Xeon E5 v3 (Haswell) : "Intel Haswell"
  • Processeurs Intel Xeon E5 v4 (Broadwell) : "Intel Broadwell"
  • Processeurs Intel Xeon (Cascade Lake) : "Intel Cascade Lake"
  • Processeurs Intel Xeon (Skylake) : "Intel Skylake"

Réfléchissez aux éléments suivants :

  • Seules certaines zones contiennent plusieurs plateformes de processeur et permettent de sélectionner une configuration minimale de plateforme de processeur. Vous pouvez afficher la liste des plateformes compatibles pour une zone spécifique à l'aide de la commande gcloud compute zones describe ou en envoyant une requête à l'API.
  • Si vous utilisez des nœuds à locataire unique, chaque nœud utilise la plateforme de processeur correspondant au type de nœud que vous avez défini dans le modèle de nœud. Par conséquent, vous ne pouvez pas spécifier de plateforme de processeur minimale pour les VM utilisant des nœuds à locataire unique.

gcloud

  • Pour afficher les plateformes de processeur disponibles dans votre zone, utilisez la commande gcloud compute zones describe :

    gcloud compute zones describe ZONE
    

    Remplacez ZONE par le nom de la zone pour vérifier les plateformes de processeur disponibles (par exemple, us-west1-a).

    La sortie suivante de cette commande répertorie les plateformes de processeur de la zone us-west1-a :

    gcloud compute zones describe us-west1-a
    availableCpuPlatforms:
    - Intel Skylake
    - Intel Broadwell
    ...
    

API

  • Dans l'API Compute Engine, envoyez une requête GET à la zone que vous envisagez :

    GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/ZONE
    

    Remplacez ZONE par le nom de la zone pour vérifier les plateformes de processeur disponibles.

    La sortie suivante de cette commande répertorie les plateformes de processeur compatibles pour une zone :

    {
      "kind": "compute#zone",
      "id": "2210",
      "creationTimestamp": "2016-06-10T09:30:55.189-07:00",
      "name": "us-west1-a",
      "description": "us-west1-a",
      "status": "UP",
      "region": "https://www.googleapis.com/compute/v1/projects/myproject/regions/us-west1",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-west1-a",
      "availableCpuPlatforms": [
       "Intel Broadwell",
       "Intel Haswell"
      ]
     }

Sélectionner une configuration minimale de plate-forme de processeur pour une nouvelle VM

Vous pouvez spécifier une configuration minimale de plate-forme de processeur lors de la création d'une instance.

Console

  1. Accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Si vous y êtes invité(e), sélectionnez votre projet et cliquez sur Continuer.

  3. Cliquez sur le bouton Créer une instance.

  4. Dans la section Configuration de la machine, cliquez sur Plateforme du processeur et GPU.

  5. Dans le menu déroulant Plateforme du processeur, sélectionnez une option.

  6. Terminez le processus de création d'instance.

gcloud

  • Pour créer une VM utilisant une plateforme de processeur minimale, utilisez la commande gcloud compute instances create et spécifiez l'option --min-cpu-platform :

    gcloud compute instances create INSTANCE \
        --zone=ZONE \
        --min-cpu-platform="PLATFORM"

    Remplacez les éléments suivants :

    • INSTANCE : nom de l'instance que vous souhaitez créer.
    • ZONE : nom de la zone dans laquelle vous souhaitez créer votre instance, par exemple europe-west1-b.
    • PLATFORM : nom convivial de la plateforme de processeur minimale que l'instance doit utiliser (par exemple, Intel Sandy Bridge).

      Si vous souhaitez effacer la spécification minimale de plateforme de processeur, remplacez PLATFORM par AUTOMATIC.

      Utilisez la section des zones disponibles pour déterminer quelles plateformes sont disponibles pour chaque zone.

API

  • Dans l'API Compute Engine, incluez la propriété minCpuPlatform dans le corps de la requête.

    Voici un exemple de corps de demande :

    "name": "INSTANCE",
    "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
    "minCpuPlatform": "PLATFORM",
    "networkInterfaces": [{
      "accessConfigs": [{
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT"
       }],
      "network": "global/networks/default"
    }],
    "disks": [{
       "autoDelete": "true",
       "boot": "true",
       "type": "PERSISTENT",
       "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
       }
     }]

    Remplacez les éléments suivants :

    • INSTANCE : nom de la nouvelle instance
    • ZONE : nom de la zone dans laquelle vous souhaitez créer votre VM, par exemple europe-west1-b.
    • MACHINE_TYPE : type de machine de la nouvelle VM.
    • PLATFORM : nom convivial de la plateforme de processeur minimale que l'instance doit utiliser (par exemple, Intel Ivy Bridge).

      Si vous souhaitez effacer la spécification minimale de plateforme de processeur, remplacez PLATFORM par AUTOMATIC.

    • IMAGE_PROJECT : projet d'image de la famille d'images.

    • IMAGE_FAMILY : famille d'images de l'image à utiliser pour créer la VM.

Définir une plateforme de processeur minimale pour une VM existante

Vous pouvez définir une configuration minimale de plateforme de processeur pour une instance existante. Vous devez d'abord arrêter l'instance, puis définir la configuration minimale de la plateforme de processeur.

Console

  1. Accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Si vous y êtes invité(e), sélectionnez votre projet et cliquez sur Continuer.

  3. Sélectionnez les VM que vous souhaitez modifier.

  4. Cliquez sur Stop (Arrêter).

  5. Pour modifier l'instance, cliquez sur Modifier.

  6. Dans la section Configuration de la machine, cliquez sur Plateforme du processeur et GPU.

  7. Dans le menu déroulant Plateforme du processeur, sélectionnez une option.

  8. Enregistrez les modifications.

  9. Sélectionnez la VM que vous avez modifiée.

  10. Cliquez sur Démarrer/Réactiver.

gcloud

  1. Pour arrêter une VM, utilisez la commande gcloud compute instances stop :

    gcloud compute instances stop INSTANCE
    

    Remplacez INSTANCE par le nom de l'instance pour laquelle vous souhaitez spécifier une plateforme de processeur minimale.

  2. Pour spécifier la configuration minimale de plateforme de processeur, utilisez la commande gcloud compute instances update et spécifiez l'option --min-cpu-platform :

    gcloud compute instances update INSTANCE \
        --min-cpu-platform="PLATFORM"

    Remplacez PLATFORM par le nom convivial de la plateforme de processeur minimale que vous souhaitez que l'instance utilise, par exemple Intel Cascade Lake.

  3. Pour démarrer la VM mise à jour, utilisez la commande gcloud compute instances start :

    gcloud compute instances start INSTANCE
    

API

  1. Pour arrêter une VM, envoyez une requête POST à l'aide de la méthode instances.stop :

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/stop
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet
    • ZONE : zone où se trouve votre VM.
    • INSTANCE : nom de l'instance pour laquelle vous souhaitez spécifier une configuration minimale de plateforme de processeur
  2. Pour définir la plateforme de processeur minimale requise via l'API, envoyez une requête POST à la méthode setMinCpuPlatform et définissez la propriété minCpuPlatform dans l'objet de la requête.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/setMinCpuPlatform
    {
      "minCpuPlatform": PLATFORM
    }
    

    Remplacez PLATFORM par le nom convivial de la plateforme de processeur minimale que vous souhaitez que l'instance utilise, par exemple Intel Skylake.

  3. Pour redémarrer la VM, créez une requête POST à l'aide de la méthode instances.start :

    POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/start
    

Supprimer un paramètre minimal de plateforme de processeur

Vous pouvez mettre à jour une instance pour utiliser la plateforme de processeur par défaut au lieu de la plateforme de processeur minimale. Si l'instance est en cours d'exécution, vous devez l'arrêter avant d'effectuer des modifications.

Console

  1. Accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Si vous y êtes invité(e), sélectionnez votre projet et cliquez sur Continuer.

  3. Sélectionnez les VM que vous souhaitez modifier.

  4. Cliquez sur Stop (Arrêter).

  5. Pour modifier l'instance, cliquez sur Modifier.

  6. Dans la section Configuration de la machine, cliquez sur Plateforme du processeur et GPU.

  7. Définissez l'option Plateforme du processeur sur Automatique.

  8. Sélectionnez la VM que vous avez modifiée.

  9. Cliquez sur Démarrer/Réactiver.

gcloud

  1. Pour arrêter une VM, utilisez la commande gcloud compute instances stop :

    gcloud compute instances stop INSTANCE
    

    Remplacez INSTANCE par le nom de l'instance à modifier.

  2. Pour réinitialiser la configuration minimale de plateforme de processeur, utilisez la commande gcloud compute instances update et définissez l'option --min-cpu-platform sur AUTOMATIC :

    gcloud compute instances update INSTANCE \
        --min-cpu-platform="AUTOMATIC"
    
  3. Pour démarrer la VM mise à jour, utilisez la commande gcloud compute instances start :

    gcloud compute instances start INSTANCE
    

API

  1. Pour arrêter une VM, envoyez une requête POST à l'aide de la méthode instances.stop :

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/stop
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet
    • ZONE : zone où se trouve votre VM.
    • INSTANCE : nom de l'instance que vous souhaitez modifier.
  2. Pour réinitialiser la plateforme de processeur minimale, envoyez une requête POST à la méthode setMinCpuPlatform. Dans le corps de la requête, définissez la valeur de la propriété minCpuPlatform sur AUTOMATIC.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/setMinCpuPlatform
    {
      "minCpuPlatform": AUTOMATIC
    }
    
  3. Pour démarrer la VM mise à jour, utilisez la commande gcloud compute instances start :

    gcloud compute instances start INSTANCE
    

Spécifier une configuration minimum de plate-forme de processeur dans des modèles d'instance

Si vous utilisez des groupes d'instances gérés, vous pouvez spécifier une configuration minimale de plate-forme de processeur pour les instances de VM au sein d'un groupe d'instances géré.

Pour spécifier configuration minimale de plate-forme de processeur, créez un modèle d'instance incluant la propriété minCpuPlatform.

Console

  1. Accédez à la page Modèles d'instance.

    Accéder à la page Modèles d'instances

  2. Si vous y êtes invité(e), sélectionnez votre projet et cliquez sur Continuer.

  3. Cliquez sur Create instance template (Créer un modèle d'instance).

  4. Dans la section Configuration de la machine, cliquez sur Plateforme du processeur et GPU.

  5. Dans le menu déroulant Plateforme du processeur, sélectionnez une option.

  6. Terminez le processus de création de modèles d'instance.

gcloud

  • Lorsque vous créez un modèle d'instance à l'aide de la commande gcloud compute instance-templates create, spécifiez l'option --min-cpu-platform :

    gcloud compute instance-templates create TEMPLATE_NAME \
        --min-cpu-platform="PLATFORM"

    Remplacez les éléments suivants :

    • TEMPLATE_NAME : nom du modèle d'instance.
    • PLATFORM : nom convivial de la plateforme de processeur minimale que l'instance doit utiliser, par exemple Intel Skylake.

API

  • Dans l'API, ajoutez minCpuPlatform dans votre requête pour créer un modèle d'instance dans l'API Compute Engine.

    Par exemple, le modèle d'instance suivant contient les champs obligatoires minimum requis pour créer un modèle incluant la propriété minCpuPlatform :

    {
    "name": "example-template",
    "properties": {
      "machineType": "zones/us-central1-a/machineTypes/n1-standard-2",
      "minCpuPlatform": "Intel Haswell",
      "networkInterfaces": [
        {
          "network": "global/networks/default",
          "accessConfigs":
          [
            {
              "type": "PERSISTENT",
              "boot": true,
              "mode": "READ_WRITE",
              "initializeParams":
              {
                "sourceImage": "projects/debian-cloud/global/images/family/debian-10"
              }
            }
          ]
        }
      ],
      "disks":
      [
        {
          "type": "PERSISTENT",
          "boot": true,
          "mode": "READ_WRITE",
          "initializeParams":
          {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-10"
          }
        }
      ]
      }
    }

Étape suivante