Specifica una piattaforma CPU minima per le istanze VM

Questa pagina spiega come creare o aggiornare l'istanza di una macchina virtuale (VM) per utilizzare una piattaforma CPU minima anziché la piattaforma predefinita.

I data center di Google offrono diverse generazioni di processori CPU. Ogni piattaforma CPU supporta funzionalità incrementali come le Advanced Vector Extensions, ad esempio AVX2 e AVX-512. Inoltre, alcune funzionalità fondamentali relative ai sistemi, come la velocità di orologio e il tempo di ricerca dell'accesso alla memoria, possono variare da una piattaforma CPU all'altra.

Ogni serie di macchine è associata a una o più piattaforme CPU. Ad esempio, le VM N2 possono essere eseguite sulle CPU Ice Lake o Cascade Lake. Se sono disponibili più piattaforme CPU per una serie di macchine, puoi selezionare una piattaforma CPU minima durante la creazione di una VM utilizzando un tipo di macchina di quella serie di macchine. La disponibilità della famiglia di macchine, della serie, della regione e delle zone determina la scelta della piattaforma CPU minima.

Specificare una piattaforma CPU minima è utile se il carico di lavoro richiede i miglioramenti in termini di prestazioni offerti dalla generazione di un processore specifico. Tuttavia, la specifica di una piattaforma CPU minima potrebbe limitare le zone in cui puoi creare le VM.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.

    Seleziona la scheda relativa a come prevedi di utilizzare gli esempi in questa pagina:

    Console

    Quando utilizzi la console Google Cloud per accedere ai servizi e alle API di Google Cloud, non devi configurare l'autenticazione.

    gcloud

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Imposta una regione e una zona predefinite.

    REST

    Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, devi utilizzare le credenziali che fornisci a gcloud CLI.

      Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init

Autorizzazioni e ruoli richiesti

Per ottenere le autorizzazioni necessarie per modificare la piattaforma CPU minima, chiedi all'amministratore di concederti i seguenti ruoli IAM sul progetto:

  • Amministratore istanze Compute (v1) (roles/compute.instanceAdmin.v1)
  • Per connetterti a una VM eseguibile come account di servizio: Utente account di servizio (v1) (ruolo roles/iam.serviceAccountUser)

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Quando selezionare una piattaforma CPU minima

Molto probabilmente non è necessario selezionare una piattaforma CPU minima. Ogni zona di Compute Engine ha una piattaforma CPU predefinita per ogni serie di macchine. A volte Google modifica la CPU predefinita di una zona quando vengono aggiunti nuovi server. Se non specifichi una piattaforma CPU minima per una VM, questa riceve la piattaforma CPU predefinita associata al tipo di macchina e alla zona.

Google consiglia di selezionare una piattaforma CPU minima solo nei seguenti casi:

  • Quando la piattaforma con CPU minima offre miglioramenti significativi delle prestazioni per il carico di lavoro o se offre funzionalità come AVX2 o AVX-512 utilizzate dal tuo codice.
  • Quando crei VM che consumano prenotazioni, devi specificare la stessa piattaforma CPU della prenotazione.

La selezione di una piattaforma CPU minima per la tua VM introduce dei vincoli che influiscono sulla capacità di avviare VM in zone in cui alcune piattaforme CPU sono disponibili in quantità limitata.

Come funziona la selezione di una piattaforma CPU minima

Compute Engine utilizza sempre la piattaforma CPU minima, se disponibile. Se Google cambio una piattaforma CPU in una zona, la tua VM può continuare a essere eseguita su una piattaforma CPU più recente disponibile in quella zona se arresti e riavvii la VM.

Dopo aver selezionato una piattaforma CPU minima per una VM, la VM utilizza questa piattaforma CPU, a meno che non arresti la VM e cambi la piattaforma CPU. Durante una migrazione live, la VM conserva la piattaforma CPU selezionata.

Limitazioni

  • Ogni regione e zona supporta più piattaforme CPU, ma una regione o una zona potrebbero non offrire tutte le piattaforme CPU.
  • Non puoi specificare una piattaforma CPU minima per le VM che utilizzano nodi single-tenant.
  • Non puoi selezionare una piattaforma CPU minima per le VM E2 predefinite o personalizzate.
  • Non puoi selezionare una piattaforma CPU minima per le seguenti VM per uso generico con core condivisi:
    • e2-micro
    • e2-small
    • e2-medium
    • f1-micro
    • g1-small

Disponibilità di piattaforme CPU

La disponibilità delle piattaforme CPU varia da una zona all'altra e si basa sull'hardware e sulla serie di macchine disponibili in ciascuna zona. Il seguente elenco mostra le piattaforme minime della CPU supportate e la sintassi valida per ogni piattaforma:

  • Terza generazione: processori Intel Xeon (Ice Lake): "Intel Ice Lake"
  • Seconda generazione: processori Intel Xeon (Cascade Lake): "Intel Cascade Lake"
  • Prima generazione: processori Intel Xeon (Skylake): "Intel Skylake"
  • Processori Intel Xeon E5 v4 (Broadwell): "Intel Broadwell"
  • Processori Intel Xeon E5 v3 (Haswell): "Intel Haswell"
  • Processori Intel Xeon E5 v2 (Ivy Bridge): "Intel Ivy Bridge"
  • Processori Intel Xeon E5 (Sandy Bridge): "Intel Sandy Bridge"
  • Quarta generazione: processori AMD EPYC Genoa: "AMD Genoa"
  • Terza generazione: processori AMD EPYC Milan: "AMD Milan"
  • 2a generazione: processori AMD EPYC Rome: "AMD Rome"

Visualizza le piattaforme CPU disponibili per zona

Solo alcune regioni e zone contengono più piattaforme CPU per la stessa serie di macchine e sono disponibili per la selezione minima della piattaforma CPU. Puoi visualizzare un elenco di piattaforme supportate per una zona specifica utilizzando gcloud CLI o REST.

Se utilizzi nodi single-tenant, ogni nodo utilizza la piattaforma CPU corrispondente al tipo di nodo definito nel modello di nodo.

gcloud

  • Per visualizzare le piattaforme CPU disponibili nella tua zona, utilizza il comando gcloud compute zones describe:

    gcloud compute zones describe ZONE
    

    Sostituisci ZONE con il nome della zona per verificare la presenza di piattaforme CPU disponibili, ad esempio europe-west10-a.

    Il seguente output da questo comando elenca le piattaforme CPU per la zona europe-west10-a:

    gcloud compute zones describe europe-west10-a
    availableCpuPlatforms:
    - Intel Broadwell
    - Intel Cascade Lake
    - Intel Ice Lake
    - AMD Milan
    - AMD Rome
    - Intel Skylake
    
    ...
    

REST

  • Fai una richiesta GET alla zona che stai prendendo in considerazione:

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

    Sostituisci ZONE con il nome della zona per verificare la presenza di piattaforme CPU disponibili.

    Il seguente output da questo comando elenca le piattaforme CPU supportate per una zona:

    {
      "kind": "compute#zone",
      "id": "2210",
      "creationTimestamp": "1969-12-31T09:30:55.189-07:00",
      "name": "europe-west10-a",
      "description": "europe-west10-a",
      "status": "UP",
      "region": "https://www.googleapis.com/compute/v1/projects/myproject/regions/europe-west10-a",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/myproject/zones/europe-west10-a",
      "availableCpuPlatforms": [
       "Intel Broadwell",
       "Intel Cascade Lake",
       "Intel Ice Lake",
       "AMD Milan",
       "AMD Rome",
       "Intel Skylake"
      ],
      "supportsPzs": true
     }

Modifiche predefinite a una piattaforma CPU

A volte, Google cambia una piattaforma CPU o aggiorna la piattaforma CPU predefinita. Con l'aumento della capacità di una zona, Google passa in modo proattivo a una piattaforma CPU più recente non appena la piattaforma diventa disponibile. che aggiorna la piattaforma CPU predefinita con la più recente disponibile in quella zona.

Quando una piattaforma CPU predefinita per una zona cambia, Google invia una notifica ai clienti interessati con una sequenza temporale dettagliata e istruzioni specifiche per la transizione alla piattaforma più recente.

Le VM non utilizzano mai una piattaforma precedente alla piattaforma CPU minima specificata. Se Compute Engine esegue la transizione della VM a una piattaforma più recente, il costo della VM non cambia.

Seleziona una piattaforma CPU minima per una nuova VM

Quando crei una VM, scegli una serie e un tipo di macchina. La serie di macchine potrebbe essere offerta su più piattaforme CPU. In questo caso, puoi specificare la piattaforma CPU minima che vuoi che la VM utilizzi.

Console

  1. Nella console Google Cloud, vai alla pagina Crea un'istanza.

    Vai a Crea un'istanza

  2. Nella sezione Configurazione macchina, espandi la sezione Configurazioni avanzate.

  3. Nell'elenco Piattaforma CPU, seleziona una piattaforma per la CPU della VM.

  4. Continua con il resto del processo di creazione della VM.

gcloud

  • Per creare una nuova VM che utilizza una piattaforma CPU minima, utilizza il comando gcloud compute instances create e fornisci il flag --min-cpu-platform:

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

    Sostituisci quanto segue:

    • INSTANCE: il nome dell'istanza che vuoi creare
    • ZONE: il nome della zona in cui vuoi creare l'istanza, ad esempio europe-west1-b
    • PLATFORM: il nome descrittivo della piattaforma CPU minima che vuoi che l'istanza utilizzi, ad esempio Intel Sandy Bridge

      Se vuoi cancellare la specifica minima della piattaforma CPU, sostituisci PLATFORM con AUTOMATIC.

      Utilizza la sezione Zone disponibili per determinare quali piattaforme sono disponibili per ogni zona.

REST

  • Utilizza il metodo instances.insert e includi la proprietà minCpuPlatform nel corpo della richiesta.

    Ad esempio, il corpo di una richiesta potrebbe avere il seguente aspetto:

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

    Sostituisci quanto segue:

    • INSTANCE: il nome della nuova VM
    • ZONE: nome della zona in cui vuoi creare la VM, ad esempio europe-west1-b
    • MACHINE_TYPE: il tipo di macchina della nuova VM
    • PLATFORM: il nome descrittivo della piattaforma CPU minima che vuoi che la VM utilizzi, ad esempio Intel Ivy Bridge

      Per cancellare la specifica minima della piattaforma CPU, sostituisci PLATFORM con AUTOMATIC.

    • IMAGE_PROJECT: il progetto di immagine della famiglia di immagini

    • IMAGE_FAMILY: la famiglia di immagini dell'immagine da utilizzare per creare la VM

Imposta una piattaforma CPU minima per una VM esistente

Puoi impostare una piattaforma CPU minima per una VM esistente. Devi arrestare la VM prima di impostare la piattaforma CPU minima.

Console

  1. Vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Se richiesto, seleziona il progetto e fai clic su Continua.

  3. Seleziona la VM che vuoi modificare.

  4. Fai clic su Arresta.

  5. Per modificare la VM, fai clic su Modifica.

  6. Nella sezione Configurazione macchina, fai clic su Configurazioni avanzate.

  7. Dal menu a discesa Piattaforma CPU, seleziona un'opzione.

  8. Salva le modifiche.

  9. Seleziona la VM che hai modificato.

  10. Fai clic su Avvia/Riprendi.

gcloud

  1. Per arrestare una VM, utilizza il comando gcloud compute instances stop:

    gcloud compute instances stop INSTANCE
    

    Sostituisci INSTANCE con il nome della VM per cui vuoi specificare una piattaforma CPU minima.

  2. Per specificare una piattaforma CPU minima, utilizza il comando gcloud compute instances update e fornisci il flag --min-cpu-platform:

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

    Sostituisci PLATFORM con il nome descrittivo della piattaforma CPU minima che vuoi che la VM utilizzi, ad esempio Intel Cascade Lake.

  3. Per avviare la VM aggiornata, utilizza il comando gcloud compute instances start:

    gcloud compute instances start INSTANCE
    

REST

  1. Per arrestare una VM, crea una richiesta POST utilizzando il metodo instances.stop:

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

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • ZONE: la zona in cui si trova la VM
    • INSTANCE: il nome della VM per cui vuoi specificare una piattaforma CPU minima
  2. Per impostare la piattaforma CPU minima, crea una richiesta POST nel metodo setMinCpuPlatform e imposta la proprietà minCpuPlatform nel corpo della richiesta:

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

    Sostituisci PLATFORM con il nome descrittivo della piattaforma CPU minima che vuoi che la VM utilizzi, ad esempio Intel Skylake.

  3. Per riavviare la VM, crea una richiesta POST utilizzando il metodo instances.start:

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

Rimuovi un'impostazione minima della piattaforma CPU

Puoi aggiornare una VM per utilizzare la piattaforma CPU predefinita anziché la piattaforma CPU minima. Se la VM è in esecuzione, devi arrestarla prima di apportare modifiche.

Console

  1. Vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Se richiesto, seleziona il progetto e fai clic su Continua.

  3. Seleziona la VM che vuoi modificare.

  4. Fai clic su Arresta.

  5. Per modificare la VM, fai clic su Modifica.

  6. Nella sezione Configurazione macchina, fai clic su Configurazioni avanzate.

  7. Imposta l'opzione Piattaforma CPU su Automatica.

  8. Seleziona la VM che hai modificato.

  9. Fai clic su Avvia/Riprendi.

gcloud

  1. Per arrestare una VM, utilizza il comando gcloud compute instances stop:

    gcloud compute instances stop INSTANCE
    

    Sostituisci INSTANCE con il nome della VM che vuoi modificare.

  2. Per reimpostare la piattaforma CPU minima, utilizza il comando gcloud compute instances update e imposta il flag --min-cpu-platform su AUTOMATIC:

    gcloud compute instances update INSTANCE \
        --min-cpu-platform="AUTOMATIC"
    
  3. Per avviare la VM aggiornata, utilizza il comando gcloud compute instances start:

    gcloud compute instances start INSTANCE
    

REST

  1. Per arrestare una VM, crea una richiesta POST utilizzando il metodo instances.stop:

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

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • ZONE: la zona in cui si trova la VM
    • INSTANCE: il nome della VM che vuoi modificare
  2. Per reimpostare la piattaforma CPU minima, crea una richiesta POST per il metodo setMinCpuPlatform. Nel corpo della richiesta, imposta il valore della proprietà minCpuPlatform su AUTOMATIC.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/setMinCpuPlatform
    {
      "minCpuPlatform": AUTOMATIC
    }
    
  3. Per avviare la VM aggiornata, utilizza il comando gcloud compute instances start:

    gcloud compute instances start INSTANCE
    

Specifica una piattaforma CPU minima nei modelli di istanza

Se utilizzi gruppi di istanze gestite, puoi specificare una piattaforma CPU minima per le VM all'interno di un gruppo di istanze gestite.

Per specificare una piattaforma CPU minima, crea un modello di istanza che includa la proprietà minCpuPlatform.

Console

  1. Vai alla pagina Modelli di istanza.

    Vai a Modelli di istanza

  2. Se richiesto, seleziona il progetto e fai clic su Continua.

  3. Fai clic su Crea modello istanza.

  4. Nella sezione Configurazione macchina, fai clic su Configurazioni avanzate.

  5. Dal menu a discesa Piattaforma CPU, seleziona un'opzione.

  6. Continua con il processo di creazione del modello di istanza.

gcloud

  • Quando crei un modello di istanza utilizzando il comando gcloud compute instance-templates create, fornisci il flag --min-cpu-platform:

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

    Sostituisci quanto segue:

    • TEMPLATE_NAME: il nome del modello di istanza
    • PLATFORM: il nome descrittivo della piattaforma CPU minima che vuoi che l'istanza utilizzi, ad esempio Intel Skylake

REST

  • Aggiungi minCpuPlatform come parte della richiesta per creare un nuovo modello di istanza utilizzando il metodo instanceTemplates.insert.

    Ad esempio, il seguente modello di istanza contiene i campi minimi obbligatori per creare un nuovo modello con l'aggiunta della proprietà minCpuPlatform:

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

Passaggi successivi