Questo documento spiega come creare una prenotazione per un singolo progetto, che può essere utilizzata solo dalle istanze di macchine virtuali (VM) nello stesso progetto. Per scoprire di più sulle prenotazioni, consulta Prenotazioni di risorse di zona di Compute Engine.
Per altri metodi di creazione delle prenotazioni, consulta le seguenti pagine:
Se hai impegni di 1 o 3 anni nel progetto attuale, le risorse prenotate riceveranno automaticamente eventuali sconti per impegno di utilizzo applicabili. Puoi anche creare e collegare una prenotazione a un impegno quando lo acquisti. Per scoprire di più, consulta Collegare le prenotazioni agli impegni.
Per creare una prenotazione che può essere utilizzata da più progetti, consulta Creare una prenotazione condivisa.
Prima di iniziare
- Esamina i requisiti e le limitazioni per le prenotazioni.
-
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
-
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
- Imposta una regione e una zona predefinite.
Terraform
Per utilizzare gli esempi Terraform in questa pagina da un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
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
-
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare prenotazioni per singoli progetti,
chiedi all'amministratore di concederti il ruolo IAM
Amministratore Compute (roles/compute.admin
) per il progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Questo ruolo predefinito contiene le autorizzazioni necessarie per creare prenotazioni per singoli progetti. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per creare prenotazioni per un singolo progetto sono necessarie le seguenti autorizzazioni:
-
compute.reservations.create
sul progetto -
Per specificare un modello di istanza:
compute.instanceTemplates.useReadOnly
sul modello di istanza
Potresti anche essere in grado di ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.
Crea una prenotazione per un singolo progetto
Questa sezione spiega come creare prenotazioni per un singolo progetto.
Per utilizzare una prenotazione, una VM deve avere proprietà che corrispondono esattamente alla prenotazione. Per specificare le proprietà delle VM da prenotare, seleziona una delle seguenti sezioni di questo documento:
Opzione consigliata: Specifica un modello di istanza
Questa sezione spiega come utilizzare un modello di istanza per definire le proprietà di una prenotazione. Utilizzando un modello di istanza, puoi definire le proprietà di una prenotazione e le VM che possono utilizzare la prenotazione nella stessa posizione.
Specificare direttamente le proprietà
Questa sezione spiega come definire direttamente le proprietà di una prenotazione. Questo metodo richiede di assicurarti manualmente che le proprietà delle VM e delle prenotazioni corrispondano esattamente e che tutte le le proprietà non corrispondenti impediscono il consumo.
Per impostazione predefinita, una prenotazione può essere utilizzata automaticamente da qualsiasi VM con proprietà corrispondenti. Se vuoi controllare l'utilizzo delle prenotazioni, esegui una o più delle seguenti operazioni:
Crea una prenotazione che possa essere utilizzata solo dalle VM che la scelgono come target in modo specifico, come spiegato nelle sezioni seguenti di questo documento. Quindi, configura le VM per utilizzare quella specifica prenotazione.
Configura le VM che non possono utilizzare alcuna prenotazione.
Inoltre, puoi specificare un criterio di posizionamento compatto durante la creazione di una prenotazione per un singolo progetto. Un criterio di posizionamento compatto specifica che le VM devono essere posizionate il più vicino possibile le une alle altre per ridurre la latenza di rete.
Specifica un modello di istanza
Per creare una prenotazione per un singolo progetto specificando un modello di istanza, utilizza la console Google Cloud, gcloud CLI o REST.
Console
Per creare una prenotazione per un singolo progetto specificando un modello di istanza:
Nella console Google Cloud, vai alla pagina Prenotazioni.
Fai clic su
Crea prenotazione.Viene visualizzata la pagina Crea una prenotazione.
Nel campo Nome, inserisci un nome per la prenotazione.
Seleziona la regione e la zona in cui vuoi prenotare le risorse.
Nella sezione Tipo di condivisione, fai clic su Locale (impostazione predefinita).
Nella sezione Utilizza con istanza VM, seleziona una delle seguenti opzioni:
Per consentire alle VM corrispondenti di consumare automaticamente questa prenotazione, fai clic su Utilizza prenotazione automaticamente (impostazione predefinita).
Per utilizzare le risorse di questa prenotazione solo quando crei VM corrispondenti che hanno come target specificamente questa prenotazione per nome, fai clic su Seleziona prenotazione specifica.
Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare.
Nella sezione Configurazione macchina, segui questi passaggi:
Per specificare le proprietà delle VM da un modello di istanza esistente, seleziona Utilizza modello di istanza.
Nel campo Modello di istanza, seleziona il modello di istanza che preferisci. Se selezioni un modello di istanza a livello di regione, puoi prenotare risorse solo all'interno della regione del modello di istanza.
Nella sezione Eliminazione automatica, puoi abilitare l'opzione di eliminazione automatica per consentire a Compute Engine di eliminare automaticamente la prenotazione in una data e un orario specifici. L'eliminazione automatica delle prenotazioni può essere utile per evitare addebiti inutili quando smetti di utilizzare la prenotazione.
Per creare la prenotazione, fai clic su Crea.
Si apre la pagina Prenotazioni. La creazione della prenotazione per un singolo progetto potrebbe richiedere fino a un minuto.
gcloud
Per creare una prenotazione per un singolo progetto specificando un modello di istanza, utilizza il comando gcloud compute reservations create
.
Per creare una prenotazione per un singolo progetto specificando un modello di istanza senza flag facoltativi, esegui questo comando:
gcloud compute reservations create RESERVATION_NAME \
--project=PROJECT_ID \
--source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
--vm-count=NUMBER_OF_VMS \
--zone=ZONE
Sostituisci quanto segue:
RESERVATION_NAME
: il nome della prenotazione da creare.PROJECT_ID
: l'ID del progetto in cui vuoi prenotare le risorse e dove esiste il modello di istanza.LOCATION
: la posizione del modello di istanza. Specifica uno dei seguenti valori:Per un modello di istanza globale:
global
.Per un modello di istanza a livello di regione:
regions/REGION
. SostituisciREGION
con la regione in cui si trova il modello di istanza. Se specifichi un modello di istanza a livello di regione, puoi prenotare le VM solo all'interno della regione del modello di istanza.
INSTANCE_TEMPLATE_NAME
: il nome di un modello di istanza esistente. Se specifichi un modello di istanza che include un criterio di posizionamento compatto, devi specificare il flag--require-specific-reservation
. Questo indica che solo le VM che hanno come target specificamente questa prenotazione possono utilizzarla.NUMBER_OF_VMS
: il numero di VM da prenotare.ZONE
: la zona in cui prenotare le risorse.
Ad esempio, per creare una prenotazione per dieci VM nella zona us-central1-a
specificando un modello di istanza globale, esegui questo comando:
gcloud compute reservations create my-reservation \
--project=example-project \
--source-instance-template=projects/example-project/global/example-instance-template \
--vm-count=10 \
--zone=us-central1-a
Facoltativamente, puoi eseguire una o più delle seguenti operazioni:
Per specificare che solo le VM che hanno come target specificamente questa prenotazione possono utilizzarla, includi il flag
--require-specific-reservation
.gcloud compute reservations create example-reservation \ --require-specific-reservation \ ...
Per consentire a Compute Engine di eliminare automaticamente la prenotazione, seleziona uno dei seguenti metodi:
Per eliminare la prenotazione in una data e un'ora specifiche, utilizza il comando
gcloud beta compute reservations create
e includi il flag--delete-at-time
.gcloud beta compute reservations create reservation-example \ --delete-at-time=DELETE_AT_TIME \ ...
Sostituisci
DELETE_AT_TIME
con una data e un'ora formattate come timestamp RFC 3339, che deve essere il seguente:YYYY-MM-DDTHH:MM:SSOFFSET
Sostituisci quanto segue:
YYYY-MM-DD
: una data formattata come giorno del mese a 4 cifre, a 2 cifre e mese a 2 cifre, separate da trattini (-
).HH:MM:SS
: un'ora formattata come ora a due cifre con formato di 24 ore, minuti a due cifre e secondi a due cifre, separati dai due punti (:
).OFFSET
: il fuso orario formattato come offset del Tempo coordinato universale (UTC). Ad esempio, per utilizzare il fuso orario PST (Pacific Standard Time), specifica-08:00
. In alternativa, per non usare alcun offset, specificaZ
.
Per eliminare la prenotazione dopo un determinato periodo di tempo, utilizza il comando
gcloud beta compute reservations create
e includi il flag--delete-after-duration
.gcloud beta compute reservations create reservation-example \ --delete-after-duration=DELETE_AFTER_DURATION \ ...
Sostituisci
DELETE_AFTER_DURATION
con una durata espressa in giorni, ore, minuti o secondi. Ad esempio, specifica30m
per 30 minuti o1d2h3m4s
per 1 giorno, 2 ore, 3 minuti e 4 secondi.
REST
Per creare una prenotazione per un singolo progetto specificando un modello di istanza, effettua una richiesta POST
al metodo reservations.insert
.
Per creare una prenotazione per un singolo progetto specificando un modello di istanza senza flag facoltativi, effettua la seguente richiesta POST
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations
{
"name": "RESERVATION_NAME",
"specificReservation": {
"count": "NUMBER_OF_VMS",
"sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME"
}
}
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto in cui vuoi prenotare le risorse e dove esiste il modello di istanza.ZONE
: la zona in cui prenotare le risorse.RESERVATION_NAME
: il nome della prenotazione da creare.NUMBER_OF_VMS
: il numero di VM da prenotare.LOCATION
: la posizione del modello di istanza. Specifica uno dei seguenti valori:Per un modello di istanza globale:
global
.Per un modello di istanza a livello di regione:
regions/REGION
. SostituisciREGION
con la regione in cui si trova il modello di istanza. Se specifichi un modello di istanza a livello di regione, puoi prenotare le VM solo all'interno della regione del modello di istanza.
INSTANCE_TEMPLATE_NAME
: il nome di un modello di istanza esistente. Se specifichi un modello di istanza che include un criterio di posizionamento compatto, devi specificare il campospecificReservationRequired
nel corpo della richiesta e impostarlo sutrue
. Questo indica che solo le VM che hanno come target questa prenotazione possono utilizzarla.
Ad esempio, per creare una prenotazione per dieci VM nella zona us-central1-a
specificando un modello di istanza globale, effettua la seguente richiesta POST
:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations
{
"name": "my-reservation",
"specificReservation": {
"count": "10",
"sourceInstanceTemplate": "projects/example-project/global/instanceTemplates/example-instance-template"
}
}
Facoltativamente, puoi eseguire una o più delle seguenti operazioni:
Per specificare che solo le VM che hanno come target specificamente questa prenotazione possono utilizzarla, includi il campo
specificReservationRequired
nel corpo della richiesta e impostalo sutrue
.POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "specificReservationRequired": true, ... }
Per consentire a Compute Engine di eliminare automaticamente la prenotazione, seleziona uno dei seguenti metodi:
Per eliminare la prenotazione in una data e un'ora specifiche, effettua una richiesta
POST
utilizzando il metodobeta.reservations.insert
. Nel corpo della richiesta, includi il campodeleteAtTime
.POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "deleteAtTime": "DELETE_AT_TIME", ... }
Sostituisci
DELETE_AT_TIME
con una data e un'ora formattate come timestamp RFC 3339, che deve essere il seguente:YYYY-MM-DDTHH:MM:SSOFFSET
Sostituisci quanto segue:
YYYY-MM-DD
: una data formattata come giorno del mese a 4 cifre, a 2 cifre e mese a 2 cifre, separate da trattini (-
).HH:MM:SS
: un'ora formattata come ora a due cifre con formato di 24 ore, minuti a due cifre e secondi a due cifre, separati dai due punti (:
).OFFSET
: il fuso orario formattato come offset del Tempo coordinato universale (UTC). Ad esempio, per utilizzare il fuso orario PST (Pacific Standard Time), specifica-08:00
. In alternativa, per non usare alcun offset, specificaZ
.
Per eliminare la prenotazione dopo una durata specifica, effettua una richiesta
POST
utilizzando il metodobeta.reservations.insert
. Nel corpo della richiesta, includi il campodeleteAfterDuration
.POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "deleteAfterDuration": { "seconds": "DELETE_AFTER_DURATION" }, ... }
Sostituisci
DELETE_AFTER_DURATION
con una durata in secondi. Ad esempio, specifica86400
per 86.400 secondi (1 giorno).
Specifica direttamente le proprietà
Per creare una prenotazione per un singolo progetto specificando direttamente le proprietà, utilizza la console Google Cloud, gcloud CLI, Terraform o REST.
Console
Per creare una prenotazione per un singolo progetto:
Nella console Google Cloud, vai alla pagina Prenotazioni.
Fai clic su
Crea prenotazione.Viene visualizzata la pagina Crea una prenotazione.
Nel campo Nome, inserisci un nome per la prenotazione.
Seleziona la regione e la zona in cui vuoi prenotare le risorse.
Nella sezione Tipo di condivisione, fai clic su Locale (impostazione predefinita).
Nella sezione Utilizza con istanza VM, seleziona una delle seguenti opzioni:
Per consentire alle VM corrispondenti di consumare automaticamente questa prenotazione, fai clic su Utilizza prenotazione automaticamente (impostazione predefinita).
Per utilizzare le risorse di questa prenotazione solo quando crei VM corrispondenti che hanno come target specificamente questa prenotazione per nome, fai clic su Seleziona prenotazione specifica.
Nel campo Numero di istanze VM, inserisci il numero di VM che vuoi prenotare.
Nella sezione Configurazione macchina, seleziona Specifica il tipo di macchina, quindi specifica quanto segue:
Nei campi Famiglia di macchine, Serie e Tipo di macchina, seleziona una famiglia di macchine, una serie e un tipo di macchina.
(Facoltativo) Per specificare una piattaforma CPU e/o una GPU minima, segui questi passaggi:
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. Quindi, nei campi Tipo di GPU e Numero di GPU, seleziona il tipo e il numero di GPU per ogni VM.
(Facoltativo) Per aggiungere 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 SSD locali.
(Facoltativo) Per specificare un criterio di posizionamento compatto per una prenotazione che soddisfi i requisiti, fai clic sull'elenco Seleziona o crea un criterio di posizionamento del gruppo, quindi esegui una delle seguenti operazioni:
Per creare un criterio di posizionamento compatto da specificare in questa prenotazione, segui questi passaggi:
Fai clic su Crea criterio di posizionamento del gruppo.
Viene visualizzato il riquadro Crea un criterio di posizionamento del gruppo.
Nel campo Nome criterio, inserisci un nome per il criterio.
Fai clic su Crea.
La creazione del criterio di posizionamento compatto potrebbe richiedere alcuni secondi.
In caso contrario, seleziona un criterio di posizionamento compatto esistente.
Nella sezione Eliminazione automatica, puoi abilitare l'opzione di eliminazione automatica per consentire a Compute Engine di eliminare automaticamente la prenotazione in una data e un orario specifici. L'eliminazione automatica delle prenotazioni può essere utile per evitare addebiti inutili quando smetti di utilizzare la prenotazione.
Per creare la prenotazione, fai clic su Crea.
La creazione della prenotazione per un singolo progetto potrebbe richiedere un po' di tempo. Questa azione ti reindirizza alla pagina Prenotazioni.
gcloud
Per creare una prenotazione per un singolo progetto, utilizza il comando gcloud compute reservations create
.
Per creare una prenotazione per un singolo progetto senza flag facoltativi, esegui questo comando:
gcloud compute reservations create RESERVATION_NAME \
--machine-type=MACHINE_TYPE \
--project=PROJECT_ID \
--vm-count=NUMBER_OF_VMS \
--zone=ZONE
Sostituisci quanto segue:
RESERVATION_NAME
: il nome della prenotazione da creare.MACHINE_TYPE
: un tipo di macchina da utilizzare per ogni VM. Specifica uno dei seguenti valori:Per un tipo di macchina predefinita:
MACHINE_FAMILY-standard-CPUS
.Per un tipo di macchina personalizzata:
MACHINE_FAMILY-custom-CPUS-MEMORY
. Prima di specificare un tipo di macchina personalizzata, esamina le limitazioni per le VM con tipi di macchine personalizzate.
Sostituisci quanto segue:
MACHINE_FAMILY
: la famiglia di macchine.CPUS
: il numero di vCPU.MEMORY
: la memoria totale per una VM riservata. La memoria deve essere un multiplo di 256 MB ed essere fornita in MB.
Ad esempio, per specificare un tipo di macchina personalizzata N2 con 4 vCPU e 5 GB di memoria, pari a 5120 MB, specifica
n2-custom-4-5120
.PROJECT_ID
: l'ID del progetto in cui vuoi prenotare le risorse.NUMBER_OF_VMS
: il numero di VM da prenotare.ZONE
: la zona in cui prenotare le risorse.
Ad esempio, per creare una prenotazione nella zona us-central1-a
per dieci VM
che utilizzano ciascuna un tipo di macchina predefinita N2 con 4 vCPU, esegui questo comando:
gcloud compute reservations create my-reservation \
--machine-type=n2-standard-4 \
--project=example-project \
--vm-count=10 \
--zone=us-central1-a
Facoltativamente, puoi eseguire una o più delle seguenti operazioni:
Per aggiungere Graphics Processing Unit (GPU) a ogni VM prenotata, includi il flag
--accelerator
.gcloud compute reservations create my-reservation \ --accelerator=count=NUMBER_OF_ACCELERATORS,type=ACCELERATOR_TYPE ...
Sostituisci quanto segue:
NUMBER_OF_ACCELERATORS
: il numero di GPU da aggiungere per VM prenotata.ACCELERATOR_TYPE
: il tipo di GPU da aggiungere alle VM prenotate.
Assicurati che il tipo di macchina specificato nella prenotazione supporti i tipi di GPU specificati e che la GPU sia disponibile nella zona in cui vuoi prenotare le risorse. In caso contrario, la creazione della prenotazione non va a buon fine.
Per aggiungere uno o più SSD locali a ogni VM prenotata, includi uno o più flag
--local-ssd
. Puoi specificare fino a 24 SSD locali. Ogni SSD locale ha una dimensione di 375 GB.Ad esempio, per specificare due SSD locali durante la creazione di una prenotazione, includi due flag
--local-ssd
.gcloud compute reservations create my-reservation \ --local-ssd=size=375,interface=INTERFACE_1 \ --local-ssd=size=375,interface=INTERFACE_2 \ ...
Sostituisci
INTERFACE_1
eINTERFACE_2
con il tipo di interfaccia che vuoi che utilizzi l'SSD locale. Specifica uno dei seguenti valori:Per le interfacce dei dischi NVME:
nvme
.Per le interfacce del disco SCSI:
scsi
.
Assicurati che il tipo di macchina specificato per le VM prenotate supporti le interfacce del disco scelte. In caso contrario, la creazione della prenotazione non va a buon fine. Per maggiori informazioni, consulta la pagina su come scegliere un'interfaccia del disco.
Per fare in modo che le VM prenotate utilizzino una piattaforma CPU minima specifica anziché la piattaforma CPU predefinita della zona, includi il flag
--min-cpu-platform
.gcloud compute reservations create my-reservation \ --min-cpu-platform="MIN_CPU_PLATFORM" \ ...
Sostituisci
MIN_CPU_PLATFORM
con una piattaforma CPU minima. Per assicurarti che una piattaforma CPU sia disponibile nella zona in cui stai prenotando le risorse, visualizza le piattaforme CPU disponibili per zona.Per specificare che solo le VM che hanno come target questa prenotazione possono utilizzarla, includi il flag
--require-specific-reservation
.gcloud compute reservations create example-reservation \ --require-specific-reservation \ ...
Per specificare un criterio di posizionamento compatto per una latenza di rete inferiore tra le VM, includi il flag
--resource-policies=policy
.gcloud compute reservations create example-reservation \ --resource-policies=policy=COMPACT_PLACEMENT_POLICY_NAME \ --require-specific-reservation \ ...
Sostituisci COMPACT_PLACEMENT_POLICY_NAME con il nome di un criterio di posizionamento compatto esistente. Inoltre, per evitare errori durante la creazione di una prenotazione per un singolo progetto che specifica un criterio di posizionamento compatto, assicurati di specificare quanto segue:
Un tipo di macchina supportato per i criteri di posizionamento compatto.
Una zona all'interno della regione in cui si trova il criterio di posizionamento compatto.
Il flag
--require-specific-reservation
. Questo indica che solo le VM che hanno come target la prenotazione possono utilizzarlo.
Per consentire a Compute Engine di eliminare automaticamente la prenotazione, seleziona uno dei seguenti metodi:
Per eliminare la prenotazione in una data e un'ora specifiche, utilizza il comando
gcloud beta compute reservations create
e includi il flag--delete-at-time
.gcloud beta compute reservations create reservation-example \ --delete-at-time=DELETE_AT_TIME \ ...
Sostituisci
DELETE_AT_TIME
con una data e un'ora formattate come timestamp RFC 3339, che deve essere il seguente:YYYY-MM-DDTHH:MM:SSOFFSET
Sostituisci quanto segue:
YYYY-MM-DD
: una data formattata come giorno del mese a 4 cifre, a 2 cifre e mese a 2 cifre, separate da trattini (-
).HH:MM:SS
: un'ora formattata come ora a due cifre con formato di 24 ore, minuti a due cifre e secondi a due cifre, separati dai due punti (:
).OFFSET
: il fuso orario formattato come offset del Tempo coordinato universale (UTC). Ad esempio, per utilizzare il fuso orario PST (Pacific Standard Time), specifica-08:00
. In alternativa, per non usare alcun offset, specificaZ
.
Per eliminare la prenotazione dopo un determinato periodo di tempo, utilizza il comando
gcloud beta compute reservations create
e includi il flag--delete-after-duration
.gcloud beta compute reservations create reservation-example \ --delete-after-duration=DELETE_AFTER_DURATION \ ...
Sostituisci
DELETE_AFTER_DURATION
con una durata espressa in giorni, ore, minuti o secondi. Ad esempio, specifica30m
per 30 minuti o1d2h3m4s
per 1 giorno, 2 ore, 3 minuti e 4 secondi.
Terraform
Per creare una prenotazione per un singolo progetto, utilizza la risorsa Terraform google_compute_reservation
.
Per saperne di più su come utilizzare Terraform, consulta Utilizzo di Terraform con Google Cloud.
REST
Per creare una prenotazione per un singolo progetto, effettua una richiesta POST
al metodo reservations.insert
.
Per creare una prenotazione per un singolo progetto senza campi facoltativi, effettua la seguente richiesta POST
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations
{
"name": "RESERVATION_NAME",
"specificReservation": {
"count": "NUMBER_OF_VMS",
"instanceProperties": {
"machineType": "MACHINE_TYPE",
}
}
}
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto in cui vuoi prenotare le risorse.ZONE
: la zona in cui prenotare le risorse.RESERVATION_NAME
: il nome della prenotazione da creare.NUMBER_OF_VMS
: il numero di VM da prenotare.MACHINE_TYPE
: un tipo di macchina da utilizzare per ogni VM. Specifica uno dei seguenti valori:Per un tipo di macchina predefinita:
MACHINE_FAMILY-standard-CPUS
.Per un tipo di macchina personalizzata:
MACHINE_FAMILY-custom-CPUS-MEMORY
. Prima di specificare un tipo di macchina personalizzata, esamina le limitazioni per le VM con tipi di macchine personalizzate.
Sostituisci quanto segue:
MACHINE_FAMILY
: la famiglia di macchine.CPUS
: il numero di vCPU.MEMORY
: la memoria totale per una VM riservata. La memoria deve essere un multiplo di 256 MB ed essere fornita in MB.
Ad esempio, per specificare un tipo di macchina personalizzata N2 con 4 vCPU e 5 GB di memoria, pari a 5120 MB, specifica
n2-custom-4-5120
.
Ad esempio, per creare una prenotazione nella zona us-central1-a
per dieci VM
che utilizzano ciascuna un tipo di macchina predefinita N2 con 4 vCPU, effettua la seguente richiesta POST
:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations
{
"name": "my-reservation",
"specificReservation": {
"count": "10",
"instanceProperties": {
"machineType": "n2-standard-4",
}
}
}
Facoltativamente, puoi eseguire una o più delle seguenti operazioni:
Per aggiungere GPU (Graphics Processing Unit) a ogni VM prenotata, includi il campo
guestAccelerators
nel corpo della richiesta.POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "specificReservation": { "instanceProperties": { "guestAccelerators": [ { "acceleratorCount": NUMBER_OF_ACCELERATORS, "acceleratorType": "ACCELERATOR_TYPE" } ], ... }, ... } }
Sostituisci quanto segue:
NUMBER_OF_ACCELERATORS
: il numero di GPU da aggiungere per VM prenotata.ACCELERATOR_TYPE
: il tipo di GPU da aggiungere alle VM prenotate.
Assicurati che il tipo di macchina specificato nella prenotazione supporti i tipi di GPU specificati e che la GPU sia disponibile nella zona in cui vuoi prenotare le risorse. In caso contrario, la creazione della prenotazione non va a buon fine.
Per aggiungere uno o più SSD locali a ogni VM prenotata, includi il campo
localSsds
nel corpo della richiesta. Puoi specificare fino a 24 SSD locali. Ogni SSD locale ha una dimensione di 375 GB.Ad esempio, per specificare due SSD locali durante la creazione di una prenotazione, specifica quanto segue:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "specificReservation": { "instanceProperties": { "localSsds": [ { "diskSizeGb": "375", "interface": "INTERFACE_1" }, { "diskSizeGb": "375", "interface": "INTERFACE_2" } ], ... }, ... } }
Sostituisci
INTERFACE_1
eINTERFACE_2
con il tipo di interfaccia da utilizzare per ogni unità SSD locale. Specifica uno dei seguenti valori:Per le interfacce dei dischi NVME:
NVME
.Per le interfacce del disco SCSI:
SCSI
.
Assicurati che il tipo di macchina specificato per le VM prenotate supporti le interfacce del disco scelte. In caso contrario, la creazione della prenotazione non va a buon fine. Per maggiori informazioni, consulta la pagina su come scegliere un'interfaccia del disco.
Per fare in modo che le VM prenotate utilizzino una piattaforma CPU minima specifica anziché la piattaforma CPU predefinita della zona, includi il campo
minCpuPlatform
nel corpo della richiesta.POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "specificReservation": { "instanceProperties": { "minCpuPlatform": "MIN_CPU_PLATFORM", ... }, ... } }
Sostituisci
MIN_CPU_PLATFORM
con una piattaforma CPU minima. Per assicurarti che una piattaforma CPU sia disponibile nella zona in cui stai prenotando le risorse, visualizza le piattaforme CPU disponibili per zona.Per specificare un criterio di posizionamento compatto e ridurre la latenza di rete tra le VM prenotate, includi il campo
resourcePolicies
nel corpo della richiesta.POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "resourcePolicies": { "policy" : "projects/example-project/regions/REGION/resourcePolicies/COMPACT_PLACEMENT_POLICY_NAME" }, "specificReservationRequired": true, ... }
Sostituisci quanto segue:
REGION
: la regione in cui si trova il criterio di posizionamento compatto. Devi prenotare le risorse all'interno della stessa regione del criterio di posizionamento. In caso contrario, la creazione della prenotazione non va a buon fine.COMPACT_PLACEMENT_POLICY_NAME
: il nome di un criterio di posizionamento compatto esistente.
Inoltre, per evitare errori durante la creazione di una prenotazione per un singolo progetto che specifica un criterio di posizionamento compatto, assicurati di specificare quanto segue:
Un tipo di macchina supportato per i criteri di posizionamento compatto.
Campo
specificReservationRequired
impostato sutrue
. Questo indica che solo le VM che hanno come target specificamente questa prenotazione possono utilizzarla.
Per specificare che solo le VM che hanno come target specificamente questa prenotazione possono utilizzarla, includi il campo
specificReservationRequired
nel corpo della richiesta e impostalo sutrue
.POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "specificReservationRequired": true, ... }
Per consentire a Compute Engine di eliminare automaticamente la prenotazione, seleziona uno dei seguenti metodi:
Per eliminare la prenotazione in una data e un'ora specifiche, effettua una richiesta
POST
utilizzando il metodobeta.reservations.insert
. Nel corpo della richiesta, includi il campodeleteAtTime
.POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "deleteAtTime": "DELETE_AT_TIME", ... }
Sostituisci
DELETE_AT_TIME
con una data e un'ora formattate come timestamp RFC 3339, che deve essere il seguente:YYYY-MM-DDTHH:MM:SSOFFSET
Sostituisci quanto segue:
YYYY-MM-DD
: una data formattata come giorno del mese a 4 cifre, a 2 cifre e mese a 2 cifre, separate da trattini (-
).HH:MM:SS
: un'ora formattata come ora a due cifre con formato di 24 ore, minuti a due cifre e secondi a due cifre, separati dai due punti (:
).OFFSET
: il fuso orario formattato come offset del Tempo coordinato universale (UTC). Ad esempio, per utilizzare il fuso orario PST (Pacific Standard Time), specifica-08:00
. In alternativa, per non usare alcun offset, specificaZ
.
Per eliminare la prenotazione dopo una durata specifica, effettua una richiesta
POST
utilizzando il metodobeta.reservations.insert
. Nel corpo della richiesta, includi il campodeleteAfterDuration
.POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/reservations { "name": "example-reservation", "deleteAfterDuration": { "seconds": "DELETE_AFTER_DURATION" }, ... }
Sostituisci
DELETE_AFTER_DURATION
con una durata in secondi. Ad esempio, specifica86400
per 86.400 secondi (1 giorno).
Passaggi successivi
Scopri come visualizzare le prenotazioni.
Scopri come associare le prenotazioni agli impegni.
Scopri come utilizzare le prenotazioni.
Scopri come monitorare l'utilizzo delle prenotazioni.