Utilizza prenotazioni


Questo documento spiega come utilizzare Compute Engine per:

  • Utilizza istanze di macchine virtuali (VM) riservate.

  • Verifica il consumo delle prenotazioni.

  • Visualizza i report sull'utilizzo delle prenotazioni.

Per ulteriori informazioni sul consumo di prenotazioni in altri prodotti Google Cloud che utilizzano VM, consulta la documentazione sulle prenotazioni per i seguenti prodotti:

Prima di iniziare

  • Esamina i requisiti e le limitazioni per le prenotazioni.
  • Se non l'hai ancora fatto, configura l'autenticazione. Autenticazione è Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine come segue.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per utilizzare le prenotazioni, chiedi all'amministratore di concederti il ruolo IAM Amministratore istanze Compute (v1) (roles/compute.instanceAdmin.v1) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per utilizzare le prenotazioni. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per utilizzare le prenotazioni sono necessarie le seguenti autorizzazioni:

  • Per creare prenotazioni: compute.reservations.create nel progetto
  • Per creare le VM:
    • compute.instances.create sul progetto
    • Per utilizzare un'immagine personalizzata per creare la VM: compute.images.useReadOnly sull'immagine
    • Per utilizzare uno snapshot per creare la VM: compute.snapshots.useReadOnly nello snapshot
    • Per utilizzare un modello di istanza per creare la VM: compute.instanceTemplates.useReadOnly nel modello di istanza
    • Per assegnare una rete legacy alla VM: compute.networks.use nel progetto
    • Per specificare un indirizzo IP statico per la VM: compute.addresses.use nel progetto
    • Per assegnare un indirizzo IP esterno alla VM quando nel progetto viene utilizzata una rete precedente: compute.networks.useExternalIp
    • Per specificare una subnet per la VM: compute.subnetworks.use nel progetto o nella subnet scelta
    • Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC: compute.subnetworks.useExternalIp nel progetto o nella subnet scelta
    • Per impostare i metadati dell'istanza VM per la VM: compute.instances.setMetadata nel progetto
    • Per impostare i tag per la VM: compute.instances.setTags sulla VM
    • Per impostare le etichette per la VM: compute.instances.setLabels sulla VM
    • Per impostare un account di servizio che la VM deve utilizzare: compute.instances.setServiceAccount sulla VM
    • Per creare un nuovo disco per la VM: compute.disks.create nel progetto
    • Per collegare un disco esistente in modalità di sola lettura o lettura/scrittura: compute.disks.use sul disco
    • Per collegare un disco esistente in modalità di sola lettura: compute.disks.useReadOnly sul disco
  • Per creare modelli di istanza: compute.instanceTemplates.create nel progetto

Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.

Utilizzare VM riservate

Quando crei un'istanza di una macchina virtuale (VM), la VM inizia a utilizzare solo se le proprietà sia per la VM sia per la prenotazione corrispondenti. Inoltre, devi impostare la proprietà di affinità della prenotazione della VM su una delle seguenti opzioni:

  • Utilizza qualsiasi prenotazione corrispondente: la VM può utilizzare automaticamente qualsiasi prenotazione con proprietà corrispondenti (valore predefinito).

    Questa opzione è utile se crei ed elimini molte VM e vuoi utilizzare le prenotazioni ogni volta che è possibile. In questo scenario, è possibile creare una VM anche se le sue proprietà non corrispondono a una prenotazione. Se corrispondono, la VM inizia a consumare la prenotazione a seconda del ordine di consumo.

  • Esegui una prenotazione specifica: La VM può consumare solo una prenotazione specifica. La prenotazione non può essere consumata automaticamente.

    Questa opzione è utile quando, ad esempio, vuoi conservare una certa quantità come backup per eventi speciali. In questo scenario, è possibile creare una VM solo se le sue proprietà corrispondono a quelle della prenotazione specifica.

  • Non può utilizzare alcuna prenotazione: il valore La VM non può utilizzare nessuna prenotazione.

    Questa opzione è utile quando, ad esempio, crei una VM temporanea di cui non vuoi consumare le risorse riservate.

Utilizza VM da qualsiasi prenotazione corrispondente

In questo modello di consumo, le VM esistenti e nuove consumano automaticamente una prenotazione se le relative proprietà corrispondono a quelle specificate nella prenotazione.

Quando utilizzi questo modello di consumo, le VM nel progetto corrente consumano prima tutte le prenotazioni per un singolo progetto prima di utilizzare le prenotazioni condivise. Per maggiori informazioni su come le prenotazioni vengono consumate automaticamente, consulta Ordine di consumo.

Quando crei una prenotazione, questo è il modello di consumo predefinito, purché non usare il flag o l'opzione che indica che le prenotazioni specifiche sono obbligatorio.

Console

  1. Per creare una prenotazione con risorse che possono essere utilizzate dalle VM con una proprietà di affinità di prenotazione configurata per utilizzare eventuali prenotazioni (valore predefinito), segui questi passaggi:

    1. Seleziona il tipo di prenotazione che vuoi creare:

      • Per creare una prenotazione autonoma:

        1. Nella console Google Cloud, vai alla pagina Prenotazioni.

          Vai a Prenotazioni

        2. Nella scheda Prenotazione on demand (impostazione predefinita), fai clic su Crea prenotazione.

          Viene visualizzata la pagina Crea una prenotazione.

      • Per creare una prenotazione collegata a un impegno, segui questi passaggi: seguenti:

        1. Nella console Google Cloud, vai alla pagina Sconti per utilizzo vincolato.

          Vai a Sconti per impegno di utilizzo

          Si apre la pagina Elenco impegni.

        2. Fai clic su Acquista impegno.

          Viene visualizzata la pagina Acquista uno sconto per impegno di utilizzo.

        3. Specifica le proprietà dell'impegno. Quindi, nel Nella sezione Prenotazioni, fai clic su Aggiungi un elemento.

          Viene visualizzata la sezione Aggiungi una nuova prenotazione.

          Per ulteriori informazioni su come acquistare un impegno con per una prenotazione allegata, vedi Impegni di acquisto con prenotazioni allegate.

    2. Nel campo Nome, inserisci un nome per la prenotazione. Per questo Ad esempio, inserisci reservation-01.

    3. Scegli la Regione e la Zona in cui vuoi prenotare le risorse. Per questo esempio, seleziona us-central1 come regione e us-central1-a come zona.

    4. Scegli il tipo di condivisione che preferisci:

      • Per creare una prenotazione per un singolo progetto, seleziona Locale.
      • Per creare una prenotazione condivisa tra più progetti, seleziona Condivisi. Per condividere questa prenotazione con altri progetti, fai clic su Aggiungere progetti e selezionare i progetti desiderati dal pannello dell'organizzazione.
    5. Nella sezione Utilizza con l'istanza VM, seleziona Utilizza automaticamente la prenotazione in modo che tutte le VM corrispondenti possano utilizzare automaticamente questa prenotazione.

    6. Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare. Per questo esempio, inserisci 2.

    7. Specifica le risorse che vuoi prenotare per ogni VM:

      • Se vuoi prenotare VM corrispondenti a un modello di istanza esistente, seleziona Utilizza modello di istanza e un modello di istanza dall'elenco.
      • Altrimenti, seleziona Specifica il tipo di macchina e specifica il seguenti:
        1. Nei campi Famiglia di macchine, Serie e Tipo di macchina, seleziona una famiglia, una serie e un tipo di macchina.
        2. (Facoltativo) Specifica una piattaforma CPU minima e/o una GPU:
          1. Per espandere la sezione Piattaforma CPU e GPU, fai clic sulla Freccia di espansione .
          2. (Facoltativo) Per specificare una piattaforma CPU minima, nel campo Piattaforma CPU, seleziona un'opzione.
          3. (Facoltativo) Per aggiungere GPU, fai clic su Aggiungi GPU. Quindi, nei campi Tipo di GPU e Numero di GPU, seleziona il tipo e il numero di GPU per ogni VM.
        3. (Facoltativo) Aggiungi SSD locali:
          1. Nel campo Numero di dischi, seleziona il numero di SSD locali per ogni VM.
          2. Nel campo Tipo di interfaccia, seleziona l'interfaccia per le unità SSD locali.

      Per questo esempio, seleziona Specifica il tipo di macchina. Quindi seleziona Tipo di macchina n2-standard-32 per la macchina General-purpose e la serie N2 e selezionare la piattaforma CPU minima Intel Cascade Lake.

    8. Completa la creazione della prenotazione:

      • Se stai creando una prenotazione autonoma, fai clic su Crea.

      • Se stai creando una prenotazione collegata a un impegno:

        1. Per completare la specifica delle proprietà per questa prenotazione, fai clic su Fine.
        2. Per completare la creazione dell'impegno e delle prenotazioni allegate, fai clic su Acquista.
  2. Nello stesso progetto o progetto con cui è condivisa la prenotazione, creare una VM che abbia come target qualsiasi prenotazione aperta.

    Assicurati che le proprietà della VM corrispondano a quelle della VM in reservation-01, tra cui zona, tipo di macchina (famiglia di macchine, vCPU e memoria), piattaforma CPU minima, quantità e tipo di GPU e interfaccia e dimensioni dell'SSD locale.

    Per ulteriori informazioni su come creare una VM, consulta Creare e avviare una VM

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

      Vai a Crea un'istanza

      Viene visualizzata la pagina Crea un'istanza.

    2. Specifica un nome per la VM.

    3. Nelle sezioni seguenti, seleziona una configurazione corrisponde esattamente a tutte le proprietà della prenotazione, incluse quelle proprietà facoltative. Per questo esempio, devi associare le seguenti proprietà VM a reservation-01:

      • Regione: us-central1
      • Zona: us-central1-a
      • Tipo di macchina: n2-standard-32
      • Piattaforma CPU minima: Intel Cascade Lake
      • GPU: nessuna
      • SSD locali: nessuna
    4. Espandi la sezione Opzioni avanzate, quindi espandi la nella sezione Gestione. Nell'elenco Prenotazioni, seleziona Utilizza automaticamente la prenotazione creata.

    5. Per creare la VM, fai clic su Crea.

gcloud

  1. Crea una prenotazione aperta denominata reservation-01.

    gcloud compute reservations create reservation-01 \
        --vm-count=2 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform="Intel Cascade Lake" \
        --zone=us-central1-a
    
  2. Crea una VM che abbia come target qualsiasi prenotazione aperta e che corrisponda alle proprietà della VM in reservation-01, tra cui zona, tipo di macchina (famiglia di macchine, vCPU e memoria), piattaforma CPU minima, quantità e tipo di GPU, nonché quantità e interfaccia dell'SSD locale.

    gcloud compute instances create instance-1 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform="Intel Cascade Lake" \
        --zone=us-central1-a \
        --reservation-affinity=any
    

REST

  1. Crea una prenotazione aperta denominata reservation-01.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations
    
    {
      "name": "reservation-01",
      "specificReservation": {
        "count": "2",
        "instanceProperties": {
          "machineType": "n2-standard-32",
          "minCpuPlatform": "Intel Cascade Lake",
        }
      }
    }
    
  2. Crea una VM che abbia come target qualsiasi prenotazione aperta e che corrisponda alle proprietà della VM in reservation-01, tra cui la zona, il tipo di macchina (famiglia di macchine, vCPU e memoria), la piattaforma CPU minima, la quantità e il tipo di GPU, nonché la quantità e l'interfaccia dell'SSD locale.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances
    
    {
      "name": "instance-1",
      "machineType": "zones/us-central1-a/machineTypes/n2-standard-32",
      "minCpuPlatform": "Intel Cascade Lake",
      "disks": [
        {
          "boot": true,
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-12"
          }
        }
      ],
      "networkInterfaces": [
        {
          "network": "global/networks/default"
        }
      ],
      "reservationAffinity": {
        "consumeReservationType": "ANY_RESERVATION"
      }
    }
    

Utilizzare le VM di una prenotazione specifica

In questo modello di consumo, solo le nuove VM che hanno come target una prenotazione specifica in base a può utilizzare quella prenotazione, ma la prenotazione non viene consumata automaticamente.

Quando crei la prenotazione, specifica che le VM devono avere come target la prenotazione specifica utilizzando uno dei seguenti metodi:

  • Nella console Google Cloud, seleziona la casella di controllo Seleziona una prenotazione specifica.
  • In gcloud CLI, includi il parametro --require-specific-reservation flag.
  • Nell'API Compute Engine, imposta il campo specificReservationRequired a true.
  • In Terraform, imposta il campo specific_reservation_required su true.

Quindi, crea VM che hanno come target specifico la prenotazione. Puoi creare una VM che abbia come target una prenotazione specifica solo se le proprietà della VM e quelle della prenotazione corrispondono. In caso contrario, la creazione della VM non va a buon fine.

Se utilizzi un modello di istanza per creare VM in un ambiente gestito a livello di regione di Compute Engine, crea prenotazioni identiche con lo stesso nome della zona applicabile. Quindi, scegli come target le prenotazioni per nome nel modello di istanza del gruppo.

Ad esempio, crea una prenotazione specifica denominata reservation-02 e poi una VM corrispondente che abbia come target la prenotazione e che corrisponda alle proprietà VM della prenotazione.

A seconda del tipo di VM che vuoi utilizzare, segui i passaggi per Utilizza una prenotazione specifica per un singolo progetto o Utilizza una prenotazione condivisa specifica.

Utilizzare una prenotazione specifica per un singolo progetto

Per utilizzare una specifica prenotazione per un singolo progetto, seleziona una delle seguenti opzioni opzioni:

Console

  1. Per creare una prenotazione con risorse che possono essere utilizzate solo dalle VM che scegliere come target specifico la prenotazione per nome, segui questi passaggi:

    1. Seleziona una delle seguenti opzioni:

      • Per creare una prenotazione autonoma:

        1. Nella console Google Cloud, vai alla pagina Prenotazioni.

          Vai a Prenotazioni

        2. Nella scheda Prenotazioni on demand (impostazione predefinita), fai clic su Crea prenotazione.

          Viene visualizzata la pagina Crea una prenotazione.

      • Per creare una prenotazione collegata a un impegno, segui questi passaggi: seguenti:

        1. Nella console Google Cloud, vai alla pagina Sconti per utilizzo vincolato.

          Vai a Sconti per impegno di utilizzo

        2. Fai clic su Impegno di acquisto.

          Viene visualizzata la pagina Acquista uno sconto per impegno di utilizzo.

        3. Specifica le proprietà dell'impegno. Quindi, nel Nella sezione Prenotazioni, fai clic su Aggiungi un elemento.

          Viene visualizzata la sezione Aggiungi una nuova prenotazione.

          Per ulteriori informazioni su come acquistare un impegno con una prenotazione allegata, consulta Acquistare impegni con prenotazioni allegate.

    2. Nel campo Nome, inserisci un nome per la prenotazione. Per questo esempio, inserisci reservation-02.

    3. Scegli la regione e la zona in cui effettuare la prenotazione. Google Cloud. Per questo esempio, seleziona us-central1 come regione e us-central1-a come zona.

    4. Per specificare che la prenotazione riguarda un singolo progetto, seleziona Locale come Tipo di condivisione.

    5. Nella sezione Utilizza con l'istanza VM, seleziona Seleziona prenotazione specifica in modo che solo le VM corrispondenti che hanno come target specifico questa prenotazione per nome possano utilizzarla.

    6. Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare. Per questo esempio, inserisci 10.

    7. Specifica le risorse che vuoi prenotare per ogni VM:

      • Se vuoi prenotare VM che corrispondono a una VM modello di istanza, seleziona Utilizza modello di istanza e seleziona un modello di istanza dall'elenco.
      • Altrimenti, seleziona Specifica il tipo di macchina e specifica il seguenti:
        1. Nei campi Famiglia di macchine, Serie e Tipo di macchina, seleziona una famiglia, una serie e un tipo di macchina.
        2. (Facoltativo) Specifica una piattaforma CPU minima e/o una GPU:
          1. Per espandere la sezione Piattaforma CPU e GPU, fai clic sulla Freccia di espansione .
          2. (Facoltativo) Per specificare una piattaforma CPU minima, nel campo Piattaforma CPU, seleziona un'opzione.
          3. (Facoltativo) Per aggiungere GPU, fai clic su Aggiungi GPU. Quindi, nei campi Tipo di GPU e Numero di GPU, seleziona il tipo e il numero di GPU per ogni VM.
        3. (Facoltativo) Aggiungi SSD locali:
          1. Nel campo Numero di dischi, seleziona il numero di SSD locali per ogni VM.
          2. Nel campo Tipo di interfaccia, seleziona l'interfaccia per le unità SSD locali.

      Per questo esempio, seleziona Specifica il tipo di macchina. Quindi seleziona Tipo di macchina n2-standard-32 per la macchina General-purpose e la serie N2 e selezionare la piattaforma CPU minima Intel Cascade Lake.

    8. Completa la creazione della prenotazione:

      • Se stai creando una prenotazione autonoma, fai clic su Crea.

      • Se stai creando una prenotazione collegata a un impegno:

        1. Per completare la specifica delle proprietà per questa prenotazione, fai clic su Fine.
        2. Per completare la creazione dell'impegno e delle prenotazioni allegate, fai clic su Acquista.
  2. Nello stesso progetto, crea una VM che abbia come target la prenotazione specifica per nome.

    Assicurati che le proprietà della VM corrispondano a quelle della prenotazione specifica, tra cui la zona, il tipo di macchina (famiglia di macchine, vCPU e memoria), la piattaforma CPU minima, la quantità e il tipo di GPU e l'interfaccia e le dimensioni dell'SSD locale.

    Per saperne di più su come creare una VM, consulta Crea e avvia una VM.

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

      Vai a Crea un'istanza

    2. Nel campo Nome, inserisci un nome per la VM.

    3. Nelle sezioni seguenti, seleziona una configurazione che corrisponde esattamente a tutte le proprietà della prenotazione, incluse quelle facoltative. Per questo esempio, devi avere una corrispondenza tra i seguenti Proprietà VM con reservation-02:

      • Regione: us-central1
      • Zona: us-central1-a
      • Tipo di macchina: n2-standard-32
      • Piattaforma CPU minima: Intel Cascade Lake
      • GPU: nessuna
      • SSD locali: nessuna
    4. Espandi la sezione Opzioni avanzate e segui questi passaggi:

      1. Espandi la sezione Gestione.

      2. Nella sezione Prenotazioni, in Criteri relativi alle applicazioni dall'elenco, scegli Seleziona una prenotazione specifica.

      3. Seleziona la prenotazione con proprietà VM corrispondenti che vuoi per il consumo della VM. Per questo esempio, seleziona reservation-02.

    5. Per creare la VM, fai clic su Crea.

gcloud

  1. Crea una prenotazione denominata reservation-02 con il --require-specific-reservation flag. Queste risorse riservate possono essere utilizzate solo dalle VM che hanno come target specifico questa prenotazione per nome.

    gcloud compute reservations create reservation-02 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform="Intel Cascade Lake" \
        --vm-count=10 \
        --zone=us-central1-a \
        --require-specific-reservation
    
  2. Crea una VM che abbia come target reservation-02 per nome utilizzando Flag --reservation-affinity e --reservation.

    Assicurati che le proprietà della VM corrispondano a quelle della prenotazione tra cui zona, tipo di macchina (famiglia di macchine, vCPU e memoria), piattaforma CPU minima, quantità e tipo di GPU e interfaccia SSD locale. dimensioni.

    gcloud compute instances create instance-2 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform="Intel Cascade Lake" \
        --zone=us-central1-a \
        --reservation-affinity=specific \
        --reservation=reservation-02
    

REST

  1. Crea una prenotazione denominata reservation-02 con il Campo specificReservationRequired impostato su true.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations
    
    {
      "name":"reservation-02",
      "specificReservation":{
        "count":"10",
        "instanceProperties":{
          "machineType":"n2-standard-32",
          "minCpuPlatform": "Intel Cascade Lake",
        }
      },
      "specificReservationRequired": true
    }
    
  2. Crea una VM che abbia come target reservation-02 per nome utilizzando il campo reservationAffinity.

    Assicurati che le proprietà della VM corrispondano a quelle della prenotazione tra cui zona, tipo di macchina (famiglia di macchine, vCPU e memoria), piattaforma CPU minima, quantità e tipo di GPU e interfaccia SSD locale. dimensioni.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances
    
    {
      "name": "instance-2",
      "machineType": "zones/us-central1-a/machineTypes/n2-standard-32",
      "minCpuPlatform": "Intel Cascade Lake",
      "disks": [
        {
          "boot": true,
          "initializeParams": {
            "sourceImage": "projects/debian-clouid/global/images/family/debian-12"
          }
        }
      ],
      "networkInterfaces": [
        {
          "network": "global/networks/default"
        }
      ],
      "reservationAffinity": {
        "consumeReservationType": "SPECIFIC_RESERVATION",
        "key": "compute.googleapis.com/reservation-name",
        "values": [
          "reservation-02"
        ]
      }
    }
    

Utilizzare una prenotazione condivisa specifica

Per utilizzare una prenotazione condivisa specifica, seleziona una delle seguenti opzioni:

Console

  1. Per creare una prenotazione condivisa con risorse che possono essere utilizzate solo dalle VM che hanno come target specifico questa prenotazione per nome:

    1. Seleziona una delle seguenti opzioni:

      • Per creare una prenotazione autonoma:

        1. Nella console Google Cloud, vai alla pagina Prenotazioni.

          Vai a Prenotazioni

        2. Nella scheda Prenotazioni on demand (predefinita), fai clic su Crea prenotazione.

          Viene visualizzata la pagina Crea una prenotazione.

      • Per creare una prenotazione collegata a un impegno, segui questi passaggi: seguenti:

        1. Nella console Google Cloud, vai alla pagina Sconti per utilizzo vincolato.

          Vai a Sconti per impegno di utilizzo

        2. Fai clic su Acquista impegno.

          Viene visualizzata la pagina Acquista uno sconto per impegno di utilizzo.

        3. Specifica le proprietà dell'impegno. Quindi, nel Nella sezione Prenotazioni, fai clic su Aggiungi un elemento.

          Viene visualizzata la sezione Aggiungi una nuova prenotazione.

          Per ulteriori informazioni su come acquistare un impegno con una prenotazione allegata, consulta la pagina Acquistare impegni con prenotazioni allegate.

    2. Nel campo Nome, inserisci un nome per la prenotazione. Per questo esempio, inserisci reservation-02.

    3. Scegli la Regione e la Zona in cui vuoi prenotare le risorse. Per questo esempio, seleziona us-central1 come regione e us-central1-a come zona.

    4. Per specificare che la tua prenotazione è una prenotazione condivisa, seleziona Condiviso come Tipo di condivisione.

    5. Fai clic su Aggiungi progetti e seleziona i progetti dell'organizzazione del progetto corrente con cui vuoi condividere la prenotazione.

    6. Nella sezione Utilizza con l'istanza VM, seleziona Seleziona prenotazione specifica in modo che solo le VM corrispondenti che hanno come target specifico questa prenotazione per nome possano utilizzarla.

    7. Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare. Per questo esempio, inserisci 10.

    8. Specifica le risorse che vuoi prenotare per ogni VM:

      • Se vuoi prenotare VM che corrispondono a una VM modello di istanza, seleziona Utilizza modello di istanza e seleziona un modello di istanza dall'elenco.
      • Altrimenti, seleziona Specifica il tipo di macchina e specifica il seguenti:
        1. Nei campi Famiglia di macchine, Serie e Tipo di macchina, seleziona una famiglia, una serie e un tipo di macchina.
        2. (Facoltativo) Specifica una piattaforma CPU minima e/o una GPU:
          1. Per espandere la sezione Piattaforma CPU e GPU, fai clic sulla Freccia di espansione .
          2. (Facoltativo) Per specificare una piattaforma CPU minima, nel campo Piattaforma CPU, seleziona un'opzione.
          3. (Facoltativo) Per aggiungere GPU, fai clic su Aggiungi GPU. Quindi, nei campi Tipo di GPU e Numero di GPU, seleziona il tipo e il numero di GPU per ogni VM.
        3. (Facoltativo) Aggiungi SSD locali:
          1. Nel campo Numero di dischi, seleziona il numero di SSD locali per ogni VM.
          2. Nel campo Tipo di interfaccia, seleziona l'interfaccia per le unità SSD locali.

      Per questo esempio, seleziona Specifica il tipo di macchina. Quindi seleziona Tipo di macchina n2-standard-32 per la macchina General-purpose e la serie N2 e selezionare la piattaforma CPU minima Intel Cascade Lake. 1. Completa la creazione della prenotazione:

      • Se stai creando una prenotazione autonoma, fai clic su Crea.

      • Se stai creando una prenotazione collegata a un impegno:

        1. Per completare la specifica delle proprietà per questa prenotazione, fai clic su Fine.
        2. Per completare la creazione dell'impegno e delle prenotazioni allegate, fai clic su Acquista.
  2. Nello stesso progetto o progetto con cui è condivisa la prenotazione, creare una VM che abbia come target quella specifica prenotazione per nome.

    Assicurati che le proprietà della VM corrispondano a quelle della prenotazione specifica, tra cui la zona, il tipo di macchina (famiglia di macchine, vCPU e memoria), la piattaforma CPU minima, la quantità e il tipo di GPU e l'interfaccia e le dimensioni dell'SSD locale.

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

      Vai a Crea un'istanza

      Viene visualizzata la pagina Crea un'istanza.

    2. Specifica un nome per la VM.

    3. Nelle sezioni seguenti, seleziona una configurazione corrisponde esattamente a tutte le proprietà della prenotazione, incluse quelle proprietà facoltative. Per questo esempio, devi associare le seguenti proprietà VM a reservation-02:

      • Regione: us-central1
      • Zona: us-central1-a
      • Tipo di macchina: n2-standard-32
      • Piattaforma CPU minima: Intel Cascade Lake
      • GPU: nessuna
      • SSD locali: nessuna
    4. Espandi la sezione Opzioni avanzate e poi la sezione Gestione. Nell'elenco Prenotazioni, seleziona Seleziona una prenotazione specifica, quindi procedi nel seguente modo:

      1. Seleziona un progetto di prenotazione con prenotazioni condivise con il tuo progetto attuale. Per questo esempio, seleziona il progetto che hai utilizzato per creare reservation-02.
      2. Seleziona il Nome prenotazione della prenotazione condivisa da utilizzare per la VM. Per questo esempio, seleziona reservation-02.
    5. Per creare la VM, fai clic su Crea.

gcloud

  1. Crea una prenotazione denominata reservation-02 con il --require-specific-reservation flag. Queste risorse riservate possono essere utilizzate solo dalle VM che hanno come target specifico questa prenotazione per nome.

    gcloud compute reservations create reservation-02 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform="Intel Cascade Lake" \
        --vm-count=10 \
        --zone=us-central1-a \
        --project=my-owner-project \
        --share-setting=projects \
        --share-with=project-1,project-2 \
        --require-specific-reservation
    
  2. Crea una VM che abbia come target reservation-02 per nome utilizzando Flag --reservation-affinity e --reservation. Per utilizzare questa prenotazione da qualsiasi progetto consumer con cui è condivisa, devi specificare anche il progetto che ha creato la prenotazione, my-owner-project.

    Assicurati che le proprietà della VM corrispondano a quelle della prenotazione tra cui zona, tipo di macchina (famiglia di macchine, vCPU e memoria), piattaforma CPU minima, quantità e tipo di GPU e interfaccia SSD locale. dimensioni.

    gcloud compute instances create instance-2 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform="Intel Cascade Lake" \
        --zone=us-central1-a \
        --reservation-affinity=specific \
        --reservation=projects/my-owner-project/reservations/reservation-02
    

REST

  1. Crea una prenotazione denominata reservation-02 con il Campo specificReservationRequired impostato su true.

    POST https://compute.googleapis.com/compute/v1/projects/my-owner-project/zones/us-central1-a/reservations
    
    {
      "name":"reservation-02",
      "specificReservation":{
        "count":"10",
        "instanceProperties":{
          "machineType":"n2-standard-32",
          "minCpuPlatform": "Intel Cascade Lake"
        }
      },
      "shareSettings": {
        "shareType": "SPECIFIC_PROJECTS",
        "projectMap": {
          "project-1": {
            "projectId": "project-1"
          },
          "project-2": {
            "projectId": "project-2"
          }
        }
      },
      "specificReservationRequired": true
    }
    
  2. Crea una VM che abbia come target reservation-02 per nome utilizzando il campo reservationAffinity. Per utilizzare questa prenotazione da qualsiasi progetto consumer con cui è condivisa, devi anche specificare il progetto proprietario della prenotazione, my-owner-project.

    Assicurati che le proprietà della VM corrispondano a quelle della prenotazione tra cui zona, tipo di macchina (famiglia di macchine, vCPU e memoria), piattaforma CPU minima, quantità e tipo di GPU e interfaccia SSD locale. dimensioni.

    POST https://compute.googleapis.com/compute/v1/projects/project-2/zones/us-central1-a/instances
    
    {
      "name": "instance-2",
      "machineType": "zones/us-central1-a/machineTypes/n2-standard-32",
      "minCpuPlatform": "Intel Cascade Lake",
      "disks": [
        {
          "boot": true,
          "initializeParams": {
            "sourceImage": "projects/debian-clouid/global/images/family/debian-12"
          }
        }
      ],
      "networkInterfaces": [
        {
          "network": "global/networks/default"
        }
      ],
      "reservationAffinity": {
        "consumeReservationType": "SPECIFIC_RESERVATION",
        "key": "compute.googleapis.com/reservation-name",
        "values": [
          "projects/my-owner-project/reservations/reservation-02"
        ]
      }
    }
    

Crea VM senza utilizzare le prenotazioni

Se crei una prenotazione consumata automaticamente, tutte le VM in esecuzione con proprietà corrispondenti nel tuo progetto possono utilizzarla. Per evitare che una o più VM utilizzino la prenotazione, segui questi passaggi:

  • Imposta la proprietà di affinità della prenotazione delle VM in modo che non venga utilizzata in modo esplicito le prenotazioni, come descritto in questa sezione.

  • Assicurati che le VM non corrispondano alle proprietà VM della prenotazione.

Per creare VM che esplicitamente non consumano prenotazioni, seleziona una delle seguenti metodi:

Crea una VM per non consumare prenotazioni

Per creare una VM che non utilizzi esplicitamente le prenotazioni, seleziona una delle le seguenti opzioni:

Console

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

    Vai a Crea un'istanza

  2. Nel campo Nome, inserisci un nome per la VM.

  3. Negli elenchi Regione e Zona, seleziona la regione e la zona in per creare la VM.

  4. Nella sezione Configurazione macchina, specifica il tipo di macchina da per la VM.

  5. Espandi la sezione Opzioni avanzate e poi esegui la seguenti:

    1. Espandi la sezione Gestione.

    2. Nella sezione Prenotazioni, nell'elenco Norme relative alle applicazioni, seleziona Non utilizzare.

  6. Fai clic su Crea.

gcloud

Per creare una VM che non utilizzi esplicitamente le prenotazioni, utilizza Comando gcloud compute instances create con il flag --reservation-affinity=none.

gcloud compute instances create VM_NAME \
    --machine-type=MACHINE_TYPE \
    --reservation-affinity=none \
    --zone=ZONE

Sostituisci quanto segue:

  • VM_NAME: il nome della VM.

  • MACHINE_TYPE: il tipo di macchina da utilizzare per la VM.

  • ZONE: la zona in cui creare la VM.

REST

Per creare una VM che non consuma prenotazioni in modo esplicito, invia una richiesta POST al metodo instances.insert. Nel corpo della richiesta, includi il campo consumeReservationType impostato su NO_RESERVATION.

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

{
  "name": "VM_NAME",
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "disks": [
    {
      "boot": true,
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      }
    }
  ],
  "networkInterfaces": [
    {
      "network": "global/networks/default"
    }
  ],
  "reservationAffinity": {
    "consumeReservationType": "NO_RESERVATION"
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui creare la VM.

  • ZONE: la zona in cui creare la VM.

  • VM_NAME: il nome della VM.

  • MACHINE_TYPE: il tipo di macchina da utilizzare per la VM.

  • IMAGE_PROJECT: il progetto immagine che contiene il sistema operativo immagine, ad esempio debian-cloud. Per ulteriori informazioni sui per i progetti immagine supportati, consulta Immagini pubbliche.

  • IMAGE: specifica una delle seguenti opzioni:

    • Una versione specifica dell'immagine del sistema operativo, ad esempio debian-12-bookworm-v20240617.

    • Una famiglia di immagini, che deve essere formattato come family/IMAGE_FAMILY. Specifica l'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifichi family/debian-12, viene utilizzata la versione più recente della famiglia di immagini Debian 12. Per ulteriori informazioni sull'utilizzo delle immagini le famiglie, vedi Best practice per le famiglie di immagini.

Per ulteriori informazioni sulla creazione di una VM, consulta Creare e avviare un'istanza Compute Engine.

Crea un modello di istanza per non utilizzare prenotazioni

Creare un modello di istanza che crei VM che non consumano in modo esplicito prenotazioni, seleziona una delle seguenti opzioni:

Console

  1. Nella console Google Cloud, vai a Creare un modello di istanza .

    Vai a Creare un modello di istanza

  2. Nel campo Nome, inserisci un nome per il modello di istanza.

  3. Nella sezione Località, specifica se vuoi creare una regionale (predefinito) o globale.

  4. Nella sezione Configurazione macchina, specifica il tipo di macchina da utilizzare per le VM create utilizzando il modello.

  5. Espandi la sezione Opzioni avanzate e segui questi passaggi:

    1. Espandi la sezione Gestione.

    2. Nella sezione Prenotazioni, nell'elenco Norme relative alle applicazioni, seleziona Non utilizzare.

  6. Fai clic su Crea.

gcloud

Creare un modello di istanza che crei VM che non eseguono per consumare prenotazioni, utilizza Comando gcloud compute instances-templates create con il flag --reservation-affinity=none.

Ad esempio, per creare un modello di istanza globale che crei VM che non consumano esplicitamente le prenotazioni, esegui il seguente comando:

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --reservation-affinity=none

Sostituisci quanto segue:

  • INSTANCE_TEMPLATE_NAME: il nome del modello di istanza.

  • MACHINE_TYPE: il tipo di macchina da utilizzare per le VM create utilizzando il modello di istanza.

REST

Creare un modello di istanza che crei VM che non eseguono consumare prenotazioni, effettua una richiesta POST a uno dei seguenti metodi:

Nel corpo della richiesta, includi il campo consumeReservationType e impostalo a NO_RESERVATION.

Ad esempio, per creare un modello di istanza globale che crei VM che non consumano esplicitamente le prenotazioni, effettua una richiesta come segue:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/InstanceTemplates

{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "reservationAffinity": {
      "consumeReservationType": "NO_RESERVATION"
    }
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui creare il modello di istanza.

  • INSTANCE_TEMPLATE_NAME: il nome dell'istanza modello.

  • MACHINE_TYPE: il tipo di macchina da utilizzare per le VM create utilizzando il modello di istanza.

  • IMAGE_PROJECT: il progetto immagine che contiene l'immagine del sistema operativo, ad esempio debian-cloud. Per ulteriori informazioni sui per i progetti immagine supportati, consulta Immagini pubbliche.

  • IMAGE: specifica una delle seguenti opzioni:

    • Una versione specifica dell'immagine del sistema operativo, ad esempio debian-12-bookworm-v20240617.

    • Una famiglia di immagini, che deve essere formattata come family/IMAGE_FAMILY. Questo specifica l'immagine del sistema operativo più recente e non deprecata. Ad esempio, se specifica family/debian-12, la versione più recente in Debian 12 famiglia di immagini. Per ulteriori informazioni sull'utilizzo delle immagini le famiglie, vedi Best practice per le famiglie di immagini.

Per ulteriori informazioni sulla creazione di modelli di istanza, consulta Creare modelli di istanza.

Testare che le proprietà VM corrispondono a una prenotazione

Per verificare se le VM possono consumare automaticamente una prenotazione, puoi creare un della prenotazione come prenotazione specifica e poi vedere se il piano di creazione può utilizzare la prenotazione. Se riesci a creare alla VM, hai verificato che la VM possa consumare correttamente prenotazione. In caso contrario, la creazione della VM non riesce le proprietà non corrispondono o ci sono nessuna risorsa prenotata disponibile. Dopo il test, puoi eseguire una o più delle seguenti operazioni:

Verificare l'utilizzo delle prenotazioni

Per verificare che una VM utilizzi correttamente una prenotazione, utilizza uno dei seguenti metodi:

  • Visualizzare i dettagli della prenotazione prima e dopo la creazione o l'aggiornamento di una VM.

    Se il numero di VM utilizzate da una prenotazione aumenta di 1 dopo la modifica, probabilmente la modifica ha causato l'inizio del consumo della prenotazione da parte della VM. Questo è il metodo più semplice per verificare un consumo della prenotazione, ma potrebbe non funzionano bene per verificare quale VM esatta utilizza una prenotazione.

  • Crea la VM per scegliere come target una prenotazione specifica.

    Se riesci a creare correttamente una VM che ha come target una prenotazione specifica, la VM utilizza la prenotazione. Questo è il metodo più affidabile verificare che una VM specifica utilizzi una prenotazione e che Le proprietà VM corrispondono a una prenotazione.

  • Monitora il consumo delle prenotazioni.

    Utilizzando Cloud Monitoring, puoi accedere e visualizzare le informazioni associate al consumo delle prenotazioni create progetto attuale. Se noti una variazione nelle misurazioni di una prenotazione, significa che una VM ha utilizzato la prenotazione. Questo metodo è utile per verificare la tendenza di consumo di una o più prenotazioni, nonché per ricevere notifiche per prenotazioni sottoutilizzate o inutilizzate.

Se, dopo aver verificato che una VM non utilizza una prenotazione, noti che l'affinità di prenotazione della VM può consumare la prenotazione, ma quest'ultima completamente consumato e la VM e le proprietà della prenotazione corrispondono, consulta la documentazione sulla risoluzione dei problemi Disponibilità delle risorse.

Visualizza i report sull'utilizzo delle prenotazioni

Esporta report dettagliati sull'utilizzo di Compute Engine in un ambiente Cloud Storage utilizzando la funzionalità di esportazione dell'utilizzo. Per le istruzioni, consulta Visualizzare i report sull'utilizzo.

Il report sull'utilizzo mostra quanto segue:

  • Le risorse riservate in uso. Queste voci vengono visualizzate come vCPU normali, risorse di memoria, GPU e SSD locali.
  • Le risorse prenotate che non sono in uso. Queste voci hanno nomi SKU e URI delle risorse di prenotazione normali.
  • Risorse prenotate totali. Queste voci hanno nomi SKU di prenotazione e URI delle risorse di prenotazione. Non sono previsti costi per queste voci. Utilizza queste voci per calcolare quante prenotazioni stai utilizzando.
Misurazione Formato MeasurementId Formato Resource URI
Risorse riservate in uso com.google.cloud/services/compute-engine/SKU_NAME https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/RESOURCE_TYPE/RESOURCE_NAME.

Ad esempio, https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/my-instance
Risorse riservate non in uso com.google.cloud/services/compute-engine/SKU_NAME https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME.

Ad esempio, https://compute.googleapis.com/compute/v1/projects/my-project/zones/europe-west1-b/reservations/my-reservation
Risorse riservate totali com.google.cloud/services/compute-engine/ReservationSKU_NAME https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME.

Ad esempio, https://compute.googleapis.com/compute/v1/projects/my-project/zones/europe-west1-b/reservations/my-reservation

Ad esempio, nel seguente snippet di un report sull'utilizzo per una prenotazione chiamata my-reservation:

  • La riga 1 mostra la RAM riservata attualmente in uso. Il valore ResourceId della riga indica che questa RAM è utilizzata da una VM denominata my-instance.
  • La riga 2 mostra la RAM riservata non in uso. Il valore ResourceId della riga indica che questa RAM riservata è in possesso di my-reservation e non è ancora utilizzata da nessuna VM.
  • La riga 3 mostra la RAM totale prenotata della prenotazione.
Report Date,MeasurementId,Quantity,Unit,Resource URI,ResourceId,Location
2019-06-06,com.google.cloud/services/compute-engine/VmimageN2StandardRam,166970074857472,byte-seconds,https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central2-a/instances/my-instance,1775485842510981624,us-central2-a
2019-06-06,com.google.cloud/services/compute-engine/VmimageN2StandardRam,166970074857472,byte-seconds,https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central2-a/reservations/my-reservation,7.58809E+17,us-central2-a
2019-06-06,com.google.cloud/services/compute-engine/ReservationN2StandardRam,333940149714944,byte-seconds,https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central2-a/reservations/my-reservation,7.58809E+17,us-central2-a
...

Risoluzione dei problemi

Scopri come risolvere i problemi relativi al consumo delle prenotazioni.

Passaggi successivi