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

Ce document explique comment créer ou mettre à jour une instance de machine virtuelle afin d'utiliser si possible une configuration minimum de référence pour la plate-forme de processeur (minCpuPlatform).

Les centres de données Google proposent des machines hôtes Intel Xeon contenant les plates-formes de processeur Sandy Bridge, Ivy Bridge, Haswell, Broadwell et Skylake. Chaque plate-forme de processeur prend en charge des fonctionnalités incrémentielles telles que AVX-2, AVX-512, etc. 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 plates-formes de processeur. Diverses zones prennent en charge plusieurs plates-formes de processeur. Pour vos instances de machine virtuelle, vous pouvez sélectionner une plate-forme de processeur qui prend en charge les besoins spécifiques de vos charges de travail en utilisant une configuration minimum de plate-forme.

Pour en savoir plus sur les plates-formes de processeur disponibles pour chaque zone, consultez la documentation relative aux plates-formes de processeur et aux régions et zones.

Avant de commencer

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

Il est probable que vous n'avez pas besoin de sélectionner de configuration minimum de plate-forme de processeur pour vos machines virtuelles. Chaque zone Compute Engine comporte une plate-forme de processeur par défaut, répertoriée dans la documentation relative aux régions et aux zones. Une machine virtuelle créée sans configuration minimum de processeur se voit automatiquement attribuer la plate-forme de processeur par défaut.

Google vous recommande de sélectionner une configuration minimum de plate-forme de processeur uniquement lorsque celle-ci apporte des gains de performances significatifs pour votre charge de travail ou propose certaines fonctionnalités utilisées par votre code (par exemple, AVX2, AVX512 ou MPX). Lorsque vous sélectionnez une configuration minimum de plate-forme de processeur spécifique pour votre machine virtuelle, des contraintes supplémentaires affectent votre capacité à démarrer des machines virtuelles dans les zones dans lesquelles certaines plates-formes de processeur ne sont disponibles qu'en nombre limité.

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

Lorsque vous spécifiez une configuration minimum de plate-forme de processeur :

  1. Compute Engine utilise toujours la configuration minimum de plate-forme de processeur disponible.
  2. Si Compute Engine retire une plate-forme de processeur d'une zone, une fois que vous arrêtez puis redémarrez votre machine virtuelle, celle-ci peut continuer à s'exécuter sur une meilleure plate-forme de processeur disponible dans cette zone. Le retrait de plates-formes de processeur est une situation peu fréquente et vous recevez une notification au préalable.

Une fois que vous sélectionnez une configuration minimum de plate-forme de processeur pour une machine virtuelle :

  • Votre VM utilise cette plate-forme de processeur, sauf si vous l'arrêtez et que vous remplacez la plate-forme de processeur sélectionnée par une autre option.
  • Lors de la migration en direct, votre machine virtuelle conserve la même plate-forme de processeur sélectionnée.
  • Parfois, Google peut mettre à jour la plate-forme de processeur par défaut d'une zone. Pour en savoir plus, consultez Retrait ou mise à niveau d'une plate-forme de processeur par défaut.

Retrait ou mise à niveau d'une plate-forme de processeur par défaut

Google peut parfois retirer une plate-forme de processeur plus ancienne 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 plates-formes de processeur par des plates-formes plus récentes et met à jour la plate-forme de processeur par défaut vers la plate-forme la plus récente disponible dans cette zone.

Lorsqu'une nouvelle région ou zone est créée, elle utilise la plate-forme de processeur la plus récente du moment.

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

Les machines virtuelles n'utilisent jamais de plate-forme antérieure à la configuration minimum de plate-forme de processeur spécifiée. De même, le coût de la machine virtuelle ne change pas si Compute Engine fait passer votre machine virtuelle sur une plate-forme plus récente.

Caractéristiques

Limites

  • Les types de machines prédéfinis f1-small et g1-small sont des VM polyvalentes à cœur partagé pour lesquelles les options de sélection de plate-forme de processeur ne sont pas disponibles.

Disponibilité

La disponibilité des plates-formes de processeur spécifiques varie selon les zones, en fonction du matériel disponible dans chaque zone. Voici une liste de configurations minimum de plate-forme de processeur prises en charge et la syntaxe valide pour chaque plate-forme :

  • 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 (Skylake) : "Intel Skylake"

Seules certaines zones contiennent plusieurs plates-formes de processeur et sont disponibles pour une sélection de la configuration minimum de plate-forme de processeur. Pour obtenir une liste complète, voir la page Régions et zones.

Vous pouvez toujours afficher une liste de plates-formes prises en charge pour une zone spécifique à l'aide de la commande gcloud compute zones describe ou en envoyant une demande à l'API.

gcloud

Par exemple, la commande suivante répertorie les plates-formes de processeur pour la zone us-west1-a :

gcloud compute zones describe us-west1-a

availableCpuPlatforms:
- Intel Broadwell
- Intel Haswell
...

API

Dans l'API, envoyez une demande GET à la zone en question :

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

La réponse contient une liste de plates-formes de processeur de support pour cette zone. Exemple :

{
 "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 minimum de plate-forme de processeur pour une nouvelle machine virtuelle

Vous pouvez spécifier une configuration minimum 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. Sous la section de la section Type de machine, cliquez sur Personnaliser.
  5. Sélectionnez une option dans le menu déroulant Plate-forme du processeur.
  6. Terminez le processus de création d'instance.

gcloud

Pour créer une machine virtuelle avec une configuration minimum de plate-forme de processeur à l'aide de l'outil de ligne de commande gcloud, entrez le nouvel indicateur --min-cpu-platform. Spécifiez la plate-forme de processeur à l'aide d'un nom convivial (par exemple, Intel Broadwell ou Intel Haswell). Utilisez la section des zones disponibles pour déterminer quelles plates-formes sont disponibles pour chaque zone.

Par exemple, pour spécifier une configuration minimum de plate-forme de processeur Intel Haswell :

gcloud compute instances create example-instance --zone europe-west1-b --min-cpu-platform "Intel Haswell"

API

Dans l'API Compute Engine, incluez la propriété minCpuPlatform dans le corps de la demande. La valeur de minCpuPlatform doit être le nom convivial de la plate-forme (par exemple Intel Haswell, Intel Broadwell ou Intel Sandy Bridge).

Voici un exemple de corps de demande :

"name": "[INSTANCE_NAME]",
"machineType": "zones/[ZONE]/machineTypes/[MACHINE_TYPE]",
"minCpuPlatform": "Intel Haswell",
"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]"
   }
 }]

Définir une configuration minimum de plate-forme de processeur pour une machine virtuelle arrêtée

Vous pouvez définir une configuration minimum de plate-forme de processeur pour une instance existante. Au préalable, vous devez arrêter l'instance.

Après avoir arrêté l'instance, suivez les instructions ci-dessous pour définir une configuration minimum de plate-forme de processeur, puis veillez à redémarrer l'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. Sélectionnez l'instance arrêtée que vous souhaitez modifier.
  4. Cliquez sur Modifier pour modifier l'instance.
  5. Sous la section Type de machine, cliquez sur Personnaliser.
  6. Sélectionnez une option dans le menu déroulant Plate-forme du processeur.
  7. Enregistrez les modifications.
  8. Redémarrez l'instance.

gcloud

Utilisez la sous-commande update suivie de l'indicateur --min-cpu-platform. Spécifiez le nom convivial de la plate-forme (par exemple, Intel Haswell, Intel Broadwell ou Intel Sandy Bridge). Exemple :

gcloud compute instances update [INSTANCE_NAME] --min-cpu-platform "Intel Haswell"

API

Pour définir la plate-forme de processeur minimale dans l'API, faites une demande POST à la méthode setMinCpuPlatform et définissez la propriété minCpuPlatform dans le corps de la demande. La valeur de la propriété est le nom convivial de la plate-forme de processeur (par exemple, Intel Haswell, Intel Broadwell et Intel Sandy Bridge). Exemple :

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

{
  "minCpuPlatform": "Intel Haswell"
}

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ées, vous pouvez spécifier une configuration minimum de plate-forme de processeur pour les instances de machine virtuelle au sein d'un groupe d'instances gérées.

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

Console

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

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

  2. Si vous y êtes invité(e), sélectionnez votre projet et cliquez sur Continuer.
  3. Cliquez sur Créer un modèle d'instance.
  4. Sous la section Type de machine, cliquez sur Personnaliser.
  5. Sélectionnez une option dans le menu déroulant Plate-forme du processeur.
  6. Terminez le processus de création de modèles d'instance.

gcloud

À l'aide de l'outil gcloud, indiquez l'indicateur --min-cpu-platform lors de la création d'un modèle d'instance. Exemple :

gcloud compute instance-templates create example-template \
    --min-cpu-platform "Intel Haswell"

API

Dans l'API, ajoutez l'indicateur minCpuPlatform à votre demande pour créer un modèle d'instance dans l'API.

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

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

Étapes suivantes

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Documentation Compute Engine