Mindest-CPU-Plattform für VM-Instanzen angeben


In diesem Dokument wird erläutert, wie Sie eine VM-Instanz so erstellen oder aktualisieren, dass sie eine Mindest-CPU-Plattform (minCpuPlatform) verwendet, wann immer diese verfügbar ist.

Die Rechenzentren von Google bieten Intel Xeon-basierte Hostmaschinen mit den CPU-Plattformen Sandy Bridge, Ivy Bridge, Haswell, Broadwell oder Skylake sowie AMD EPYC Rome-Prozessoren. Jede CPU-Plattform unterstützt Erweiterungsfunktionen wie AVX2, AVX-512 und so weiter. Einige grundlegende systembezogene Merkmale wie die Taktgeschwindigkeit und die Speicherzugriffszeit können von CPU-Plattform zu CPU-Plattform variieren. Verschiedene Zonen unterstützen mehrere CPU-Plattformen. Sie können für Ihre VM-Instanzen eine Mindestplattform auswählen, die die spezifischen Anforderungen Ihrer Arbeitslasten unterstützt.

Weitere Informationen zu den für jede Zone verfügbaren CPU-Plattformen finden Sie unter CPU-Plattformen und Regionen und Zonen.

Hinweis

Gründe für die Auswahl einer Mindest-CPU-Plattform

Höchstwahrscheinlich müssen Sie keine Mindest-CPU-Plattformen für Ihre VMs auswählen. Jede Compute Engine-Zone hat eine Standard-CPU-Plattform, die Google immer wieder anzeigt oder aktualisiert. Jede neu erstellte VM ohne eine Mindest-CPU-Spezifikation erhält automatisch die Standard-CPU-Plattform.

Google empfiehlt, dass Sie nur dann eine Mindest-CPU-Plattform angeben, wenn dadurch die Leistung Ihrer Arbeitslast erheblich gesteigert wird oder bestimmte Funktionen wie AVX2, AVX-512 oder MPX geboten werden, die Ihr Code verwendet. Wenn Sie eine spezifische Mindest-CPU-Plattform für Ihre VMs auswählen, ergeben sich zusätzliche Einschränkungen bezüglich der Möglichkeit, VMs in bestimmten Zonen zu starten, in denen einige CPU-Plattformen nur begrenzt verfügbar sind.

Vorgehensweise bei Auswahl einer Mindest-CPU-Plattform

Wenn Sie eine Mindest-CPU-Plattform festlegen, geschieht Folgendes:

  • Compute Engine verwendet immer die Mindest-CPU-Plattform, sofern verfügbar.

  • Wenn Compute Engine eine CPU-Plattform in einer Zone einstellt, kann Ihre VM auf einer besseren, in dieser Zone verfügbaren CPU-Plattform ausgeführt werden, nachdem Sie die VM beendet und neu gestartet haben. Es kommt sehr selten vor, dass CPU-Plattformen nicht mehr unterstützt werden. Gegebenenfalls werden Sie rechtzeitig darüber informiert.

Wenn Sie eine Mindest-CPU-Plattform für eine VM ausgewählt haben, geschieht Folgendes:

  • Diese CPU-Plattform wird von Ihrer VM verwendet, es sei denn, Sie beenden die VM und ändern die CPU-Plattform.
  • Bei einer Livemigration behält Ihre VM die ausgewählte CPU-Plattform bei.

Standard-CPU-Plattform einstellen oder aktualisieren

Gelegentlich wird Google eine CPU-Plattform einstellen oder die Standard-CPU-Plattform in einer bestimmten Zone aktualisieren. Dafür gibt es folgende Gründe:

  • Die Kapazität einer Zone wächst mit der Zeit und die Zone wird proaktiv auf eine neuere CPU-Plattform umgestellt, sobald diese verfügbar ist.
  • Alle drei bis fünf Jahre ersetzt Google ältere CPU-Plattformen durch neuere und aktualisiert die Standard-CPU-Plattform auf die jeweils nächste, neuere CPU-Plattform, die in der jeweiligen Zone verfügbar ist.

Jedes Mal, wenn eine neue Region oder Zone erstellt wird, kommt die zu dieser Zeit neueste CPU-Plattform zum Einsatz.

Wenn eine Zone eingestellt wird oder sich die Standard-CPU-Plattform für eine Zone ändert, informiert Google die betroffenen Kunden im Voraus und stellt einen detaillierten Zeitplan und spezifische Anleitungen für den Übergang zur neueren Plattform zur Verfügung.

VMs verwenden niemals eine Plattform, die älter als die von Ihnen angegebene Mindest-CPU-Plattform ist. Außerdem ändert sich nichts an den Kosten für Ihre VM, wenn Compute Engine diese auf eine neuere Plattform umgestellt.

Spezifikationen

Beschränkungen

Die vordefinierten Maschinentypen e2-micro, e2-small, e2-medium, f1-micro und g1-small sind allgemeine VMs mit gemeinsam genutztem Kern. Die Auswahloptionen für die CPU-Plattform sind nicht verfügbar, wenn Sie einen dieser Maschinentypen auswählen.

Verfügbarkeit

Die Verfügbarkeit bestimmter CPU-Plattformen variiert zonenübergreifend und basiert auf der Hardware, die in den einzelnen Zonen verfügbar ist. Die folgende Liste enthält die unterstützten Mindest-CPU-Plattformen und die für jede Plattform gültige Syntax:

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

Mehrfache CPU-Plattformen und die Auswahl einer Mindest-CPU-Plattform sind nur in bestimmten Zonen verfügbar. Wenn Sie Knoten für einzelne Mandanten verwenden, verwendet jeder Knoten die CPU-Plattform, die dem in der Knotenvorlage definierten Knotentyp entspricht. Daher können Sie keine Mindest-CPU-Plattform für VMs angeben, die Knoten für einzelne Mandanten verwenden.

Mit dem Befehl gcloud compute zones describe oder durch eine Anfrage an die API können Sie eine Liste der unterstützten Plattformen für eine bestimmte Zone aufrufen.

gcloud

So rufen Sie die CPU-Plattformen in Ihrer Zone ab:

gcloud compute zones describe ZONE

Die Ausgabe dieses Befehls listet beispielsweise die CPU-Plattformen für die Zone us-west1-a auf:

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

API

Senden Sie in der API eine GET-Anfrage an die betreffende Zone:

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

Die Antwort enthält eine Liste der in dieser Zone unterstützten CPU-Plattformen. Beispiel:

{
  "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"
  ]
 }

Mindest-CPU-Plattform für eine neue VM auswählen

Wenn Sie eine Instanz erstellen, können Sie eine Mindest-CPU-Plattform festlegen.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite VM-Instanzen.

    Zu „VM-Instanzen“

  2. Wenn Sie dazu aufgefordert werden, wählen Sie Ihr Projekt aus und klicken auf Weiter.

  3. Klicken Sie auf Instanz erstellen.

  4. Klicken Sie im Abschnitt Maschinenkonfiguration auf CPU-Plattform und GPU.

  5. Wählen Sie aus dem Drop-down-Menü CPU-Plattform eine Option aus.

  6. Fahren Sie nun mit der Erstellung der Instanz fort.

gcloud

Geben Sie das Flag --min-cpu-platform an, um eine neue VM mit einer Mindest-CPU-Plattform zu erstellen. Geben Sie bei der Angabe der CPU-Plattform den Anzeigenamen an, z. B. Intel Broadwell oder Intel Haswell. Im Abschnitt über verfügbare Zonen können Sie nachsehen, welche Plattformen in den einzelnen Zonen verfügbar sind.

Hier ein Beispiel, in dem die Mindest-CPU-Plattform Intel Haswell angegeben wird:

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

Wenn Sie die Spezifikation für die Mindest-CPU-Plattform löschen möchten, setzen Sie --min-cpu-platform auf AUTOMATIC.

API

Fügen Sie in der Compute Engine API das Attribut minCpuPlatform als Teil des Anfragetexts ein. Der Wert für minCpuPlatform muss der Anzeigename für die Plattform sein, z. B. Intel Haswell, Intel Broadwell oder Intel Sandy Bridge.

Ein Anfragetext könnte beispielsweise so aussehen:

"name": "VM_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"
   }
 }]

Wenn Sie die Spezifikation für die Mindest-CPU-Plattform löschen möchten, setzen Sie minCpuPlatform auf AUTOMATIC.

Mindest-CPU-Plattform für eine beendete VM festlegen

Sie können einer vorhandenen Instanz eine Mindest-CPU-Plattform zuweisen, wenn Sie die Instanz anhalten.

Nachdem Sie die Instanz angehalten haben, folgen Sie der folgenden Anleitung, um eine Mindest-CPU-Plattform festzulegen.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite VM-Instanzen.

    Zu „VM-Instanzen“

  2. Wenn Sie dazu aufgefordert werden, wählen Sie Ihr Projekt aus und klicken auf Weiter.

  3. Wählen Sie die angehaltene Instanz aus, die Sie ändern möchten.

  4. Klicken Sie auf Bearbeiten, um die Instanz zu bearbeiten.

  5. Klicken Sie im Abschnitt Maschinenkonfiguration auf CPU-Plattform und GPU.

  6. Wählen Sie aus dem Drop-down-Menü CPU-Plattform eine Option aus.

  7. Speichern Sie die Änderungen.

  8. Starten Sie die Instanz neu.

gcloud

  1. Verwenden Sie den Unterbefehl update, gefolgt vom Flag --min-cpu-platform. Geben Sie den Anzeigenamen der Plattformen an, z. B. Intel Haswell, Intel Broadwell oder Intel Sandy Bridge. Beispiele:

    gcloud compute instances update INSTANCE_NAME \
       --min-cpu-platform="Intel Haswell"
  2. Starten Sie die Instanz neu.

API

  1. Um die Mindest-CPU-Plattform in der API festzulegen, senden Sie eine POST-Anfrage an die Methode setMinCpuPlatform und legen im Anfragetext das Attribut minCpuPlatform fest. Der Wert für das Attribut ist der Anzeigename der CPU-Plattform, z. B. Intel Haswell, Intel Broadwell oder Intel Sandy Bridge. Beispiele:

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

    Die Ausgabe sieht so aus:

    {
      "minCpuPlatform": "Intel Haswell"
    }
    1. Starten Sie die Instanz neu.

Mindest-CPU-Plattform in Instanzvorlagen angeben

Wenn Sie verwaltete Instanzgruppen verwenden, können Sie für VM-Instanzen innerhalb einer verwalteten Instanzgruppe eine Mindest-CPU-Plattform angeben.

Wenn Sie eine Mindest-CPU-Plattform angeben möchten, erstellen Sie eine Instanzvorlage, die das Attribut minCpuPlatform enthält.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Instanzvorlagen auf.

    Instanzvorlagen aufrufen

  2. Wenn Sie dazu aufgefordert werden, wählen Sie Ihr Projekt aus und klicken auf Weiter.

  3. Klicken Sie auf Instanzvorlage erstellen.

  4. Klicken Sie im Abschnitt Maschinenkonfiguration auf CPU-Plattform und GPU.

  5. Wählen Sie aus dem Drop-down-Menü CPU-Plattform eine Option aus.

  6. Fahren Sie nun mit der Erstellung der Instanzvorlage fort.

gcloud

Geben Sie das Flag --min-cpu-platform an, wenn Sie eine Instanzvorlage erstellen. Beispiele:

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

API

Fügen Sie der Anfrage das minCpuPlatform hinzu, um eine neue Instanzvorlage in der Compute Engine API zu erstellen.

Die folgende Instanzvorlage enthält beispielsweise die mindestens erforderlichen Felder zum Erstellen einer neuen Vorlage, plus das Attribut 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-9"
          }
        }
      ]
    }
  ],
  "disks":
  [
    {
      "type": "PERSISTENT",
      "boot": true,
      "mode": "READ_WRITE",
      "initializeParams":
      {
        "sourceImage": "projects/debian-cloud/global/images/family/debian-8"
      }
    }
  ]
  }
}

Nächste Schritte