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 sull'utilizzo delle prenotazioni in altri prodotti Google Cloud che utilizzano le VM, consulta la documentazione delle prenotazioni per i seguenti prodotti:
- Batch
- Dataflow
- Dataproc
- Google Kubernetes Engine
- Vertex AI:
Prima di iniziare
- Esamina i requisiti e le limitazioni per le prenotazioni.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
Per creare le 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 per consentire alla VM di 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 di lettura e 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 istanze:
compute.instanceTemplates.create
sul progetto 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 utilizzare la prenotazione in base all'ordine di consumo della prenotazione.
Utilizza una prenotazione specifica: la VM può utilizzare solo una prenotazione specifica. La prenotazione non può essere consumata automaticamente.
Questa opzione è utile quando, ad esempio, vuoi mantenere una certa quantità di capacità 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ò consumare alcuna prenotazione: la VM non può consumare alcuna prenotazione.
Questa opzione è utile, ad esempio, quando crei una VM temporanea di cui non vuoi consumare le risorse riservate.
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):
Seleziona il tipo di prenotazione che vuoi creare:
Per creare una prenotazione autonoma:
Nella console Google Cloud, vai alla pagina Prenotazioni.
Nella scheda Prenotazione on demand (predefinita), fai clic su
Crea prenotazione.Viene visualizzata la pagina Crea una prenotazione.
Per creare una prenotazione collegata a un impegno:
Nella console Google Cloud, vai alla pagina Sconti per utilizzo a livello di impegno.
Vai a Sconti per impegno di utilizzo
Viene visualizzata la pagina Elenco impegni.
Fai clic su
Impegno di acquisto.Viene visualizzata la pagina Acquista uno sconto per impegno di utilizzo.
Specifica le proprietà di impegno. Poi, nella sezione Prenotazioni, fai clic su Aggiungi un articolo.
Viene visualizzata la sezione Aggiungi una nuova prenotazione.
Per saperne di più su come acquistare un impegno con una prenotazione allegata, consulta la pagina Acquistare impegni con prenotazioni allegate.
Nel campo Nome, inserisci un nome per la prenotazione. Per questo esempio, inserisci
reservation-01
.Scegli la Regione e la Zona in cui vuoi prenotare le risorse. Per questo esempio, seleziona
us-central1
come regione eus-central1-a
come zona.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 Condivisa. Per condividere questa prenotazione con altri progetti, fai clic su Aggiungi progetti e seleziona i progetti che ti interessano dall'organizzazione del progetto corrente.
Nella sezione Utilizza con l'istanza VM, seleziona Utilizza automaticamente la prenotazione in modo che tutte le VM corrispondenti possano utilizzare automaticamente questa prenotazione.
Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare. Per questo esempio, inserisci
2
.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.
- In caso contrario, seleziona Specifica il tipo di macchina e specifica quanto segue:
- Nei campi Famiglia di macchine, Serie e Tipo di macchina, seleziona una famiglia, una serie e un tipo di macchina.
- (Facoltativo) Specifica una piattaforma CPU e/o GPU minima:
- Per espandere la sezione Piattaforma CPU e GPU, fai clic sulla Freccia di espansione .
- (Facoltativo) Per specificare una piattaforma CPU minima, seleziona un'opzione nell'elenco Piattaforma CPU.
- (Facoltativo) Per aggiungere GPU, fai clic su Aggiungi GPU. Poi, nei campi Tipo di GPU e Numero di GPU, seleziona il tipo e il numero di GPU per ogni VM.
- (Facoltativo) Aggiungi SSD locali:
- Nel campo Numero di dischi, seleziona il numero di SSD locali per ogni VM.
- Nel campo Tipo di interfaccia, seleziona l'interfaccia per le unità SSD locali.
Per questo esempio, seleziona Specifica il tipo di macchina. Quindi, seleziona il tipo di macchina
n2-standard-32
per la famiglia di macchineGeneral-purpose
e la serieN2
e seleziona la piattaforma CPU minimaIntel Cascade Lake
.Completa la creazione della prenotazione:
Se stai creando una prenotazione autonoma, fai clic su Crea.
Se stai creando una prenotazione collegata a un impegno:
- Per completare la specifica delle proprietà per questa prenotazione, fai clic su Fine.
- Per completare la creazione dell'impegno e delle prenotazioni allegate, fai clic su Acquista.
Nello stesso progetto o in un progetto con cui la prenotazione è condivisa, crea una VM che abbia come target qualsiasi prenotazione aperta.
Assicurati che le proprietà della VM corrispondano a quelle della VM in
reservation-01
, incluse 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 ulteriori informazioni su come creare una VM, consulta Creare e avviare una VM
Nella console Google Cloud, vai alla pagina Crea un'istanza.
Viene visualizzata la pagina Crea un'istanza.
Specifica un nome per la VM.
Nelle sezioni seguenti, seleziona una configurazione che corrisponde esattamente a tutte le proprietà della prenotazione, incluse quelle 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
- Regione:
Espandi la sezione Opzioni avanzate e poi la sezione Gestione. Nell'elenco Prenotazioni, seleziona Usa automaticamente la prenotazione creata.
Per creare la VM, fai clic su Crea.
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
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 e la quantità e l'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
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", } } }
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 e 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" } }
- Nella console Google Cloud, seleziona la casella di controllo Seleziona una prenotazione specifica.
- Nell'interfaccia alla gcloud CLI, includi il
--require-specific-reservation
flag. - Nell'API Compute Engine, imposta il campo
specificReservationRequired
sutrue
. - In Terraform, imposta il campo
specific_reservation_required
sutrue
. Per creare una prenotazione con risorse che possono essere utilizzate solo dalle VM che scelgono come target specifico la prenotazione per nome:
Seleziona una delle seguenti opzioni:
Per creare una prenotazione autonoma:
Nella console Google Cloud, vai alla pagina Prenotazioni.
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:
Nella console Google Cloud, vai alla pagina Sconti per utilizzo a livello di impegno.
Fai clic su
Impegno di acquisto.Viene visualizzata la pagina Acquista uno sconto per impegno di utilizzo.
Specifica le proprietà di impegno. Poi, nella sezione Prenotazioni, fai clic su Aggiungi un articolo.
Viene visualizzata la sezione Aggiungi una nuova prenotazione.
Per saperne di più su come acquistare un impegno con una prenotazione allegata, consulta la pagina Acquistare impegni con prenotazioni allegate.
Nel campo Nome, inserisci un nome per la prenotazione. Per questo esempio, inserisci
reservation-02
.Scegli la Regione e la Zona in cui vuoi prenotare le risorse. Per questo esempio, seleziona
us-central1
come regione eus-central1-a
come zona.Per specificare che la prenotazione sarà per un singolo progetto, seleziona Locale come Tipo di condivisione.
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.
Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare. Per questo esempio, inserisci
10
.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.
- In caso contrario, seleziona Specifica il tipo di macchina e specifica quanto segue:
- Nei campi Famiglia di macchine, Serie e Tipo di macchina, seleziona una famiglia, una serie e un tipo di macchina.
- (Facoltativo) Specifica una piattaforma CPU e/o GPU minima:
- Per espandere la sezione Piattaforma CPU e GPU, fai clic sulla Freccia di espansione .
- (Facoltativo) Per specificare una piattaforma CPU minima, seleziona un'opzione nell'elenco Piattaforma CPU.
- (Facoltativo) Per aggiungere GPU, fai clic su Aggiungi GPU. Poi, nei campi Tipo di GPU e Numero di GPU, seleziona il tipo e il numero di GPU per ogni VM.
- (Facoltativo) Aggiungi SSD locali:
- Nel campo Numero di dischi, seleziona il numero di SSD locali per ogni VM.
- Nel campo Tipo di interfaccia, seleziona l'interfaccia per le unità SSD locali.
Per questo esempio, seleziona Specifica il tipo di macchina. Quindi, seleziona il tipo di macchina
n2-standard-32
per la famiglia di macchineGeneral-purpose
e la serieN2
e seleziona la piattaforma CPU minimaIntel Cascade Lake
.Completa la creazione della prenotazione:
Se stai creando una prenotazione autonoma, fai clic su Crea.
Se stai creando una prenotazione collegata a un impegno:
- Per completare la specifica delle proprietà per questa prenotazione, fai clic su Fine.
- Per completare la creazione dell'impegno e delle prenotazioni allegate, fai clic su Acquista.
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 le dimensioni e l'interfaccia dell'SSD locale.
Per ulteriori informazioni su come creare una VM, consulta Creare e avviare una VM.
Nella console Google Cloud, vai alla pagina Crea un'istanza.
Nel campo Nome, inserisci un nome per la VM.
Nelle sezioni seguenti, seleziona una configurazione che corrisponde esattamente a tutte le proprietà della prenotazione, incluse quelle 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
- Regione:
Espandi la sezione Opzioni avanzate e segui questi passaggi:
Espandi la sezione Gestione.
Nella sezione Prenotazioni, nell'elenco Criteri di applicazione, seleziona Seleziona una prenotazione specifica.
Seleziona la prenotazione con le proprietà VM corrispondenti che vuoi che la tua VM utilizzi. Per questo esempio, seleziona
reservation-02
.
Per creare la VM, fai clic su Crea.
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
Crea una VM che abbia come target
reservation-02
per nome utilizzando i flag--reservation-affinity
e--reservation
.Assicurati che le proprietà della VM corrispondano a quelle della prenotazione, 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é l'interfaccia e le dimensioni dell'SSD locale.
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
Crea una prenotazione denominata
reservation-02
con ilspecificReservationRequired
impostato sutrue
.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 }
Crea una VM che abbia come target
reservation-02
per nome utilizzando il camporeservationAffinity
.Assicurati che le proprietà della VM corrispondano a quelle della prenotazione, 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é l'interfaccia e le dimensioni dell'SSD locale.
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" ] } }
Per creare una prenotazione condivisa con risorse che possono essere utilizzate solo dalle VM che hanno come target specifico questa prenotazione per nome, segui questi passaggi:
Seleziona una delle seguenti opzioni:
Per creare una prenotazione autonoma:
Nella console Google Cloud, vai alla pagina Prenotazioni.
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:
Nella console Google Cloud, vai alla pagina Sconti per utilizzo a livello di impegno.
Fai clic su
Impegno di acquisto.Viene visualizzata la pagina Acquista uno sconto per impegno di utilizzo.
Specifica le proprietà di impegno. Poi, nella sezione Prenotazioni, fai clic su Aggiungi un articolo.
Viene visualizzata la sezione Aggiungi una nuova prenotazione.
Per saperne di più su come acquistare un impegno con una prenotazione allegata, consulta la pagina Acquistare impegni con prenotazioni allegate.
Nel campo Nome, inserisci un nome per la prenotazione. Per questo esempio, inserisci
reservation-02
.Scegli la Regione e la Zona in cui vuoi prenotare le risorse. Per questo esempio, seleziona
us-central1
come regione eus-central1-a
come zona.Per specificare che la prenotazione è condivisa, seleziona Condivisa come Tipo di condivisione.
Fai clic su
Aggiungi progetti e seleziona i progetti dell'organizzazione del progetto corrente con cui vuoi condividere la prenotazione.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.
Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare. Per questo esempio, inserisci
10
.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.
- In caso contrario, seleziona Specifica il tipo di macchina e specifica quanto segue:
- Nei campi Famiglia di macchine, Serie e Tipo di macchina, seleziona una famiglia, una serie e un tipo di macchina.
- (Facoltativo) Specifica una piattaforma CPU e/o GPU minima:
- Per espandere la sezione Piattaforma CPU e GPU, fai clic sulla Freccia di espansione .
- (Facoltativo) Per specificare una piattaforma CPU minima, seleziona un'opzione nell'elenco Piattaforma CPU.
- (Facoltativo) Per aggiungere GPU, fai clic su Aggiungi GPU. Poi, nei campi Tipo di GPU e Numero di GPU, seleziona il tipo e il numero di GPU per ogni VM.
- (Facoltativo) Aggiungi SSD locali:
- Nel campo Numero di dischi, seleziona il numero di SSD locali per ogni VM.
- Nel campo Tipo di interfaccia, seleziona l'interfaccia per le unità SSD locali.
Per questo esempio, seleziona Specifica il tipo di macchina. Quindi, seleziona il tipo di macchina
n2-standard-32
per la famiglia di macchineGeneral-purpose
e la serieN2
e seleziona la piattaforma CPU minimaIntel 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:
- Per completare la specifica delle proprietà per questa prenotazione, fai clic su Fine.
- Per completare la creazione dell'impegno e delle prenotazioni allegate, fai clic su Acquista.
Nello stesso progetto o in un progetto con cui la prenotazione è condivisa, 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 le dimensioni e l'interfaccia dell'SSD locale.
Nella console Google Cloud, vai alla pagina Crea un'istanza.
Viene visualizzata la pagina Crea un'istanza.
Specifica un nome per la VM.
Nelle sezioni seguenti, seleziona una configurazione che corrisponde esattamente a tutte le proprietà della prenotazione, incluse quelle 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
- Regione:
Espandi la sezione Opzioni avanzate e poi la sezione Gestione. Nell'elenco Prenotazioni, seleziona Seleziona una prenotazione specifica e poi procedi nel seguente modo:
- Seleziona un progetto di prenotazione con prenotazioni condivise con il tuo progetto attuale. Per questo esempio, seleziona il progetto utilizzato per creare
reservation-02
. - Seleziona il nome della prenotazione della prenotazione condivisa
che vuoi che venga utilizzata da questa VM. Per questo esempio, seleziona
reservation-02
.
- Seleziona un progetto di prenotazione con prenotazioni condivise con il tuo progetto attuale. Per questo esempio, seleziona il progetto utilizzato per creare
Per creare la VM, fai clic su Crea.
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
Crea una VM che abbia come target
reservation-02
per nome utilizzando i 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 la zona, il tipo di macchina (famiglia di macchine, vCPU e memoria), la piattaforma CPU minima, la quantità e il tipo di GPU, nonché l'interfaccia e le dimensioni dell'SSD locale.
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
Crea una prenotazione denominata
reservation-02
con ilspecificReservationRequired
impostato sutrue
.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 }
Crea una VM che abbia come target
reservation-02
per nome utilizzando il camporeservationAffinity
. 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 la zona, il tipo di macchina (famiglia di macchine, vCPU e memoria), la piattaforma CPU minima, la quantità e il tipo di GPU, nonché l'interfaccia e le dimensioni dell'SSD locale.
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" ] } }
Imposta la proprietà di affinità di prenotazione delle VM in modo che non consumi esplicitamente alcuna prenotazione come descritto in questa sezione.
Assicurati che le VM non corrispondano alle proprietà VM della prenotazione.
Nella console Google Cloud, vai alla pagina Crea un'istanza.
Nel campo Nome, inserisci un nome per la VM.
Negli elenchi Regione e Zona, seleziona la regione e la zona in cui creare la VM.
Nella sezione Configurazione macchina, specifica il tipo di macchina da utilizzare per la VM.
Espandi la sezione Opzioni avanzate e segui questi passaggi:
Espandi la sezione Gestione.
Nella sezione Prenotazioni, nell'elenco Norme relative alle applicazioni, seleziona Non utilizzare.
Fai clic su Crea.
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.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 l'immagine del sistema operativo, ad esempiodebian-cloud
. Per saperne di più sui progetti di immagini 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
. Specifica l'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifichifamily/debian-12
, viene utilizzata la versione più recente della famiglia di immagini Debian 12. Per saperne di più sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.
Nella console Google Cloud, vai alla pagina Crea un modello di istanza.
Nel campo Nome, inserisci un nome per il modello di istanza.
Nella sezione Località, specifica se vuoi creare un modello di istanza regionale (predefinito) o globale.
Nella sezione Configurazione macchina, specifica il tipo di macchina da utilizzare per le VM create utilizzando il modello.
Espandi la sezione Opzioni avanzate e segui questi passaggi:
Espandi la sezione Gestione.
Nella sezione Prenotazioni, nell'elenco Norme relative alle applicazioni, seleziona Non utilizzare.
Fai clic su Crea.
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.Per creare un modello di istanza globale:
instanceTemplates.insert
metodo.Per creare un modello di istanza regionale: metodo
regionInstanceTemplates.insert
.PROJECT_ID
: l'ID del progetto in cui creare il modello di istanza.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.IMAGE_PROJECT
: il progetto immagine che contiene l'immagine del sistema operativo, ad esempiodebian-cloud
. Per saperne di più sui progetti di immagini 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
. Specifica l'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifichifamily/debian-12
, viene utilizzata la versione più recente della famiglia di immagini Debian 12. Per saperne di più sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.
Elimina o aggiorna la prenotazione specifica che hai utilizzato per i test.
Elimina la VM o aggiornala in modo da avere un'affinità di prenotazione diversa (
reservationAffinity
).Visualizzare i dettagli della prenotazione
Se il numero di VM che utilizzano una prenotazione aumenta di 1 dopo aver creato o aggiornato una VM, è probabile che la tua azione abbia causato l'inizio dell'utilizzo della prenotazione da parte della VM. Questo è il modo più rapido per verificare se una prenotazione è in corso di utilizzo. Tuttavia, potrebbe non essere efficace per verificare quale VM esatta sta utilizzando la prenotazione.
Crea la VM da scegliere come target per una prenotazione specifica
Se riesci a creare una VM che ha come target una prenotazione specifica, significa che la VM sta utilizzando la prenotazione. Questo è il metodo più affidabile per verificare che una VM specifica stia utilizzando una prenotazione e che le proprietà della VM corrispondano a quelle della prenotazione.
Monitorare il consumo delle prenotazioni
Utilizzando Cloud Monitoring, puoi accedere e visualizzare le informazioni associate al consumo delle prenotazioni create nel tuo progetto. Il monitoraggio aggiorna i dati sul consumo delle prenotazioni almeno ogni 30 minuti. Questo metodo è utile per verificare la tendenza di consumo di una o più prenotazioni in un progetto, nonché per ricevere notifiche per prenotazioni sottoutilizzate o inutilizzate.
Visualizzare l'utilizzo storico delle prenotazioni
Utilizzando Capacity Planner (Preview), puoi accedere e visualizzare l'utilizzo storico delle prenotazioni dalla loro creazione fino alla loro eliminazione. Lo strumento di pianificazione della capacità aggiorna i dati sul consumo delle prenotazioni ogni 24 ore. Questo metodo è utile per verificare il consumo passato delle prenotazioni all'interno di un progetto, di una cartella o di un'organizzazione, nonché per aiutarti a pianificare le esigenze di capacità future.
- Le risorse prenotate in uso. Queste voci vengono visualizzate come normali risorse vCPU, memoria, GPU e SSD locali.
- Le risorse prenotate non 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 di risorse di prenotazione. Non sono previsti costi per queste voci. Utilizza queste voci per calcolare quante prenotazioni stai utilizzando.
- La riga 1 mostra la RAM prenotata attualmente in uso. Il valore
ResourceId
della riga indica che questa RAM è utilizzata da una VM denominatamy-instance
. - La riga 2 mostra la RAM riservata non in uso. Il valore
ResourceId
della riga indica che questa RAM riservata è in possesso dimy-reservation
e non è ancora utilizzata da nessuna VM. - La riga 3 mostra la RAM totale prenotata della prenotazione.
- Scopri come monitorare il consumo delle prenotazioni.
- Scopri come modificare le prenotazioni.
- Scopri come eliminare le prenotazioni.
Vai
Per utilizzare gli Go esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Java
Per utilizzare gli Java esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Node.js
Per utilizzare gli Node.js esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Python
Per utilizzare gli Python esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
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, consulta Eseguire 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 visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per utilizzare le prenotazioni sono necessarie le seguenti autorizzazioni:
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Utilizzare VM riservate
Quando crei un'istanza di una macchina virtuale (VM), la VM inizia a utilizzare una prenotazione solo se le proprietà della VM e della prenotazione sono corrispondenti. Inoltre, devi impostare la proprietà di affinità di prenotazione della VM su una delle seguenti opzioni:
Utilizza le VM di 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 consumare le prenotazioni condivise. Per maggiori informazioni su come vengono consumate automaticamente le prenotazioni, consulta Ordine di consumo.
Quando crei una prenotazione, questo è il modello di consumo predefinito, a condizione che non utilizzi il flag o l'opzione che indica che sono obbligatorie prenotazioni specifiche.
Console
gcloud
Vai
Java
Node.js
Python
REST
Utilizzare le VM da una prenotazione specifica
In questo modello di consumo, solo le nuove VM che hanno come target una prenotazione specifica per nome possono utilizzarla e 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:
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 gruppo di istanze gestite regionale, crea prenotazioni identiche con lo stesso nome in ogni 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 utilizzare una prenotazione per un singolo progetto specifico o utilizzare una prenotazione condivisa specifica.
Utilizzare una prenotazione specifica per un singolo progetto
Per utilizzare una prenotazione per un singolo progetto specifico, seleziona una delle seguenti opzioni:
Console
gcloud
Vai
Java
Node.js
Python
REST
Utilizzare una prenotazione condivisa specifica
Per utilizzare una prenotazione condivisa specifica, seleziona una delle seguenti opzioni:
Console
gcloud
Vai
Java
Python
REST
Creare 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 impedire a una o più VM di utilizzare la prenotazione, procedi nel seguente modo:
Per creare VM che non consumano esplicitamente le prenotazioni, seleziona uno dei seguenti metodi:
Crea una VM per non consumare prenotazioni
Per creare una VM che non utilizza esplicitamente le prenotazioni, seleziona una delle seguenti opzioni:
Console
gcloud
Per creare una VM che non consuma esplicitamente le prenotazioni, utilizza il 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:
Vai
Java
Node.js
Python
REST
Per creare una VM che non consuma prenotazioni in modo esplicito, invia una richiesta
POST
al metodoinstances.insert
. Nel corpo della richiesta, includi il campoconsumeReservationType
impostato suNO_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:
Per ulteriori informazioni sulla creazione di una VM, consulta Creare e avviare un'istanza Compute Engine.
Crea un modello di istanza per non consumare prenotazioni
Per creare un modello di istanza che crei VM che non consumano esplicitamente le prenotazioni, seleziona una delle seguenti opzioni:
Console
gcloud
Per creare un modello di istanza che crei VM che non consumano esplicitamente le prenotazioni, utilizza il 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:
Vai
Java
Node.js
Python
REST
Per creare un modello di istanza che crei VM che non consumano esplicitamente le prenotazioni, invia una richiesta
POST
a uno dei seguenti metodi:Nel corpo della richiesta, includi il campo
consumeReservationType
e impostalo suNO_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:
Per saperne di più sulla creazione di modelli di istanze, consulta Creare modelli di istanze.
Verificare che le proprietà della VM corrispondano a una prenotazione
Per verificare se le VM possono utilizzare automaticamente una prenotazione, puoi creare una copia della prenotazione come prenotazione specifica e poi verificare se una VM che prevedi di creare può utilizzarla. Se riesci a creare correttamente la VM, significa che hai verificato che la VM può utilizzare correttamente la prenotazione corrispondente. In caso contrario, la creazione della VM non riesce perché le proprietà non corrispondono o non sono presenti risorse riservate disponibili. Dopo il test, puoi eseguire una o più delle seguenti operazioni:
Verificare il consumo delle prenotazioni
Per assicurarti che le VM consumino efficacemente le prenotazioni, puoi verificarne il consumo utilizzando i seguenti metodi:
Se noti che una VM non utilizza una prenotazione dopo aver verificato che l'affinità della prenotazione della VM può utilizzare la prenotazione, la prenotazione non è stata completamente utilizzata e le proprietà della VM e della prenotazione corrispondono, consulta Disponibilità delle risorse.
Visualizzare i report sull'utilizzo delle prenotazioni
Esporta report dettagliati sull'utilizzo di Compute Engine in un bucket 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:
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 prenotate 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
: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
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-12-22 UTC.
-