Combina le prenotazioni con gli sconti per impegno di utilizzo

Gli sconti per impegno di utilizzo (CUD) offrono prezzi molto scontati per le risorse Compute Engine in cambio di contratti basati su un impegno di utilizzo di 1 o 3 anni (noti anche come impegni). Ti impegni a un importo minimo di utilizzo delle risorse o a una spesa minima e ricevi in cambio sconti per impegno di utilizzo (CUD) sui costi di utilizzo delle risorse. Tuttavia, gli impegni non riservano la capacità di zona per le risorse impegnate. Per ottenere risorse di zona a prezzi scontati e allo stesso tempo garantire che venga prenotata per loro la capacità, devi acquistare impegni e creare prenotazioni per quelle risorse di zona.

Questo documento spiega come ricevere sconti per impegno di utilizzo per le risorse riservate e come collegare le prenotazioni agli impegni basati sulle risorse.

Prima di iniziare

  • Rivedi le nozioni di base delle prenotazioni, nonché i requisiti e le limitazioni. Per saperne di più, vedi Informazioni sulle prenotazioni.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione verifica la tua identità per l'accesso ad API e servizi Google Cloud . Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    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 Google Cloud e alle API, non devi configurare l'autenticazione.

    gcloud

    1. Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:

      gcloud init

      Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  • Imposta una regione e una zona predefinite.
  • REST

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

      Installa Google Cloud CLI.

      Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

    Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .

Sconti per impegno di utilizzo (CUD) per le risorse riservate

Ricevi i CUD dagli impegni attivi per qualsiasi utilizzo idoneo delle risorse nei tuoi progetti. Se hai anche prenotazioni per riservare la capacità per le risorse in quel progetto, gli sconti per impegno di utilizzo derivanti da impegni attivi possono essere applicati anche a queste risorse riservate. Affinché le risorse prenotate diventino idonee a ricevere sconti per impegno di utilizzo, si applicano i seguenti requisiti:

  • Non ricevi altre forme di sconto per l'utilizzo delle risorse.
  • Le tue VM devono utilizzare le prenotazioni mentre gli impegni sono attivi.
  • Come minimo, le seguenti proprietà devono corrispondere tra gli impegni attivi e le prenotazioni utilizzate dalle VM:

    • Progetto e regione in cui vengono applicati
    • Serie di famiglie di macchine

A seconda del tipo di risorsa, puoi ricevere CUD per le risorse riservate in uno dei seguenti modi:

  • vCPU e memoria: per ricevere CUD per uno o entrambi questi tipi di risorse, puoi acquistare impegni basati sulle risorse o sulla spesa che includono i tipi di risorse richiesti. Quando le VM nel tuo progetto utilizzano prenotazioni che corrispondono a queste proprietà di impegno attive, Compute Engine applica automaticamente gli sconti all'utilizzo idoneo.

    Solo per gli impegni basati sulle risorse, puoi attivare la condivisione del CUD. In questo modo, puoi condividere i CUD di un progetto per coprire l'utilizzo in altri progetti collegati all'account di fatturazione Cloud dell'impegno.

    Se hai prenotato più risorse di quelle che ti sei impegnato ad acquistare, non riceverai sconti per utilizzo continuo per queste risorse aggiuntive.

  • GPU e dischi SSD locali: per ricevere CUD per uno o entrambi questi tipi di risorse, devi:

    • Acquista impegni basati sulle risorse che includono i tipi di risorse richiesti.
    • Crea prenotazioni per tutte le risorse impegnate con proprietà che corrispondono al tuo impegno e collegale all'impegno.

    Quando le VM nel tuo progetto utilizzano queste prenotazioni collegate, inizi a ricevere gli sconti per impegno di utilizzo applicabili per questi tipi di risorse prenotate. Se attivi la condivisione del CUD e colleghi una prenotazione condivisa, anche l'utilizzo di altri progetti consumer potrebbe diventare idoneo per i CUD basati sulle risorse condivisi. Tuttavia, affinché l'utilizzo di altri progetti sia idoneo, devi limitare la condivisione della prenotazione all'interno dell'account di fatturazione Cloud dell'impegno. Se i progetti esterni all'account di fatturazione Cloud utilizzano la prenotazione condivisa, l'utilizzo non sarà idoneo per gli sconti per impegno di utilizzo (CUD) condivisi di questo account di fatturazione Cloud e potrebbe essere addebitato con le tariffe on demand.

Collega le prenotazioni agli impegni basati sulle risorse

Puoi collegare le prenotazioni a qualsiasi impegno basato sulle risorse e assicurarti che la capacità venga mantenuta in zone specifiche per le risorse impegnate che prevedi di utilizzare. Puoi collegare più prenotazioni a un singolo impegno. Tuttavia, una prenotazione può essere collegata a un solo impegno. Quando acquisti un impegno, puoi collegare le prenotazioni all'impegno in uno dei seguenti modi:

  • Utilizzare le prenotazioni esistenti che corrispondono alle proprietà dell'impegno
  • Crea nuove prenotazioni corrispondenti durante l'acquisto dell'impegno

Tipi di risorse che non richiedono prenotazioni collegate

Per vCPU, memoria e dischi Titanium SSD locali da utilizzare con alcune serie di macchine, non è necessario collegare prenotazioni corrispondenti agli impegni. Nello specifico, per i dischi Titanium locali, non sono necessarie prenotazioni collegate quando acquisti tipi di impegni applicabili alle seguenti serie di macchine:

  • H4D ottimizzato per il calcolo
  • C4 per uso generico
  • C4A per uso generico
  • C4D per uso generico
  • Z3 ottimizzata per l'archiviazione

Se vuoi acquistare un impegno che includa questi tipi di risorse, puoi farlo senza collegare prenotazioni per queste risorse. Se vuoi collegare prenotazioni per una qualsiasi di queste vCPU, memoria o dischi SSD Titanium locali, puoi scegliere facoltativamente di collegare queste prenotazioni.

Le prenotazioni collegate per queste risorse non devono corrispondere ai tipi e ai numeri di risorse specificati dall'impegno. Nello specifico, quando specifichi quantità di risorse superiori o inferiori rispetto all'impegno, si verifica quanto segue:

  • Se l'impegno specifica un numero maggiore di questi tipi di risorse rispetto alle prenotazioni collegate, Compute Engine riserva la capacità solo per le risorse specificate dall'impegno. Tuttavia, puoi comunque utilizzare le risorse rimanenti in base alla loro disponibilità nella tua regione.
  • Quando la prenotazione specifica un numero maggiore di queste risorse rispetto all'impegno, continui a ricevere i CUD solo per l'utilizzo delle risorse idonee. Quando la condivisione del CUD è abilitata, gli impegni basati sulle risorse nel tuo account di fatturazione Cloud vengono raggruppati e applicati a qualsiasi utilizzo idoneo. Se le prenotazioni associate specificano più risorse di quelle che possono essere coperte dagli impegni, l'utilizzo aggiuntivo potrebbe essere addebitato alle tariffe on demand.

Ad esempio, quando acquisti un impegno per 4 vCPU e 30 GB di memoria, puoi scegliere di eseguire una delle seguenti operazioni:

  • Non collegare alcuna prenotazione.
  • Collega prenotazioni che specificano qualsiasi combinazione di questi tipi di risorse, ad esempio:

    • 4 vCPU e 30 GB di memoria
    • 2 vCPU e 50 GB di memoria
    • 10 vCPU e 10 GB di memoria

Tuttavia, se il tuo impegno specifica tipi di risorse aggiuntivi che richiedono prenotazioni collegate, devi comunque allegare le prenotazioni per queste risorse.

Per scoprire come acquistare impegni per risorse che non richiedono prenotazioni, consulta Acquista impegni basati sulle risorse senza prenotazioni associate.

Tipi di risorse che richiedono prenotazioni collegate

Per tutte le GPU e la maggior parte dei dischi SSD locali, devi anche prenotare queste risorse e collegare le prenotazioni agli impegni. Senza prenotazioni collegate per queste risorse, l'acquisto dell'impegno non va a buon fine. Alcuni dischi SSD locali Titanium da utilizzare con una selezione di serie di macchine sono esenti da questo allegato di prenotazione obbligatorio.

Quando acquisti un impegno che include GPU o dischi SSD locali applicabili, o entrambi, devi anche prenotare queste risorse e collegare le prenotazioni all'impegno. Puoi farlo utilizzando una singola prenotazione o una combinazione di più prenotazioni.

Quando acquisti un impegno per queste risorse che richiedono prenotazioni collegate, puoi anche includere facoltativamente risorse che non richiedono prenotazioni collegate nello stesso impegno. In questi scenari, puoi scegliere di fare una delle seguenti operazioni:

  • Prenota le risorse facoltative in numeri che corrispondono all'impegno.
  • Prenota le risorse facoltative in numeri diversi rispetto all'impegno.
  • Non prenotare affatto le risorse facoltative.

Per scoprire come acquistare impegni per GPU o dischi SSD locali, consulta i seguenti articoli:

Quando l'impegno specifica tipi di risorse che richiedono una prenotazione collegata, le prenotazioni collegate devono specificare i numeri e i tipi esatti di queste risorse. Di conseguenza, non puoi avere altri numeri o tipi di queste risorse nelle prenotazioni allegate.

Ad esempio, supponiamo che tu acquisti un impegno per 30 GB di memoria e 4 GPU NVIDIA P100. La prenotazione collegata (o la combinazione di prenotazioni collegate) può specificare qualsiasi quantità di vCPU o memoria, ma deve avere esattamente 4 GPU di tipo NVIDIA P100. In questo esempio, non puoi collegare prenotazioni che specificano una delle seguenti combinazioni di risorse:

  • 6 GPU NVIDIA P100
  • 2 GPU NVIDIA P100
  • 4 GPU NVIDIA P100 e 2 GPU NVIDIA V100
  • 4 GPU NVIDIA P100 e 4 dischi SSD locali

Per visualizzare l'elenco completo delle serie di macchine che supportano gli sconti per utilizzo garantito per GPU e dischi SSD locali, consulta la sezione Tipi di impegno hardware nella documentazione relativa agli sconti per utilizzo garantito basati sulle risorse.

Comportamento delle prenotazioni dopo l'acquisto dell'impegno

Dopo aver acquistato un impegno con prenotazioni collegate, il comportamento della prenotazione dipende dal fatto che l'impegno specifichi o meno tipi di risorse che richiedono prenotazioni collegate:

  • Impegni che richiedono prenotazioni collegate: se l'impegno specifica uno di questi tipi di risorse, non puoi eseguire le seguenti operazioni:
    • Eliminare, ridimensionare o modificare le prenotazioni collegate durante l'intero ciclo di vita dell'impegno. Tuttavia, puoi sostituire le prenotazioni collegate esistenti con nuove prenotazioni.
    • Attiva l'impostazione di eliminazione automatica per le prenotazioni collegate. Alla scadenza degli impegni che specificano questi tipi di risorse, le prenotazioni collegate vengono eliminate automaticamente.
  • Impegni in cui le prenotazioni sono facoltative: se l'impegno riguarda tipi di risorse in cui le prenotazioni sono facoltative, puoi eliminare le prenotazioni, modificare il numero di VM riservate o modificare proprietà come l'eliminazione automatica in qualsiasi momento. Alla scadenza di questi impegni, le prenotazioni collegate continuano a esistere, a meno che tu non le configuri per l'eliminazione automatica. L'eliminazione di queste prenotazioni non influisce sulle VM in esecuzione che hanno utilizzato la capacità prenotata. Le VM in esecuzione continuano a essere eseguite e ricevi la copertura CUD fino alla scadenza dell'impegno.

Per ulteriori informazioni su cosa è possibile e cosa non è possibile modificare nelle prenotazioni collegate, consulta la sezione Modifiche consentite di questo documento.

Acquista impegni basati sulle risorse con prenotazioni collegate

Quando acquisti un nuovo impegno, puoi collegare le prenotazioni al tuo impegno in uno dei seguenti modi:

Dopo l'acquisto, l'impegno diventa attivo il giorno successivo alle ore 00:00 UTC-8, oppure UTC-7 se è in vigore l'ora legale (fuso orario del Pacifico). Compute Engine mantiene un blocco sul tuo progetto per ogni regione del progetto in cui acquisti un impegno. Quando acquisti un nuovo impegno per qualsiasi regione del progetto, Compute Engine associa il blocco per quella regione all'impegno appena creato.

Tra il momento dell'acquisto e quello di attivazione, lo stato dell'impegno rimane NOT_YET_ACTIVE (o PENDING nella consoleGoogle Cloud ). Dopo l'attivazione, lo stato dell'impegno diventa ACTIVE. Ad esempio, supponiamo che acquisti l'impegno il 20 gennaio 2024 alle ore 22:00 UTC-8 o UTC-7 (fuso orario del Pacifico). Compute Engine crea immediatamente il tuo impegno con lo stato NOT_YET_ACTIVE. Il tuo impegno diventa ACTIVE il 21 gennaio 2024 alle ore 00:00 UTC-8 o UTC-7 (fuso orario del Pacifico).

Requisiti

Prima di acquistare un impegno con prenotazioni collegate, esamina questi requisiti e assicurati che l'impegno e le prenotazioni soddisfino i seguenti criteri:

  • Devi acquistare l'impegno e creare le prenotazioni collegate nello stesso progetto e nella stessa regione.
  • Devi acquistare l'impegno e creare le prenotazioni collegate per le risorse della stessa serie di famiglie di macchine.
  • Se il tuo impegno specifica tipi di risorse che richiedono prenotazioni collegate, devi disattivare l'opzione di eliminazione automatica sulle prenotazioni collegate. Scopri di più sui tipi di risorse che richiedono prenotazioni collegate.
  • Se il tuo impegno include GPU, il tipo di GPU specificato nella prenotazione e nell'impegno deve corrispondere.
  • Per le GPU e la maggior parte dei dischi SSD locali, il numero di risorse prenotate di ogni tipo di risorsa deve corrispondere esattamente al numero di risorse impegnate per quel tipo di risorsa. Tuttavia, questo requisito non è applicabile se specifichi dischi Titanium SSD locali nell'impegno per l'utilizzo con i tipi di macchine C4, C4A, C4D, H4D o Z3.

    Ad esempio, se vuoi acquistare un impegno per 4 GPU V100 e 2 dischi SSD locali, le prenotazioni collegate all'impegno devono specificare un totale di 4 GPU V100 e 2 SSD locali. La quantità di vCPU e memoria che prenoti può essere superiore o inferiore a quella per cui ti impegni. Tuttavia, se specifichi 4 vCPU C4A e 2 dischi Titanium SSD locali nell'impegno, non devi collegare prenotazioni all'impegno.

  • Per le GPU, acquista impegni per i tipi di GPU specifici che intendi utilizzare. Ad esempio, puoi acquistare impegni per GPU NVIDIA P100 o NVIDIA V100, ma non puoi utilizzare un impegno acquistato per GPU NVIDIA P100 per coprire le GPU NVIDIA V100.

  • Se la prenotazione collegata è una prenotazione condivisa e vuoi ricevere gli sconti per impegno di utilizzo applicabili quando la utilizzi al di fuori del progetto del tuo impegno, devi eseguire entrambe le seguenti operazioni:

    • Condividi le prenotazioni solo tra i progetti che appartengono allo stesso account di fatturazione Cloud dell'impegno.
    • Attiva la condivisione del CUD per l'account di fatturazione Cloud.

Collega prenotazioni esistenti

Puoi collegare le prenotazioni esistenti durante l'acquisto dell'impegno utilizzando la console Google Cloud , Google Cloud CLI o REST.

Console

Prima di acquistare un impegno utilizzando la console Google Cloud , seleziona il progetto che vuoi utilizzare per l'acquisto dell'impegno. Se la condivisione del CUD è abilitata per un account di fatturazione Cloud, puoi acquistare l'impegno utilizzando qualsiasi progetto di quell'account di fatturazione Cloud. Dopo aver selezionato il progetto:

  1. Nella console Google Cloud , vai alla pagina Sconti per impegno di utilizzo. Vai a Sconti per impegno di utilizzo

  2. Fai clic su Acquista impegno. Viene visualizzata la pagina Acquista un impegno.

  3. Nel campo Nome, inserisci un nome per l'impegno.

  4. Nel campo Regione, seleziona la regione in cui vuoi acquistare l'impegno.

  5. Nel campo Tipo di impegno, seleziona la serie della famiglia di macchine per il tuo impegno. I seguenti tipi di impegno forniscono opzioni per GPU, dischi SSD locali o entrambi:

    • Per i tipi di macchine A2, seleziona A2 ottimizzata per l'acceleratore.
    • Per i tipi di macchina A3 Edge e A3 High, seleziona A3 ottimizzata per l'acceleratore.
    • Per i tipi di macchine A3 Mega, seleziona A3 Mega ottimizzata per l'acceleratore
    • Per i tipi di macchine G2, seleziona G2 ottimizzata per la grafica.
    • Per i tipi di macchina G4, seleziona G4 ottimizzata per la grafica.
    • Per i tipi di macchine C2, seleziona C2 ottimizzata per il calcolo.
    • Per i tipi di macchine C2D, seleziona C2D ottimizzata per il calcolo.
    • Per i tipi di macchina C3, seleziona C3 per uso generico.
    • Per i tipi di macchine C3D, seleziona C3D per uso generico
    • Per i tipi di macchina C4, seleziona C4 per uso generico.
    • Per i tipi di macchina C4A, seleziona C4A per uso generico.
    • Per i tipi di macchine C4D, seleziona C4D per uso generico.
    • Per i tipi di macchine N1, seleziona N1 per uso generico.
    • Per i tipi di macchine N2, seleziona N2 per uso generico.
    • Per i tipi di macchine N2D, seleziona N2D per uso generico.
    • Per i tipi di macchine M1, seleziona M1/M2 ottimizzate per la memoria.
    • Per i tipi di macchine M3, seleziona M3 ottimizzata per la memoria.
    • Per i tipi di macchina Z3, seleziona Z3 ottimizzata per l'archiviazione.

  6. Per collegare una o più prenotazioni esistenti all'impegno, segui questi passaggi:

    1. Seleziona la casella di controllo Collega una prenotazione nuova o esistente.

    2. Fai clic su Collega una prenotazione esistente. Viene visualizzato il riquadro Collega prenotazioni esistenti, che mostra le prenotazioni del tuo progetto. Questo elenco viene filtrato in base alla regione e al tipo di impegno specificati.

    3. Nel riquadro Collega prenotazioni esistenti, seleziona la casella di controllo per ogni prenotazione da collegare.

    4. Controlla il riepilogo delle risorse per le prenotazioni selezionate e poi fai clic su Allega.

    Dopo aver allegato le prenotazioni, Compute Engine compila automaticamente i campi nella sezione Dettagli impegno in modo che corrispondano ai numeri e ai tipi di risorse delle prenotazioni allegate. Se hai inserito manualmente i valori per le risorse nella sezione Dettagli impegno prima di allegare le prenotazioni, i valori vengono sovrascritti con i valori delle prenotazioni.

  7. Nella sezione Dettagli impegno, segui questi passaggi:

    1. Nel campo Core, verifica il valore precompilato. (Facoltativo) puoi specificare un numero diverso di vCPU.

    2. Nel campo Memoria, verifica la quantità di memoria precompilata in GB. Se vuoi, puoi specificare un importo diverso. Puoi specificare la memoria solo con incrementi di 0,25 GB. Per specificare un valore di memoria personalizzato per l'impegno, utilizza gcloud CLI o REST.

    3. Espandi la sezione GPU e SSD locali e verifica che i tipi e i numeri corrispondano tra l'impegno e le prenotazioni collegate, come segue:

      1. Nel campo Tipo di GPU, verifica il tipo di GPU precompilato.

      2. Nel campo Numero di GPU, verifica il numero precompilato di GPU.

      3. Nel campo SSD locali, verifica il numero precompilato di dischi.

      Se specifichi manualmente valori diversi dalle prenotazioni allegate per uno qualsiasi di questi campi, l'acquisto dell'impegno non va a buon fine. Per tutte le GPU e la maggior parte dei dischi SSD locali, i numeri e i tipi totali devono corrispondere tra l'impegno e le prenotazioni collegate.

  8. Nella sezione Termini, segui questi passaggi:

    1. Per specificare il piano per il tuo impegno, seleziona 1 anno o 3 anni. Il piano determina la tariffa CUD e la durata predefinita del tuo impegno.

    2. Controlla il campo Data di inizio, che mostra la data e l'ora in cui il tuo impegno diventa attivo. Questo campo viene impostato automaticamente sulle ore 00:00 del fuso orario del Pacifico di Stati Uniti e Canada il giorno successivo alla data attuale.

    3. Facoltativo. Per estendere il termine dell'impegno oltre la durata del termine preimpostata definita dal piano dell'impegno, specifica una data di fine personalizzata per l'impegno nel campo Data di fine. Per ulteriori informazioni, consulta Estendi i termini dell'impegno.

    4. Facoltativo. Se vuoi che l'impegno si rinnovi automaticamente al termine del periodo, seleziona la casella di controllo Rinnova automaticamente l'impegno.

  9. Nel riquadro Riepilogo, rivedi i dettagli dell'impegno e le eventuali limitazioni della quota.

  10. Per completare l'acquisto dell'impegno:

    1. Vai alla parte inferiore della pagina.

    2. Consulta la sezione Comunicazioni, che contiene informazioni su commissioni, idoneità agli sconti e termini e condizioni.

    3. Per confermare l'accettazione del prezzo di impegno e dei termini specifici del servizio, seleziona la casella di controllo.

    4. Fai clic su Acquista.

gcloud

Per acquistare un impegno collegando prenotazioni esistenti, esegui il comando gcloud compute commitments create. Nel comando, includi il flag --existing-reservation per specificare una prenotazione esistente che vuoi collegare al tuo impegno. Includi una nuova istanza di questo flag per ogni prenotazione esistente che vuoi collegare. Puoi collegare all'impegno un numero qualsiasi di prenotazioni esistenti.

Ad esempio, per acquistare un impegno collegando due prenotazioni, esegui il seguente comando:

gcloud compute commitments create COMMITMENT_NAME \
    --region=REGION \
    --project=PROJECT_ID \
    --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
    --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
    --plan=PLAN \
    --type=COMMITMENT_TYPE \
    --custom-end-time=CUSTOM_END_DATE \
    --existing-reservation=name='RESERVATION_NAME_1',zone='RESERVATION_ZONE_1' \
    --existing-reservation=name='RESERVATION_NAME_2',zone='RESERVATION_ZONE_2'

Sostituisci quanto segue:

  • COMMITMENT_NAME: il nome dell'impegno.
  • REGION: la regione in cui si trova l'impegno.
  • PROJECT_ID: l'ID del progetto in cui vuoi acquistare l'impegno con le prenotazioni collegate.
  • PLAN: il piano di impegno, che determina la tariffa CUD e la durata preimpostata. Specifica 12-month o 36-month.
  • CUSTOM_END_DATE: (Facoltativo) una data di fine personalizzata per il tuo periodo, che deve essere formattata come YYYY-MM-DD. Ad esempio, per specificare una data di fine personalizzata il 20 aprile 2024, formattala come 2024-04-20.
  • COMMITMENT_TYPE: il tipo di impegno. I seguenti tipi di impegno forniscono opzioni per GPU, dischi SSD locali o entrambi:

    • Per i tipi di macchine A2, utilizza accelerator-optimized
    • Per i tipi di macchina A3 Edge e A3 High, utilizza accelerator-optimized-a3
    • Per i tipi di macchine A3 Mega, utilizza accelerator-optimized-a3-mega
    • Per i tipi di macchine G2, utilizza graphics-optimized
    • Per i tipi di macchina G4, utilizza graphics-optimized-g4
    • Per i tipi di macchine C2, utilizza compute-optimized
    • Per i tipi di macchine C2D, utilizza compute-optimized-c2d
    • Per i tipi di macchina C3, utilizza compute-optimized-c3
    • Per i tipi di macchine C3D, utilizza compute-optimized-c3d
    • Per i tipi di macchine N1, utilizza general-purpose
    • Per i tipi di macchine C4, utilizza general-purpose-c4
    • Per i tipi di macchina C4A, utilizza general-purpose-c4a
    • Per i tipi di macchine C4D, utilizza general-purpose-c4d
    • Per i tipi di macchine N2, utilizza general-purpose-n2
    • Per i tipi di macchine N2D, utilizza general-purpose-n2d
    • Per i tipi di macchine M1, utilizza memory-optimized
    • Per i tipi di macchine M3, utilizza memory-optimized-m3
    • Per i tipi di macchine Z3, utilizza storage-optimized-z3

  • COMMITTED_VCPUS: il numero di vCPU che vuoi includere nel tuo impegno. Il valore deve essere un numero intero positivo.

  • COMMITTED_MEMORY: la quantità di memoria, in MB o GB, che vuoi includere nell'impegno. Ad esempio, 10240MB o 10GB. Per gcloud CLI, puoi specificare la memoria in MB o GB. Se non specifichi un'unità, Compute Engine utilizza come unità predefinita il GB. Tuttavia, tieni presente che quando utilizzi REST, Compute Engine utilizza MB come unità predefinita.

  • COMMITTED_LOCAL_SSD: la quantità di spazio SSD locale, in GB, che vuoi inserire nell'impegno.

  • COMMITTED_ACCELERATOR_COUNT: il numero di GPU che vuoi inserire nell'impegno.

  • COMMITTED_ACCELERATOR_TYPE: il tipo di GPU che vuoi inserire nell'impegno.

  • RESERVATION_NAME_1 e RESERVATION_NAME_2: i nomi delle prenotazioni esistenti che vuoi collegare all'impegno.

  • RESERVATION_ZONE_1 e RESERVATION_ZONE_2: le zone delle prenotazioni esistenti che vuoi collegare all'impegno.

Esempio: acquista un impegno collegando prenotazioni esistenti

Supponiamo che tu abbia due prenotazioni res-01 e res-02 nelle zone us-central1-a e us-central1-b del progetto myproject. Supponiamo che queste prenotazioni abbiano una capacità combinata di 4 GPU NVIDIA P100 e 4 dischi SSD locali. Per acquistare un nuovo impegno nella regione us-central1 di questo progetto per queste GPU e questi dischi SSD locali e utilizzare queste prenotazioni esistenti come prenotazioni collegate, esegui il seguente comando. L'impegno specifica 96 vCPU, 624 GB di memoria, 4 GPU NVIDIA P100 e 1500 GB di spazio di archiviazione SSD locale (equivalente a 4 dischi SSD locali). Il valore di archiviazione SSD locale deve essere specificato in GB (ad esempio, 375GB). Per gcloud CLI, puoi specificare la memoria in MB o GB. Se non specifichi un'unità, Compute Engine utilizza il GB come unità predefinita. Tuttavia, tieni presente che quando utilizzi REST, Compute Engine utilizza MB come unità predefinita.

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624GB,local-ssd=1500 \
    --resources-accelerator=type=nvidia-tesla-p100,count=4 \
    --plan 12-month \
    --existing-reservation=name=res-01,zone=us-central1-a \
    --existing-reservation=name=res-02,zone=us-central1-b
    

REST

Per acquistare un impegno collegando prenotazioni esistenti, effettua una richiesta POST al metodo regionCommitments.insert. Nella richiesta, includi il campo existingReservations per specificare un elenco separato da virgole di tutte le prenotazioni esistenti che vuoi collegare al tuo impegno. Puoi collegare all'impegno un numero qualsiasi di prenotazioni esistenti.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments

{
  "name": "COMMITMENT_NAME",
  "plan": "PLAN",
  "type": "COMMITMENT_TYPE",
  "resources":
  [
    {
      "amount": "COMMITTED_VCPUS",
      "type": "VCPU"
    },
    {
      "amount": "COMMITTED_MEMORY",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
      "amount": "COMMITTED_ACCELERATOR_COUNT",
      "type": "ACCELERATOR"
    },
    {
      "amount": "COMMITTED_LOCAL_SSD",
      "type": "LOCAL_SSD"
    }
  ],
  "customEndTimestamp": "CUSTOM_END_DATETEND_TIMEZ",
  "existingReservations": "RESERVATION_URLs"
}

Sostituisci quanto segue:

  • COMMITMENT_NAME: il nome dell'impegno.
  • REGION: la regione in cui si trova l'impegno.
  • PROJECT_ID: l'ID del progetto in cui vuoi acquistare l'impegno con le prenotazioni collegate.
  • PLAN: il piano di impegno, che determina la tariffa CUD e la durata preimpostata. Specifica TWELVE_MONTH o THIRTY_SIX_MONTH.
  • COMMITMENT_TYPE: il tipo di impegno. I seguenti tipi di impegno forniscono opzioni per GPU, dischi SSD locali o entrambi:

    • Per i tipi di macchine A2, utilizza ACCELERATOR_OPTIMIZED
    • Per i tipi di macchina A3 Edge e A3 High, utilizza ACCELERATOR_OPTIMIZED_A3
    • Per i tipi di macchine A3 Mega, utilizza ACCELERATOR_OPTIMIZED_A3_MEGA
    • Per i tipi di macchine G2, utilizza GRAPHICS_OPTIMIZED
    • Per i tipi di macchina G4, utilizza GRAPHICS_OPTIMIZED_G4
    • Per i tipi di macchine C2, utilizza COMPUTE_OPTIMIZED
    • Per i tipi di macchine C2D, utilizza COMPUTE_OPTIMIZED_C2D
    • Per i tipi di macchina C3, utilizza COMPUTE_OPTIMIZED_C3
    • Per i tipi di macchine C3D, utilizza COMPUTE_OPTIMIZED_C3D
    • Per i tipi di macchine N1, utilizza GENERAL_PURPOSE
    • Per i tipi di macchine C4, utilizza GENERAL_PURPOSE_C4
    • Per i tipi di macchina C4A, utilizza GENERAL_PURPOSE_C4A
    • Per i tipi di macchine C4D, utilizza GENERAL_PURPOSE_C4D
    • Per i tipi di macchine N2, utilizza GENERAL_PURPOSE_N2
    • Per i tipi di macchine N2D, utilizza GENERAL_PURPOSE_N2D
    • Per i tipi di macchine M1, utilizza MEMORY_OPTIMIZED
    • Per i tipi di macchine M3, utilizza MEMORY_OPTIMIZED_M3
    • Per i tipi di macchine Z3, utilizza STORAGE_OPTIMIZED_Z3

  • COMMITTED_VCPUS: il numero di vCPU che vuoi inserire nell'impegno. Il valore deve essere un numero intero positivo.

  • COMMITTED_MEMORY: la quantità di memoria che vuoi includere nell'impegno. Per REST, Compute Engine utilizza MB come unità predefinita. Tuttavia, tieni presente che quando utilizzi gcloud CLI, Compute Engine utilizza GB come unità predefinita.

  • COMMITTED_LOCAL_SSD: la quantità di spazio di archiviazione SSD locale, in GB, che vuoi inserire nell'impegno.

  • COMMITTED_ACCELERATOR_COUNT: il numero di GPU che vuoi inserire nell'impegno.

  • COMMITTED_ACCELERATOR_TYPE: il tipo di GPU che vuoi inserire nell'impegno.

  • CUSTOM_END_DATE: (Facoltativo) una data di fine personalizzata per il tuo periodo, che deve essere formattata come YYYY-MM-DD. Ad esempio, per specificare una data di fine personalizzata il 20 aprile 2024, formattala come 2024-04-20.

  • END_TIME: 00:00 UTC-8 o UTC-7 (fuso orario del Pacifico), inteso come differenza di fuso rispetto al tempo universale coordinato (UTC). Specifica questo valore solo se hai specificato una data di fine personalizzata per il tuo impegno. Specifica uno dei seguenti valori:

    • Durante l'ora legale: 07:00:00
    • In altri orari: 08:00:00
  • RESERVATION_URLs: un elenco separato da virgole di URL delle prenotazioni esistenti che vuoi collegare all'impegno. Ad esempio, per collegare due prenotazioni, res-1 e res-2, specifica quanto segue:

    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/example-res-1",
    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-c/reservations/example-res-2"
    

Esempio: acquista un impegno collegando prenotazioni esistenti

Supponiamo che tu abbia due prenotazioni res-01 e res-02 nelle zone us-central1-a e us-central1-b del progetto myproject. Supponiamo che queste prenotazioni abbiano una capacità combinata di 4 GPU NVIDIA P100 e 4 dischi SSD locali. Per acquistare un nuovo impegno nella regione us-central1 di questo progetto per queste GPU e questi dischi SSD locali e per utilizzare queste prenotazioni esistenti come prenotazioni collegate, effettua la seguente richiesta POST. L'impegno specifica 96 vCPU, 624 GB di memoria, 4 GPU NVIDIA P100 e 1500 GB di spazio di archiviazione SSD locale. Tieni presente che il valore di archiviazione SSD locale deve essere specificato in GB. Per la memoria, devi specificare il valore in MB. Tuttavia, tieni presente che quando utilizzi gcloud CLI, Compute Engine utilizza GB come unità predefinita per la memoria.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-p100",
      "amount": "4",
      "type": "ACCELERATOR"
    },
    {
      "amount": "1500",
      "type": "LOCAL_SSD"
    }
  ],
  "existingReservations":
  [
    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/res-01",
    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-b/reservations/res-02"
  ]
}

Crea nuove prenotazioni da collegare

Puoi creare le prenotazioni collegate durante l'acquisto dell'impegno utilizzando la console Google Cloud , Google Cloud CLI o REST.

Console

Prima di acquistare un impegno utilizzando la console Google Cloud , seleziona il progetto che vuoi utilizzare per l'acquisto dell'impegno. Se la condivisione del CUD è abilitata per un account di fatturazione Cloud, puoi acquistare l'impegno utilizzando qualsiasi progetto di quell'account di fatturazione Cloud. Dopo aver selezionato il progetto:

  1. Nella console Google Cloud , vai alla pagina Sconti per impegno di utilizzo. Vai a Sconti per impegno di utilizzo

  2. Fai clic su Acquista impegno. Viene visualizzata la pagina Acquista un impegno.

  3. Nel campo Nome, inserisci un nome per l'impegno.

  4. Nel campo Regione, seleziona la regione in cui vuoi acquistare l'impegno.

  5. Nel campo Tipo di impegno, seleziona la serie della famiglia di macchine per il tuo impegno. I seguenti tipi di impegno forniscono opzioni per GPU, dischi SSD locali o entrambi:

    • Per i tipi di macchine A2, seleziona A2 ottimizzata per l'acceleratore.
    • Per i tipi di macchina A3 Edge e A3 High, seleziona A3 ottimizzata per l'acceleratore.
    • Per i tipi di macchine A3 Mega, seleziona A3 Mega ottimizzata per l'acceleratore
    • Per i tipi di macchine G2, seleziona G2 ottimizzata per la grafica.
    • Per i tipi di macchina G4, seleziona G4 ottimizzata per la grafica.
    • Per i tipi di macchine C2, seleziona C2 ottimizzata per il calcolo.
    • Per i tipi di macchine C2D, seleziona C2D ottimizzata per il calcolo.
    • Per i tipi di macchina C3, seleziona C3 per uso generico.
    • Per i tipi di macchine C3D, seleziona C3D per uso generico
    • Per i tipi di macchina C4, seleziona C4 per uso generico.
    • Per i tipi di macchina C4A, seleziona C4A per uso generico.
    • Per i tipi di macchine C4D, seleziona C4D per uso generico.
    • Per i tipi di macchine N1, seleziona N1 per uso generico.
    • Per i tipi di macchine N2, seleziona N2 per uso generico.
    • Per i tipi di macchine N2D, seleziona N2D per uso generico.
    • Per i tipi di macchine M1, seleziona M1/M2 ottimizzate per la memoria.
    • Per i tipi di macchine M3, seleziona M3 ottimizzata per la memoria.
    • Per i tipi di macchina Z3, seleziona Z3 ottimizzata per l'archiviazione.

  6. Per creare una nuova prenotazione e collegarla all'impegno:

    1. Seleziona la casella di controllo Collega una prenotazione nuova o esistente.

    2. Fai clic su Crea nuova prenotazione. Viene visualizzato il riquadro Crea una nuova prenotazione.

    3. Nel campo Nome, inserisci un nome per la prenotazione.

    4. (Facoltativo) Nel campo Descrizione, inserisci una descrizione.

    5. Nel campo Zona, seleziona la zona in cui vuoi che le risorse riservate siano disponibili.

    6. Nella sezione Tipo di condivisione, specifica come vuoi condividere la prenotazione:

      • Per creare una prenotazione per un singolo progetto, seleziona Locali.
      • Per creare una prenotazione condivisa con più progetti, seleziona Condivise. Poi, fai clic su Aggiungi progetti e seleziona i progetti che vuoi.
    7. Nella sezione Servizi Google Cloud, specifica se condividere questa prenotazione con altri servizi come Google Kubernetes Engine o Vertex AI.

    8. Nella sezione Utilizza con un'istanza VM, seleziona in che modo vuoi che le VM utilizzino la prenotazione:

      • Per consentire alle VM con proprietà corrispondenti di utilizzare automaticamente questa prenotazione, seleziona Usa automaticamente la prenotazione.
      • Per utilizzare le risorse di questa prenotazione solo quando hanno come target specifico questa prenotazione in base al nome, seleziona Seleziona una prenotazione specifica.
    9. Nella sezione Dettagli risorsa:

      1. Nel campo Numero di istanze VM, inserisci il numero di VM.

      2. Nella sezione Configurazione macchina, specifica le proprietà selezionando Tipo di macchina. Seleziona un tipo di macchina dall'elenco o seleziona Personalizzata per specificare il numero di core e la quantità di memoria.

      3. (Facoltativo) Se vuoi prenotare le GPU, fai clic su Aggiungi GPU e specifica il tipo di GPU e il numero di GPU per ogni VM.

      4. (Facoltativo) Se vuoi prenotare dischi SSD locali, specifica il Numero di dischi e il Tipo di interfaccia.

      5. (Facoltativo) Se vuoi specificare una policy di posizionamento del gruppo, seleziona o crea una policy nell'elenco Policy di posizionamento del gruppo.

    10. Per completare la specifica delle proprietà per questa prenotazione, fai clic su Crea e allega.

    11. (Facoltativo) Se vuoi creare e allegare altre nuove prenotazioni, fai di nuovo clic su Crea nuova prenotazione e ripeti questi passaggi.

    Dopo aver allegato le prenotazioni, Compute Engine compila automaticamente i campi nella sezione Dettagli impegno in modo che corrispondano ai numeri e ai tipi di risorse delle prenotazioni allegate. Se hai inserito manualmente i valori per le risorse nella sezione Dettagli impegno prima di allegare le prenotazioni, i valori vengono sovrascritti con i valori delle prenotazioni.

  7. Nella sezione Dettagli impegno, segui questi passaggi:

    1. Nel campo Core, verifica il valore precompilato. (Facoltativo) puoi specificare un numero diverso di vCPU.

    2. Nel campo Memoria, verifica la quantità di memoria precompilata in GB. Se vuoi, puoi specificare un importo diverso. Puoi specificare la memoria solo con incrementi di 0,25 GB. Per specificare un valore di memoria personalizzato per l'impegno, utilizza gcloud CLI o REST.

    3. Espandi la sezione GPU e SSD locali e verifica che i tipi e i numeri corrispondano tra l'impegno e le prenotazioni collegate, come segue:

      1. Nel campo Tipo di GPU, verifica il tipo di GPU precompilato.

      2. Nel campo Numero di GPU, verifica il numero precompilato di GPU.

      3. Nel campo SSD locali, verifica il numero precompilato di dischi.

      Se specifichi manualmente valori diversi dalle prenotazioni allegate per uno qualsiasi di questi campi, l'acquisto dell'impegno non va a buon fine. Per tutte le GPU e la maggior parte dei dischi SSD locali, i numeri e i tipi totali devono corrispondere tra l'impegno e le prenotazioni collegate.

  8. Nella sezione Termini, segui questi passaggi:

    1. Per specificare il piano per il tuo impegno, seleziona 1 anno o 3 anni. Il piano determina la tariffa CUD e la durata predefinita del tuo impegno.

    2. Controlla il campo Data di inizio, che mostra la data e l'ora in cui il tuo impegno diventa attivo. Questo campo viene impostato automaticamente sulle ore 00:00 del fuso orario del Pacifico di Stati Uniti e Canada il giorno successivo alla data attuale.

    3. Facoltativo. Per estendere il termine dell'impegno oltre la durata del termine preimpostata definita dal piano dell'impegno, specifica una data di fine personalizzata per l'impegno nel campo Data di fine. Per ulteriori informazioni, consulta Estendi i termini dell'impegno.

    4. Facoltativo. Se vuoi che l'impegno si rinnovi automaticamente al termine del periodo, seleziona la casella di controllo Rinnova automaticamente l'impegno.

  9. Nel riquadro Riepilogo, rivedi i dettagli dell'impegno e le eventuali limitazioni della quota.

  10. Per completare l'acquisto dell'impegno:

    1. Vai alla parte inferiore della pagina.

    2. Consulta la sezione Comunicazioni, che contiene informazioni su commissioni, idoneità agli sconti e termini e condizioni.

    3. Per confermare l'accettazione del prezzo di impegno e dei termini specifici del servizio, seleziona la casella di controllo.

    4. Fai clic su Acquista.

gcloud

Per creare le prenotazioni collegate durante l'acquisto dell'impegno, esegui il comando gcloud compute commitments create.

A seconda che tu voglia collegare una singola prenotazione o più prenotazioni, esegui il comando in uno dei seguenti modi:

  • Per creare e collegare una singola prenotazione al tuo impegno, definisci le proprietà della prenotazione collegata eseguendo il seguente comando:

    gcloud compute commitments create COMMITMENT_NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --plan PLAN \
        --type COMMITMENT_TYPE
        --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
        --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
        --custom-end-time=CUSTOM_END_DATE \
        --reservation=RESERVATION_NAME \
        --reservation-zone=RESERVATION_ZONE \
        --machine-type=RESERVED_MACHINE_TYPE \
        --require-specific-reservation=REQUIRE_SPECIFIC_RESERVATION_VALUE \
        --vm-count=NUMBER_OF_RESERVED_VMs \
        --accelerator=type=RESERVED_ACCELERATOR_TYPE,count=RESERVED_ACCELERATOR_COUNT \
        --local-ssd=interface=INTERFACE_1,size=375 \
        --local-ssd=interface=INTERFACE_2,size=375 \
        --minimum-cpu-platform=MINIMUM_CPU_PLATFORM \
        --share-setting=SHARE_SETTING \
        --share-with=CONSUMER_PROJECT_ID_1,CONSUMER_PROJECT_ID_2
    
  • Per creare e collegare più prenotazioni al tuo impegno, definisci le proprietà della prenotazione utilizzando un file YAML e poi specifica questo file YAML nel comando che utilizzi per acquistare l'impegno. Facoltativamente, puoi anche utilizzare questo approccio con file YAML per creare e collegare una singola prenotazione al tuo impegno. Per creare le prenotazioni collegate utilizzando questo approccio:

    1. Crea il file YAML nella directory corrente e specifica la configurazione che preferisci per ogni prenotazione collegata. Ad esempio, per specificare la configurazione di una prenotazione condivisa con due progetti che specifica GPU, due dischi SSD locali e una piattaforma CPU minima, includi il seguente testo nel file YAML:

      - reservation: RESERVATION_NAME
        reservation_zone: RESERVATION_ZONE
        require_specific_reservation: REQUIRE_SPECIFIC_RESERVATION_VALUE
        vm_count: NUMBER_OF_RESERVED_VMs
        machine_type: RESERVED_MACHINE_TYPE
        accelerator:
        - count: RESERVED_ACCELERATOR_COUNT
          type: RESERVED_ACCELERATOR_TYPE
        localssd:
        - interface: INTERFACE_1
          size: 375
        - interface: INTERFACE_2
          size: 375
        project: OWNER_PROJECT_ID
        minimum-cpu-platform: MINIMUM_CPU_PLATFORM
        share-setting: SHARE_SETTING
        share-with:
        - CONSUMER_PROJECT_ID_1
        - CONSUMER_PROJECT_ID_2
      
      

      Per specificare la configurazione per più prenotazioni, ripeti queste proprietà per ogni prenotazione che vuoi creare. Puoi collegare al tuo impegno un numero qualsiasi di prenotazioni esistenti.

    2. Esegui il comando gcloud compute commitments create e includi il flag --reservation-from-file.

      gcloud compute commitments create COMMITMENT_NAME \
          --region REGION \
          --project PROJECT_ID \
          --plan PLAN \
          --type COMMITMENT_TYPE \
          --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
          --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
          --reservations-from-file=YAML_FILE
      

Sostituisci quanto segue con le proprietà corrispondenti dell'impegno e delle prenotazioni collegate:

Impegno

  • COMMITMENT_NAME: il nome dell'impegno.
  • REGION: la regione in cui si trova l'impegno.
  • PROJECT_ID: l'ID del progetto in cui vuoi acquistare l'impegno con le prenotazioni collegate.
  • PLAN: il piano di impegno, che determina la tariffa CUD e la durata preimpostata. Specifica 12-month o 36-month.
  • CUSTOM_END_DATE: (Facoltativo) una data di fine personalizzata per il tuo periodo, che deve essere formattata come YYYY-MM-DD. Ad esempio, per specificare una data di fine personalizzata il 20 aprile 2024, formattala come 2024-04-20.
  • COMMITMENT_TYPE: il tipo di impegno. I seguenti tipi di impegno forniscono opzioni per GPU, dischi SSD locali o entrambi:

    • Per i tipi di macchine A2, utilizza accelerator-optimized
    • Per i tipi di macchina A3 Edge e A3 High, utilizza accelerator-optimized-a3
    • Per i tipi di macchine A3 Mega, utilizza accelerator-optimized-a3-mega
    • Per i tipi di macchine G2, utilizza graphics-optimized
    • Per i tipi di macchina G4, utilizza graphics-optimized-g4
    • Per i tipi di macchine C2, utilizza compute-optimized
    • Per i tipi di macchine C2D, utilizza compute-optimized-c2d
    • Per i tipi di macchina C3, utilizza compute-optimized-c3
    • Per i tipi di macchine C3D, utilizza compute-optimized-c3d
    • Per i tipi di macchine N1, utilizza general-purpose
    • Per i tipi di macchine C4, utilizza general-purpose-c4
    • Per i tipi di macchina C4A, utilizza general-purpose-c4a
    • Per i tipi di macchine C4D, utilizza general-purpose-c4d
    • Per i tipi di macchine N2, utilizza general-purpose-n2
    • Per i tipi di macchine N2D, utilizza general-purpose-n2d
    • Per i tipi di macchine M1, utilizza memory-optimized
    • Per i tipi di macchine M3, utilizza memory-optimized-m3
    • Per i tipi di macchine Z3, utilizza storage-optimized-z3

  • COMMITTED_VCPUS: il numero di vCPU che vuoi includere nel tuo impegno. Il valore deve essere un numero intero positivo.

  • COMMITTED_MEMORY: la quantità di memoria, in MB o GB, che vuoi includere nell'impegno. Ad esempio, 10GB o 10240MB. Per gcloud CLI, puoi specificare la memoria in MB o GB. Se non specifichi un'unità, Compute Engine utilizza GB come unità predefinita. Tuttavia, tieni presente che quando utilizzi REST, Compute Engine utilizza MB come unità predefinita.

  • COMMITTED_LOCAL_SSD: la quantità di spazio di archiviazione SSD locale, che deve essere specificata in GB; ad esempio, 375GB.

  • COMMITTED_ACCELERATOR_COUNT: il numero di GPU che vuoi inserire nell'impegno.

  • COMMITTED_ACCELERATOR_TYPE: il tipo di GPU che vuoi inserire nell'impegno.

  • YAML_FILE: il percorso del file YAML che contiene la configurazione delle prenotazioni collegate.

Prenotazioni collegate

  • RESERVATION_NAME: il nome della prenotazione collegata.
  • RESERVATION_ZONE: la zona della prenotazione collegata.
  • REQUIRE_SPECIFIC_RESERVATION_VALUE: specifica se la prenotazione collegata è una prenotazione con target specifico. Deve essere true o false. Per ulteriori informazioni sulle prenotazioni con target specifico, consulta Come funzionano le prenotazioni.
  • NUMBER_OF_RESERVED_VMS: il numero di VM che vuoi prenotare nella prenotazione collegata.
  • RESERVED_MACHINE_TYPE: il tipo di macchina che vuoi per le VM nella prenotazione collegata.

    • Per i tipi di macchine predefinite, utilizza il formato MACHINE_FAMILY-standard-CPUS; ad esempio, n2-standard-4.
    • Per i tipi di macchine personalizzate, utilizza il formato MACHINE_FAMILY-custom-CPUS-MEMORY; ad esempio n2-custom-4-5120. Per un elenco completo delle limitazioni, consulta le specifiche per i tipi di macchine personalizzate.

      Sostituisci quanto segue:

      • MACHINE_FAMILY: la famiglia di tipi di macchine; ad esempio, specifica n2 per le VM N2.
      • CPUS: il numero di vCPU.
      • MEMORY: la memoria totale di una VM prenotata. La memoria deve essere un multiplo di 256 MB e deve essere fornita in MB. Ad esempio, per creare una VM N2 con 4 vCPU e 5 GB di memoria, ovvero 5120 MB, utilizza n2-custom-4-5120.
  • RESERVED_ACCELERATOR_COUNT: il numero di GPU da aggiungere per VM nella prenotazione collegata.

  • RESERVED_ACCELERATOR_TYPE: il tipo di acceleratore che vuoi aggiungere alla prenotazione collegata.

  • INTERFACE_1 e INTERFACE_2: il tipo di interfaccia che vuoi che i dischi SSD locali utilizzino per ogni VM prenotata. Le opzioni valide sono: scsi e nvme. Ripeti il parametro local_ssd per ogni disco SSD locale che vuoi aggiungere. Puoi specificare fino a 24 dischi SSD locali.

  • OWNER_PROJECT_ID: l'ID del progetto in cui vuoi acquistare l'impegno con la prenotazione collegata. Specifica questo campo se vuoi condividere la prenotazione collegata su più progetti consumer.

  • MINIMUM_CPU_PLATFORM: la piattaforma CPU minima che vuoi specificare per la prenotazione collegata.

  • SHARE_SETTING: il tipo di condivisione per la prenotazione collegata. Specifica questo campo con il valore projects se vuoi condividere la prenotazione collegata in più progetti consumer. Escludi questo campo se vuoi creare una prenotazione per un singolo progetto.

  • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: gli ID progetto dei progetti che possono condividere questa prenotazione, ad esempio project-1 e project-2. Puoi includere fino a 100 progetti consumer. Questi progetti devono appartenere alla stessa organizzazione del progetto proprietario. Non includere l'ID del progetto in cui crei questa prenotazione, in quanto il progetto è autorizzato a utilizzarla per impostazione predefinita. Escludi questi campi se vuoi creare una prenotazione per un singolo progetto.

Compute Engine crea l'impegno e le prenotazioni collegate solo se al momento della richiesta sono disponibili risorse sufficienti del tipo di macchina specificato nella zona di destinazione e una quota sufficiente. Se l'acquisto è andato a buon fine, viene visualizzato un messaggio di conferma simile al seguente:

Created[https://www.googleapis.com/compute/v1/projects/your-project/regions/your-region/commitments/your-commitment-name]

Esempi

Gli scenari e i comandi di esempio riportati di seguito mostrano come acquistare un impegno per GPU, dischi SSD locali o entrambi creando nuove prenotazioni da collegare all'impegno.

Esempio 1: acquista un impegno per le GPU collegando una singola prenotazione nuova

Supponiamo che tu voglia acquistare un impegno di 1 anno per risorse per uso generico (o risorse GPU) nella regione us-central1 con 96 vCPU, 624 GB di memoria e 4 GPU NVIDIA V100. Vuoi creare una nuova prenotazione reservation-01 nella zona us-central1-a che prenoti 2 VM n1-standard-32 (ogni VM con 32 vCPU, 120 GB di memoria e 2 GPU NVIDIA V100) per utilizzare queste risorse di cui è stato eseguito il commit. Per acquistare questo impegno di esempio con la prenotazione collegata, esegui il seguente comando. Per gcloud CLI, puoi specificare la memoria in MB o GB. Se non specifichi un'unità, Compute Engine utilizza come unità predefinita il GB. Tuttavia, tieni presente che quando utilizzi REST, Compute Engine utilizza MB come unità predefinita.

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624GB \
    --resources-accelerator=type=nvidia-tesla-v100,count=4 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-central1-a \
    --machine-type=n1-standard-32 \
    --accelerator=type=nvidia-tesla-v100,count=2 \
    --vm-count=2

Esempio 2: acquista un impegno per le GPU senza specificare vCPU o memoria

Per impegnarti a utilizzare e prenotare GPU e dischi SSD locali senza impegnarti a utilizzare vCPU o memoria, specifica 0 come valore per le quantità di vCPU e memoria. Ad esempio, supponiamo che tu voglia acquistare un impegno di 1 anno per risorse GPU nella regione us-west2 con 0 vCPU, 0 GB di memoria e 1 GPU NVIDIA P4. Inoltre, vuoi creare una nuova prenotazione reservation-01 nella zona us-west2-b che prenoti una VM n1-standard-2 (con 2 vCPU, 7,5 GB di memoria e 1 GPU NVIDIA P4) da collegare all'impegno. Per acquistare questo impegno di esempio con la prenotazione collegata, esegui il seguente comando. Per gcloud CLI, puoi specificare la memoria in MB o GB. Se non specifichi un'unità, Compute Engine utilizza come unità predefinita il GB. Tuttavia, tieni presente che quando utilizzi REST, Compute Engine utilizza MB come unità predefinita.

gcloud compute commitments create commitment-02 \
    --region=us-west2 \
    --project=myproject \
    --resources=vcpu=0,memory=0 \
    --resources-accelerator=type=nvidia-tesla-p4,count=1 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-west2-b \
    --machine-type=n1-standard-2 \
    --accelerator=type=nvidia-tesla-p4,count=1 \
    --vm-count=1

Esempio 3: acquista un impegno per GPU e dischi SSD locali collegando più prenotazioni nuove

Supponiamo che tu voglia acquistare un impegno di 1 anno per risorse per uso generico (o GPU e SSD locali) nella regione us-central1. Vuoi l'impegno per 96 vCPU, 624 GB di memoria, 1 GPU NVIDIA V100 e 750 GB di spazio di archiviazione su SSD locale (corrispondenti a 2 dischi SSD locali). Inoltre, vuoi creare e collegare due prenotazioni nella zona us-central1-a. Nella prima prenotazione, res-01, vuoi prenotare 1 VM n1-standard-2 (con 2 vCPU, 7, 5 GB di memoria e 1 GPU NVIDIA V100); questa è una prenotazione mirata. Nella seconda prenotazione, res-02, vuoi prenotare 1 VM n1-standard-8 (con 8 vCPU, 30 GB di memoria) e collegare 2 dischi SSD locali (un'interfaccia SCSI e un'interfaccia NVMe).

Per acquistare questo impegno di esempio con le prenotazioni collegate, innanzitutto crea il file YAML con le proprietà di entrambe le prenotazioni nel seguente modo:

- reservation: res-01
  reservation_zone: us-central1-a
  require_specific_reservation: true
  vm_count: 1
  machine_type: n1-standard-2
  accelerator:
  - count: 1
    type: nvidia-tesla-v100
- reservation: res-02
  reservation_zone: us-central1-a
  vm_count: 1
  machine_type: n1-standard-8
  local_ssd:
  - interface: scsi
    size: 375
  - interface: nvme
    size: 375

Dopo aver creato il file YAML, per completare l'acquisto dell'impegno con le relative prenotazioni collegate, esegui il seguente comando. Il valore di archiviazione SSD locale deve essere specificato in GB (ad esempio, 375GB). Per gcloud CLI, puoi specificare la memoria in MB o GB. Se non specifichi un'unità, Compute Engine utilizza come unità predefinita il GB. Tuttavia, tieni presente che quando utilizzi REST, Compute Engine utilizza MB come unità predefinita per la memoria.

gcloud compute commitments create commitment-03 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624,local-ssd=750 \
    --resources-accelerator=type=nvidia-tesla-v100,count=1 \
    --plan 12-month \
    --reservations-from-file=YAML_FILE

REST

Per creare le prenotazioni collegate durante l'acquisto del tuo impegno, effettua una richiesta POST al metodo regionCommitments.insert. Nella richiesta, includi il campo reservations per definire un elenco di tutte le nuove prenotazioni che vuoi creare e collegare. Puoi collegare al tuo impegno un numero qualsiasi di prenotazioni esistenti.

  • Per creare la nuova prenotazione specificando manualmente tutte le proprietà delle VM, includi il campo instanceProperties ed escludi il campo sourceInstanceTemplate.

    Ad esempio, per specificare manualmente la configurazione di una prenotazione condivisa con due progetti che specifica GPU, due dischi SSD locali e una piattaforma CPU minima, effettua la seguente richiesta:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
    
    {
    "name": "COMMITMENT_NAME",
    "plan": "PLAN",
    "type": "COMMITMENT_TYPE",
    "resources":
    [
      {
        "amount": "COMMITTED_VCPUS",
        "type": "VCPU"
      },
      {
        "amount": "COMMITTED_MEMORY",
        "type": "MEMORY"
      },
      {
        "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
        "amount": "COMMITTED_ACCELERATOR_COUNT",
        "type": "ACCELERATOR"
      },
      {
        "amount": "COMMITTED_LOCAL_SSD",
        "type": "LOCAL_SSD"
      }
    ],
    "customEndTimestamp": "CUSTOM_END_DATETEND_TIMEZ",
    "reservations":
    [
      {
        "name": "RESERVATION_NAME",
        "specificReservation":
        {
          "count": "NUMBER_OF_RESERVED_VMS",
          "instanceProperties":
          {
            "guestAccelerators":
            [
              {
                "acceleratorCount": "RESERVED_ACCELERATOR_COUNT",
                "acceleratorType": "RESERVED_ACCELERATOR_TYPE"
              }
            ],
            "localSsds":
            [
              {
                "diskSizeGb": "375",
                "interface": "RESERVED_INTERFACE_1"
              },
              {
                "diskSizeGb": "375",
                "interface": "RESERVED_INTERFACE_2"
              }
            ],
            "machineType": "RESERVED_MACHINE_TYPE",
            "minCpuPlatform": "MINIMUM_CPU_PLATFORM"
          }
        },
        "specificReservationRequired": "REQUIRE_SPECIFIC_RESERVATION_VALUE",
        "zone": "RESERVED_ZONE",
        "shareSettings":
        {
          "shareType": "SPECIFIC_PROJECTS",
          "projectMap":
          {
            "CONSUMER_PROJECT_ID_1":
            {
              "projectId": "CONSUMER_PROJECT_ID_1"
            },
            "CONSUMER_PROJECT_ID_2":
            {
              "projectId": "CONSUMER_PROJECT_ID_2"
            }
          }
        }
      }
    ]
    }
    
    
  • Per creare la nuova prenotazione specificando un template di istanza, includi il campo sourceInstanceTemplate ed escludi il campo instanceProperties.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
    
    {
    "name": "COMMITMENT_NAME",
    "plan": "PLAN",
    "type": "COMMITMENT_TYPE",
    "resources":
    [
      {
        "amount": "COMMITTED_VCPUS",
        "type": "VCPU"
      },
      {
        "amount": "COMMITTED_MEMORY",
        "type": "MEMORY"
      },
      {
        "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
        "amount": "COMMITTED_ACCELERATOR_COUNT",
        "type": "ACCELERATOR"
      },
      {
        "amount": "COMMITTED_LOCAL_SSD",
        "type": "LOCAL_SSD"
      }
    ],
    "customEndTimestamp": "CUSTOM_END_DATETEND_TIMEZ",
    "reservations":
    [
      {
        "name": "RESERVATION_NAME",
        "specificReservation":
        {
          "count": "NUMBER_OF_RESERVED_VMS",
          "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME"
        },
        "specificReservationRequired": "REQUIRE_SPECIFIC_RESERVATION_VALUE",
        "zone": "RESERVED_ZONE",
        "shareSettings":
        {
          "shareType": "SPECIFIC_PROJECTS",
          "projectMap":
          {
            "CONSUMER_PROJECT_ID_1":
            {
              "projectId": "CONSUMER_PROJECT_ID_1"
            },
            "CONSUMER_PROJECT_ID_2":
            {
              "projectId": "CONSUMER_PROJECT_ID_2"
            }
          }
        }
      }
    ]
    }
    
    

Sostituisci quanto segue con le proprietà corrispondenti dell'impegno e delle prenotazioni collegate:

Impegno

  • COMMITMENT_NAME: il nome dell'impegno.
  • REGION: la regione in cui si trova l'impegno.
  • PROJECT_ID: l'ID del progetto in cui vuoi acquistare l'impegno con le prenotazioni collegate.
  • PLAN: il piano di impegno, che determina la tariffa CUD e la durata preimpostata. Specifica TWELVE_MONTH o THIRTY_SIX_MONTH.
  • COMMITMENT_TYPE: il tipo di impegno. I seguenti tipi di impegno forniscono opzioni per GPU, dischi SSD locali o entrambi:

    • Per i tipi di macchine A2, utilizza ACCELERATOR_OPTIMIZED
    • Per i tipi di macchina A3 Edge e A3 High, utilizza ACCELERATOR_OPTIMIZED_A3
    • Per i tipi di macchine A3 Mega, utilizza ACCELERATOR_OPTIMIZED_A3_MEGA
    • Per i tipi di macchine G2, utilizza GRAPHICS_OPTIMIZED
    • Per i tipi di macchina G4, utilizza GRAPHICS_OPTIMIZED_G4
    • Per i tipi di macchine C2, utilizza COMPUTE_OPTIMIZED
    • Per i tipi di macchine C2D, utilizza COMPUTE_OPTIMIZED_C2D
    • Per i tipi di macchina C3, utilizza COMPUTE_OPTIMIZED_C3
    • Per i tipi di macchine C3D, utilizza COMPUTE_OPTIMIZED_C3D
    • Per i tipi di macchine N1, utilizza GENERAL_PURPOSE
    • Per i tipi di macchine C4, utilizza GENERAL_PURPOSE_C4
    • Per i tipi di macchina C4A, utilizza GENERAL_PURPOSE_C4A
    • Per i tipi di macchine C4D, utilizza GENERAL_PURPOSE_C4D
    • Per i tipi di macchine N2, utilizza GENERAL_PURPOSE_N2
    • Per i tipi di macchine N2D, utilizza GENERAL_PURPOSE_N2D
    • Per i tipi di macchine M1, utilizza MEMORY_OPTIMIZED
    • Per i tipi di macchine M3, utilizza MEMORY_OPTIMIZED_M3
    • Per i tipi di macchine Z3, utilizza STORAGE_OPTIMIZED_Z3

  • COMMITTED_VCPUS: il numero di vCPU che vuoi includere nel tuo impegno. Il valore deve essere un numero intero positivo.

  • COMMITTED_MEMORY: la quantità di memoria che vuoi includere nell'impegno. Per REST, Compute Engine utilizza MB come unità predefinita. Tuttavia, tieni presente che quando utilizzi gcloud CLI, Compute Engine utilizza GB come unità predefinita.

  • COMMITTED_LOCAL_SSD: la quantità di spazio di archiviazione SSD locale, in GB, che vuoi inserire nell'impegno.

  • COMMITTED_ACCELERATOR_COUNT: il numero di GPU che vuoi inserire nell'impegno.

  • COMMITTED_ACCELERATOR_TYPE: il tipo di GPU che vuoi inserire nell'impegno.

  • CUSTOM_END_DATE: (Facoltativo) una data di fine personalizzata per il tuo periodo, che deve essere formattata come YYYY-MM-DD. Ad esempio, per specificare una data di fine personalizzata il 20 aprile 2024, formattala come 2024-04-20.

  • END_TIME: 00:00 UTC-8 o UTC-7 (fuso orario del Pacifico), inteso come differenza di fuso rispetto al tempo universale coordinato (UTC). Specifica questo valore solo se hai specificato una data di fine personalizzata per il tuo impegno. Specifica uno dei seguenti valori:

    • Durante l'ora legale: 07:00:00
    • In altri orari: 08:00:00

Prenotazioni collegate

  • RESERVATION_NAME: il nome della prenotazione collegata.
  • RESERVATION_ZONE: la zona della prenotazione collegata.
  • REQUIRE_SPECIFIC_RESERVATION_VALUE: specifica se la prenotazione collegata è una prenotazione con target specifico. Deve essere true o false. Per ulteriori informazioni sulle prenotazioni con target specifico, consulta Come funzionano le prenotazioni.
  • NUMBER_OF_RESERVED_VMS: il numero di VM che vuoi prenotare nella prenotazione collegata.
  • RESERVED_MACHINE_TYPE: il tipo di macchina che vuoi per le VM nella prenotazione collegata.

    • Per i tipi di macchine predefinite, utilizza il formato MACHINE_FAMILY-standard-CPUS; ad esempio, n2-standard-4.
    • Per i tipi di macchine personalizzate, utilizza il formato MACHINE_FAMILY-custom-CPUS-MEMORY; ad esempio n2-custom-4-5120. Per un elenco completo delle limitazioni, consulta le specifiche per i tipi di macchine personalizzate.

      Sostituisci quanto segue:

      • MACHINE_FAMILY: la famiglia di tipi di macchine; ad esempio, specifica n2 per le VM N2.
      • CPUS: il numero di vCPU.
      • MEMORY: la memoria totale di una VM prenotata. La memoria deve essere un multiplo di 256 MB e deve essere fornita in MB. Ad esempio, per creare una VM N2 con 4 vCPU e 5 GB di memoria, ovvero 5120 MB, utilizza n2-custom-4-5120.
  • RESERVED_ACCELERATOR_COUNT: il numero di GPU da aggiungere per VM nella prenotazione collegata.

  • RESERVED_ACCELERATOR_TYPE: il tipo di acceleratore che vuoi aggiungere alla prenotazione collegata.

  • INTERFACE_1 e INTERFACE_2: il tipo di interfaccia che vuoi che i dischi SSD locali utilizzino per ogni VM prenotata. Le opzioni valide sono: scsi e nvme. Ripeti il parametro localSsds per ogni disco SSD locale che vuoi aggiungere. Puoi specificare fino a 24 dischi SSD locali.

  • MINIMUM_CPU_PLATFORM: la piattaforma CPU minima che vuoi specificare per la prenotazione collegata.

  • INSTANCE_TEMPLATE_NAME: il nome del template di istanza che vuoi utilizzare per creare la prenotazione collegata.

  • SHARE_SETTING: il tipo di condivisione per la prenotazione collegata. Specifica questo campo con il valore SPECIFIC_PROJECTS se vuoi condividere la prenotazione collegata in più progetti consumer. Escludi questo campo se vuoi creare una prenotazione per un singolo progetto.

  • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: gli ID progetto dei progetti che possono condividere questa prenotazione, ad esempio project-1 e project-2. Puoi includere fino a 100 progetti consumer. Questi progetti devono appartenere alla stessa organizzazione del progetto proprietario. Non includere l'ID del progetto in cui crei questa prenotazione, in quanto il progetto è autorizzato a utilizzarla per impostazione predefinita. Escludi questi campi se vuoi creare una prenotazione per un singolo progetto.

Compute Engine crea l'impegno e le prenotazioni collegate solo se al momento della richiesta sono disponibili risorse sufficienti del tipo di macchina specificato nella zona di destinazione e una quota sufficiente. Se l'acquisto è andato a buon fine, Compute Engine restituisce lo stato 200 per la richiesta API REST.

Esempi

Gli scenari e i comandi di esempio riportati di seguito mostrano come acquistare un impegno per GPU, dischi SSD locali o entrambi creando nuove prenotazioni da collegare all'impegno.

Esempio 1: acquista un impegno per le GPU collegando una singola prenotazione nuova

Supponiamo che tu voglia acquistare un impegno di 1 anno per risorse per uso generico nella regione us-central1 che include 96 vCPU, 624 GB di memoria (equivalenti a 638976 MB) e 4 GPU NVIDIA V100. Vuoi creare una nuova prenotazione reservation-01 nella zona us-central1-a che prenoti 2 VM n1-standard-8 (ciascuna con 8 vCPU, 30 GB di memoria e 2 GPU NVIDIA V100) da collegare a questo impegno. Per acquistare questo impegno di esempio con la prenotazione collegata, effettua la seguente richiesta POST: Per REST, devi specificare la memoria in MB. Tuttavia, tieni presente che quando utilizzi gcloud CLI, Compute Engine utilizza GB come unità predefinita.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "2",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 2,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

Esempio 2: acquista un impegno per le GPU senza specificare vCPU o memoria

Per impegnarti a utilizzare e prenotare GPU e dischi SSD locali senza impegnarti a utilizzare vCPU o memoria, specifica 0 come valore per le quantità di vCPU e memoria. Ad esempio, supponiamo che tu voglia acquistare un impegno di 1 anno solo per le risorse GPU nella regione us-west2, con 0 vCPU, 0 MB di memoria e 4 GPU NVIDIA P4. Inoltre, vuoi creare una nuova prenotazione reservation-01 nella zona us-west2-b che prenoti 1 VM n1-standard-2 (con 2 vCPU, 7,5 GB di memoria e 4 GPU NVIDIA P4) da collegare all'impegno. Per acquistare questo impegno di esempio con la prenotazione collegata, effettua la seguente richiesta POST. Per REST, devi specificare la memoria in MB. Tuttavia, tieni presente che quando utilizzi gcloud CLI, Compute Engine utilizza GB come unità predefinita.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west2/commitments

{
  "name": "commitment-02",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "0",
      "type": "VCPU"
    },
    {
      "amount": "0",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-p4",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 4,
              "acceleratorType": "nvidia-tesla-p4"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-west2-b"
    }
  ]
}

Esempio 3: acquista un impegno per GPU e dischi SSD locali collegando più prenotazioni nuove

Supponiamo che tu voglia acquistare un impegno di 1 anno per risorse per uso generico nella regione us-central1, con 96 vCPU, 624 GB di memoria (equivalenti a 638976 MB), 1 GPU NVIDIA V100 e 750 GB di spazio di archiviazione SSD locale. Inoltre, vuoi creare e collegare due prenotazioni nella zona us-central1-a. Nella prima prenotazione, res-01, vuoi prenotare 1 VM n1-standard-2 (con 2 vCPU, 7, 5 GB di memoria e 1 GPU NVIDIA V100); si tratta di una prenotazione mirata. Nella seconda prenotazione, res-02, vuoi prenotare 1 VM n1-standard-8 (con 8 vCPU, 30 GB di memoria) e collegare 2 dischi SSD locali (un'interfaccia SCSI e un'interfaccia NVMe). Per acquistare questo impegno di esempio con le prenotazioni collegate, effettua la seguente richiesta POST. Tieni presente che il valore di archiviazione SSD locale deve essere specificato in GB. Per la memoria, devi specificare il valore in MB. Tuttavia, tieni presente che quando utilizzi gcloud CLI, Compute Engine utilizza GB come unità predefinita per la memoria.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-03",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "1",
      "type": "ACCELERATOR"
    },
    {
      "amount": "750",
      "type": "LOCAL_SSD"
    }
  ],
  "reservations":
  [
    {
      "name": "res-01",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 1,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": true,
      "zone": "us-central1-a"
    },
    {
      "name": "res-02",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "localSsds":
          [
            {
              "diskSizeGb": "375",
              "interface": "SCSI"
            },
            {
              "diskSizeGb": "375",
              "interface": "NVME"
            }
          ],
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

Sostituisci le prenotazioni collegate agli impegni

Per gli impegni che richiedono prenotazioni collegate, non puoi eliminare, ridimensionare o modificare direttamente le prenotazioni collegate. Tuttavia, puoi modificare i tipi di macchina e il numero di VM specificati nella prenotazione collegata. Puoi apportare queste modifiche sostituendo la prenotazione collegata esistente dell'impegno con una nuova prenotazione collegata.

Per gli impegni in cui le prenotazioni associate sono facoltative, puoi eliminare o ridimensionare direttamente le prenotazioni associate. Per ulteriori informazioni sulle differenze di comportamento, consulta Comportamento delle prenotazioni dopo l'acquisto dell'impegno.

La prenotazione sostitutiva sarà sempre una prenotazione appena creata. Per sostituire una prenotazione collegata, devi specificare le proprietà della prenotazione che vuoi utilizzare come sostituzione. Compute Engine crea automaticamente una nuova prenotazione con queste proprietà e la utilizza per sostituire la prenotazione collegata. Non puoi utilizzare una prenotazione esistente per sostituire la prenotazione collegata.

Modifiche consentite

Quando sostituisci una prenotazione collegata esistente di un impegno con una nuova prenotazione, puoi richiedere una delle seguenti modifiche:

  • Puoi prenotare VM di un tipo di macchina diverso. Tuttavia, devi comunque prenotare VM della stessa serie di macchine per continuare a ricevere sconti per utilizzo sostenuto per le risorse prenotate.
  • Puoi modificare il numero di VM che vuoi prenotare.
  • Puoi modificare la quantità di GPU e dischi SSD locali collegati per VM, a condizione che la quantità totale di GPU e dischi SSD locali prenotati rimanga invariata.
  • Puoi specificare che le prenotazioni sostituite siano prenotazioni per un singolo progetto (chiamate anche locali nella console Google Cloud ) o condivise.

Requisiti

Quando sostituisci la prenotazione collegata all'impegno con una nuova, la tua richiesta deve soddisfare tutti i seguenti requisiti:

  • Puoi sostituire una sola prenotazione collegata alla volta con una sola nuova prenotazione collegata. Per sostituire una prenotazione collegata, rimuovi contemporaneamente una prenotazione collegata esistente impostando il conteggio VM su 0 e definisci una nuova prenotazione collegata che vuoi sostituire.
  • La nuova prenotazione deve esistere nello stesso progetto dell'impegno.
  • La nuova prenotazione deve trovarsi nella stessa zona della prenotazione rimossa.
  • La quantità e i tipi di GPU specificati nella nuova prenotazione devono corrispondere a quelli della prenotazione rimossa.
  • I numeri e i tipi di dischi SSD locali specificati nella nuova prenotazione devono corrispondere a quelli della prenotazione rimossa.
  • Puoi modificare fino a 100 VM per richiesta. Per apportare una modifica che coinvolge più di 100 VM, dividi la modifica in più richieste più piccole o contatta l' Google Cloud assistenza.

La tua richiesta di sostituzione di una prenotazione dipende anche dalla disponibilità di capacità in quel momento. Se la capacità per una richiesta non è disponibile, la richiesta non va a buon fine e restituisce un errore di disponibilità della risorsa, che puoi provare a risolvere modificando o posticipando la richiesta. Per saperne di più, consulta la documentazione relativa alla risoluzione dei problemi di disponibilità delle risorse.

Se la richiesta di sostituzione di una prenotazione collegata non va a buon fine, la prenotazione collegata e le risorse riservate esistenti rimangono invariate. Per preservare la capacità, attendi di apportare le modifiche corrispondenti alle VM solo dopo che la richiesta di sostituzione di una prenotazione è andata a buon fine.

Procedura per sostituire una prenotazione allegata

Puoi sostituire le prenotazioni di un impegno utilizzando Google Cloud CLI o REST.

gcloud

Per sostituire le prenotazioni collegate agli impegni:

  1. Crea un file YAML nella directory corrente con le configurazioni delle seguenti prenotazioni collegate:

    I contenuti del file YAML sono simili ai seguenti:

    - reservation: CURRENT_RESERVATION_NAME
      reservation_zone: CURRENT_RESERVATION_ZONE
      vm_count: 0
      machine_type: CURRENT_RESERVATION_MACHINE_TYPE
      accelerator:
      - count: CURRENT_RESERVATION_NUMBER_OF_ACCELERATORS
        type: CURRENT_RESERVATION_ACCELERATOR_TYPE
      local_ssd:
      - interface: CURRENT_RESERVATION_INTERFACE_1
        size: 375
      - interface: CURRENT_RESERVATION_INTERFACE_2
        size: 375
      project: CURRENT_RESERVATION_PROJECT_ID
      share_setting: CURRENT_RESERVATION_SHARE_SETTING
      share_with:
      - CURRENT_RESERVATION_CONSUMER_PROJECT_ID_1
      - CURRENT_RESERVATION_CONSUMER_PROJECT_ID_2
    - reservation: REPLACEMENT_RESERVATION_NAME
      reservation_zone: REPLACEMENT_RESERVATION_ZONE
      vm_count: REPLACEMENT_RESERVATION_NUMBER_OF_VMs
      machine_type: REPLACEMENT_RESERVATION_MACHINE_TYPE
      accelerator:
      - count: REPLACEMENT_RESERVATION_ACCELERATOR_COUNT
        type: REPLACEMENT_RESERVATION_ACCELERATOR_TYPE
      local_ssd:
      - interface: REPLACEMENT_RESERVATION_INTERFACE_1
        size: 375
      - interface: REPLACEMENT_RESERVATION_INTERFACE_2
        size: 375
      project: REPLACEMENT_RESERVATION_PROJECT_ID
      share_setting: REPLACEMENT_RESERVATION_SHARE_SETTING
      share_with:
      - REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_1
      - REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_2
    
    

    Sostituisci quanto segue con le proprietà corrispondenti delle prenotazioni attuali e sostitutive:

    Prenotazione attuale

    Per la prenotazione corrente, tutte le seguenti proprietà devono essere esattamente uguali a quando hai visualizzato la prenotazione. Ometti i campi per le proprietà che la prenotazione attuale non ha già.

    • CURRENT_RESERVATION_NAME: il nome della prenotazione collegata corrente.
    • CURRENT_RESERVATION_ZONE: la zona della prenotazione collegata attuale.
    • CURRENT_RESERVATION_MACHINE_TYPE: il tipo di macchina della prenotazione collegata corrente.
    • CURRENT_RESERVATION_NUMBER_OF_ACCELERATORS: il numero di GPU prenotate nella prenotazione collegata corrente.
    • CURRENT_RESERVATION_ACCELERATOR_TYPE: il tipo di acceleratore prenotato nella prenotazione collegata corrente.
    • CURRENT_RESERVATION_INTERFACE_1 e CURRENT_RESERVATION_INTERFACE_2: il tipo di interfaccia che il disco SSD locale per ogni VM prenotata utilizza nella prenotazione collegata corrente. Le opzioni valide sono: scsi e nvme. Ogni disco SSD locale ha una capacità di 375 GB. Ripeti il parametro local_ssd per tutti i dischi SSD locali riservati.
    • CURRENT_RESERVATION_PROJECT_ID: l'ID progetto del progetto corrente che contiene l'impegno e la prenotazione collegata. Specifica questo campo se la prenotazione collegata corrente è condivisa su più progetti consumer.
    • CURRENT_RESERVATION_SHARE_SETTING: Il tipo di condivisione per la prenotazione corrente. Specifica questo campo con il valore projects se la prenotazione collegata attuale è condivisa in più progetti consumer.
    • CURRENT_RESERVATION_CONSUMER_PROJECT_ID_1 e CURRENT_RESERVATION_CONSUMER_PROJECT_ID_2: gli ID progetto dei progetti con cui condividi la prenotazione collegata corrente, ad esempio project-1 e project-2.

    Prenotazione sostitutiva

    Per la prenotazione sostitutiva, imposta le seguenti proprietà come obbligatorie. Assicurati di soddisfare tutti i requisiti quando specifichi queste proprietà. Ometti i campi aggiuntivi che non vuoi utilizzare.

    • REPLACEMENT_RESERVATION_NAME: il nome della nuova prenotazione sostitutiva.
    • REPLACEMENT_RESERVATION_ZONE: la zona della nuova prenotazione sostitutiva.
    • REPLACEMENT_RESERVATION_NUMBER_OF_VMS: il numero di VM che vuoi prenotare nella nuova prenotazione di sostituzione.
    • REPLACEMENT_RESERVATION_MACHINE_TYPE: il tipo di macchina che vuoi per le VM nella nuova prenotazione sostitutiva.

      • Per i tipi di macchine predefinite, utilizza il formato MACHINE_FAMILY-standard-CPUS; ad esempio, n2-standard-4.
      • Per i tipi di macchine personalizzate, utilizza il formato MACHINE_FAMILY-custom-CPUS-MEMORY; ad esempio n2-custom-4-5120. Per un elenco completo delle limitazioni, consulta le specifiche per i tipi di macchine personalizzate.

      Sostituisci quanto segue:

      • MACHINE_FAMILY: la famiglia di tipi di macchine; ad esempio, specifica n2 per le VM N2.
      • CPUS: il numero di vCPU.
      • MEMORY: la memoria totale di una VM prenotata. La memoria deve essere un multiplo di 256 MB e deve essere fornita in MB. Ad esempio, per creare una VM N2 con 4 vCPU e 5 GB di memoria, ovvero 5120 MB, utilizza n2-custom-4-5120.
    • REPLACEMENT_RESERVATION_NUMBER_OF_ACCELERATORS: il numero di GPU da aggiungere per VM nella prenotazione sostitutiva.

    • REPLACEMENT_RESERVATION_ACCELERATOR_TYPE: il tipo di acceleratore che vuoi aggiungere alla prenotazione sostitutiva.

    • REPLACEMENT_RESERVATION_INTERFACE_1 e REPLACEMENT_RESERVATION_INTERFACE_2: il tipo di interfaccia che vuoi che i dischi SSD locali utilizzino per ogni VM prenotata. Le opzioni valide sono: scsi e nvme. Ogni disco SSD locale ha una capacità di 375 GB. Ripeti il parametro local_ssd per ogni disco SSD locale che vuoi aggiungere. Puoi specificare fino a 24 dischi SSD locali.

    • REPLACEMENT_RESERVATION_PROJECT_ID: l'ID progetto del progetto corrente che contiene l'impegno e la prenotazione collegata. Specifica questo campo se vuoi condividere la prenotazione sostitutiva in più progetti consumer.

    • REPLACEMENT_RESERVATION_SHARE_SETTING: il tipo di condivisione per la prenotazione sostitutiva. Specifica questo campo con il valore projects se vuoi condividere la prenotazione sostitutiva in più progetti consumer.

    • REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_1 e REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_2: gli ID progetto dei progetti che possono condividere questa prenotazione, ad esempio project-1,project-2. Puoi includere fino a 100 progetti consumer. Questi progetti devono appartenere alla stessa organizzazione del progetto proprietario. Non includere REPLACEMENT_RESERVATION_PROJECT_ID, che è già autorizzato a utilizzare questa prenotazione per impostazione predefinita.

  2. Esegui il comando gcloud beta compute commitments update-reservations e specifica il percorso del file YAML utilizzando il flag --reservations-from-file.

    gcloud beta compute commitments update-reservations COMMITMENT_NAME \
        --project= PROJECT_ID \
        --region= REGION \
        --reservations-from-file= YAML_FILE
    

    Sostituisci quanto segue:

    • COMMITMENT_NAME: il nome dell'impegno con la prenotazione collegata.
    • PROJECT_ID: l'ID progetto dell'impegno con la prenotazione collegata.
    • REGION: la regione in cui si trova l'impegno.
    • YAML_FILE: il percorso del file YAML che contiene la configurazione delle prenotazioni attuali e sostitutive.

Esempio di sostituzione di una prenotazione collegata a un impegno

Per dimostrarlo, questa sezione mostra un esempio di impegno con una prenotazione collegata e come sostituire la prenotazione collegata di esempio.

Esempio di impegno con una prenotazione collegata

Ad esempio, supponiamo che tu voglia aggiornare le prenotazioni collegate per l'impegno my-commitment-with-reservations, acquistato utilizzando il seguente comando:

  gcloud beta compute commitments create my-commitment-with-reservations \
      --region=asia-east1 \
      --resources=vcpu=16,memory=60GB,local-ssd=3000 \
      --resources-accelerator=type=nvidia-tesla-p100,count=4 \
      --plan=12-month \
      --type=general-purpose \
      --reservations-from-file=one-reservation.yaml

Per questo esempio, supponiamo che quando è stato eseguito questo comando, one-reservation.yaml fosse un file nella directory corrente con il seguente contenuto, che definisce una prenotazione allegata denominata res-1.

  - reservation: res-1
    reservation_zone: asia-east1-a
    vm_count: 4
    machine_type: n1-standard-4
    accelerator:
    - count: 1
      type: nvidia-tesla-p100
    local_ssd:
    - interface: scsi
      size: 375
    - interface: scsi
      size: 375

Questo impegno my-commitment-with-reservations e la prenotazione collegata res-1 hanno generato le seguenti risorse impegnate e riservate:

Tipo di risorsa Risorse nell'impegno
(my-commitment-with-reservations)
Risorse nella prenotazione allegata corrente
(res-1)
vCPU e memoria 16 vCPU e 60 GB 16 vCPU e 60 GB
(4 VM riservate n1-standard-4)*
GPU 4 GPU P100 4 GPU P100
(1 GPU P100 per VM, per 4 VM)*
Dischi SSD locali 3000 GB o 8 dischi SSD locali 3000 GB o 8 dischi SSD locali
(750 GB o 2 dischi SSD locali per VM, per 4 VM)*

*Nello specifico, la prenotazione allegata di esempio, res-1, prenota 4 VM n1-standard-4, ciascuna con 1 GPU P100 e 2 dischi SSD locali di tipo interfaccia scsi. Il n1-standard-4 tipo di macchina utilizza 4 vCPU e 15 GB per ogni VM.

Sostituisci la prenotazione di esempio allegata

Supponiamo che tu voglia sostituire la prenotazione collegata res-1 per con una nuova prenotazione collegata res-2 e modificare le risorse riservate nel seguente modo:

Tipo di risorsa Risorse nell'impegno
(my-commitment-with-reservations)
Risorse nella prenotazione allegata corrente
(res-1)
Risorse nella prenotazione allegata sostitutiva
(res-2)
vCPU e memoria 16 vCPU e 60 GB 16 vCPU e 60 GB
(4 VM riservate n1-standard-4)*
16 vCPU e 60 GB
(2 VM riservate e condivise n1-standard-8)
GPU 4 GPU P100 4 GPU P100
(1 GPU P100 per VM, per 4 VM)*
4 GPU P100
(2 GPU P100 per VM, per 2 VM)
Dischi SSD locali 3000 GB o 8 dischi SSD locali 3000 GB o 8 dischi SSD locali
(750 GB o 2 dischi SSD locali per VM, per 4 VM)*
3000 GB o 8 dischi SSD locali
(1500 GB o 4 dischi SSD locali per VM, per 2 VM)*

*Nello specifico, la prenotazione allegata di esempio, res-1, prenota 4 VM n1-standard-4, ciascuna con 1 GPU P100 e 2 dischi SSD locali di tipo interfaccia scsi. Il n1-standard-4 tipo di macchina utilizza 4 vCPU e 15 GB per ogni VM.

Nello specifico, la prenotazione collegata sostitutiva definisce res-2, che prenota 2 VM n1-standard-8, ognuna con 1 GPU P100 e 4 dischi SSD locali di tipo di interfaccia scsi. Inoltre, res-2 è condiviso con altri due progetti, project-1 e project-2, ed è di proprietà del progetto corrente, my-project. Il tipo di macchina n1-standard-8 utilizza 8 vCPU e 30 GB per ogni VM.

Per sostituire la prenotazione collegata res-1 con res-2 per l'impegno my-commitment-with-reservations:

  1. Crea un file denominato two-reservations.yaml nella directory attuale che contenga il seguente contenuto:

    - reservation: res-1
      reservation_zone: asia-east1-a
      vm_count: 0
      machine_type: n1-standard-4
      accelerator:
      - count: 1
        type: nvidia-tesla-p100
      local_ssd:
      - interface: scsi
        size: 375
      - interface: scsi
        size: 375
    - reservation: res-2
      reservation_zone: asia-east1-a
      vm_count: 2
      machine_type: n1-standard-8
      accelerator:
      - count: 2
        type: nvidia-tesla-p100
      project: my-project
      share_setting: projects
      share_with:
      - project-1
      - project-2
      local_ssd:
      - interface: scsi
        size: 375
      - interface: scsi
        size: 375
      - interface: scsi
        size: 375
      - interface: scsi
        size: 375
    
  2. Esegui questo comando:

    gcloud beta compute commitments update-reservations my-commitment-with-reservations \
        --region=asia-east1 \
        --reservations-from-file=two-reservations.yaml
    

REST

Per sostituire le prenotazioni collegate agli impegni, invia una richiesta POST utilizzando il metodo regionCommitments.updateReservations.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/COMMITMENT_ZONE/commitments/COMMITMENT_NAME/updateReservations

{
  "reservations":
  [
    {
      "name": "REPLACEMENT_RESERVATION_NAME",
      "specificReservation":
      {
        "count": "REPLACEMENT_RESERVATION_NUMBER_OF_VMS",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": "REPLACEMENT_RESERVATION_NUMBER_OF_ACCELERATORS",
              "acceleratorType": "REPLACEMENT_RESERVATION_ACCELERATOR_TYPE"
            }
          ],
          "localSsds":
          [
            {
              "diskSizeGb": "375",
              "interface": "REPLACEMENT_RESERVATION_INTERFACE_1"
            },
            {
              "diskSizeGb": "375",
              "interface": "REPLACEMENT_RESERVATION_INTERFACE_2"
            }
          ],
          "machineType": "REPLACEMENT_RESERVATION_MACHINE_TYPE"

        }
      },
      "zone": "REPLACEMENT_RESERVATION_ZONE",
      "shareSettings":
      {
        "shareType": "SPECIFIC_PROJECTS",
        "projectMap":
        {
          "REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_1":
          {
            "projectId": "REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_1"
          },
          "REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_2":
          {
            "projectId": "REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_2"
          }
         }
      }
    },
    {
      "name": "CURRENT_RESERVATION_NAME",
      "specificReservation":
      {
        "count": "0",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": "CURRENT_RESERVATION_NUMBER_OF_ACCELERATORS",
              "acceleratorType": "CURRENT_RESERVATION_ACCELERATOR_TYPE"
            }
          ],
          "localSsds":
          [
            {
              "diskSizeGb": "375",
              "interface": "CURRENT_RESERVATION_INTERFACE_1"
            },
            {
              "diskSizeGb": "375",
              "interface": "CURRENT_RESERVATION_INTERFACE_2"
            }
          ],
          "machineType": "CURRENT_RESERVATION_MACHINE_TYPE"

        }
      },
      "zone": "CURRENT_RESERVATION_ZONE",
      "shareSettings":
      {
        "shareType": "SPECIFIC_PROJECTS",
        "projectMap":
        {
          "CURRENT_RESERVATION_CONSUMER_PROJECT_ID_1":
          {
            "projectId": "CURRENT_RESERVATION_CONSUMER_PROJECT_ID_1"
          },
          "CURRENT_RESERVATION_CONSUMER_PROJECT_ID_2":
          {
            "projectId": "CURRENT_RESERVATION_CONSUMER_PROJECT_ID_2"
          }
         }
      }
    }
  ]
}

Sostituisci quanto segue con le proprietà corrispondenti dell'impegno, della prenotazione attuale e della prenotazione sostitutiva:

Impegno

  • COMMITMENT_NAME: il nome dell'impegno con la prenotazione collegata.
  • PROJECT_ID: l'ID progetto dell'impegno con la prenotazione collegata. Questo è anche l'ID progetto per le prenotazioni correnti e collegate.
  • COMMITMENT_ZONE: la zona dell'impegno con la prenotazione collegata.

Prenotazione attuale

Per la prenotazione corrente, tutte le seguenti proprietà devono essere esattamente uguali a quando hai visualizzato la prenotazione. Ometti i campi per le proprietà che la prenotazione attuale non specifica già.

  • CURRENT_RESERVATION_NAME: il nome della prenotazione collegata corrente.
  • CURRENT_RESERVATION_ZONE: la zona della prenotazione collegata attuale.
  • CURRENT_RESERVATION_MACHINE_TYPE: il tipo di macchina della prenotazione collegata corrente.
  • CURRENT_RESERVATION_NUMBER_OF_ACCELERATORS: il numero di GPU prenotate nella prenotazione collegata corrente.
  • CURRENT_RESERVATION_ACCELERATOR_TYPE: il tipo di acceleratore prenotato nella prenotazione collegata corrente.
  • CURRENT_RESERVATION_INTERFACE_1 e CURRENT_RESERVATION_INTERFACE_2: il tipo di interfaccia che i dischi SSD locali per ogni VM prenotata utilizzano nella prenotazione collegata corrente. Le opzioni valide sono: scsi e nvme. Ogni disco SSD locale ha una capacità di 375 GB. Ripeti il parametro localSsds per tutti i dischi SSD locali riservati.
  • CURRENT_RESERVATION_SHARE_SETTING: Il tipo di condivisione per la prenotazione corrente. Specifica questo parametro con il valore projects se la prenotazione collegata corrente è condivisa in più progetti consumer.
  • CURRENT_RESERVATION_CONSUMER_PROJECT_ID_1 e CURRENT_RESERVATION_CONSUMER_PROJECT_ID_2: gli ID progetto dei progetti con cui condividi la prenotazione allegata corrente, ad esempio project-1 e project-2.

Prenotazione sostitutiva

Per la prenotazione sostitutiva, imposta le seguenti proprietà come obbligatorie. Assicurati di soddisfare tutti i requisiti quando specifichi queste proprietà. Ometti i campi aggiuntivi che non vuoi utilizzare.

  • REPLACEMENT_RESERVATION_NAME: il nome della nuova prenotazione sostitutiva.
  • REPLACEMENT_RESERVATION_ZONE: la zona della nuova prenotazione sostitutiva.
  • REPLACEMENT_RESERVATION_NUMBER_OF_VMS: il numero di VM che vuoi prenotare nella nuova prenotazione sostitutiva.
  • REPLACEMENT_RESERVATION_MACHINE_TYPE: il tipo di macchina che vuoi per le VM nella nuova prenotazione sostitutiva.

    • Per i tipi di macchine predefinite, utilizza il formato MACHINE_FAMILY-standard-CPUS; ad esempio, n2-standard-4.
    • Per i tipi di macchine personalizzate, utilizza il formato MACHINE_FAMILY-custom-CPUS-MEMORY; ad esempio n2-custom-4-5120. Per un elenco completo delle limitazioni, consulta le specifiche per i tipi di macchine personalizzate.

    Sostituisci quanto segue:

    • MACHINE_FAMILY: la famiglia di tipi di macchine; ad esempio, specifica n2 per le VM N2.
    • CPUS: il numero di vCPU.
    • MEMORY: la memoria totale di una VM prenotata. La memoria deve essere un multiplo di 256 MB e deve essere fornita in MB. Ad esempio, per creare una VM N2 con 4 vCPU e 5 GB di memoria, ovvero 5120 MB, utilizza n2-custom-4-5120.
  • REPLACEMENT_RESERVATION_NUMBER_OF_ACCELERATORS: il numero di GPU da aggiungere per VM nella prenotazione sostitutiva.

  • REPLACEMENT_RESERVATION_ACCELERATOR_TYPE: il tipo di acceleratore che vuoi aggiungere alla prenotazione sostitutiva.

  • REPLACEMENT_RESERVATION_INTERFACE_1 e REPLACEMENT_RESERVATION_INTERFACE_2: il tipo di interfaccia che vuoi che i dischi SSD locali utilizzino per ogni VM prenotata. Le opzioni valide sono: scsi e nvme. Ogni disco SSD locale ha una capacità di 375 GB. Ripeti il parametro localSsds per ogni disco SSD locale che vuoi aggiungere. Puoi specificare fino a 24 dischi SSD locali.

  • REPLACEMENT_RESERVATION_SHARE_SETTING: Il tipo di condivisione per la prenotazione sostitutiva. Specifica questo parametro con il valore projects se vuoi condividere la prenotazione sostitutiva in più progetti consumer.

  • REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_1 e REPLACEMENT_RESERVATION_CONSUMER_PROJECT_ID_2: gli ID progetto dei progetti che possono condividere questa prenotazione, ad esempio project-1,project-2. Puoi includere fino a 100 progetti consumer. Questi progetti devono appartenere alla stessa organizzazione del progetto proprietario. Non includere PROJECT_ID, che è già autorizzato a utilizzare questa prenotazione per impostazione predefinita.

Esempio di sostituzione di una prenotazione collegata a un impegno

Per dimostrarlo, questa sezione mostra un esempio di impegno con una prenotazione collegata e come sostituire la prenotazione collegata di esempio.

Esempio di impegno con una prenotazione collegata

Ad esempio, supponiamo che tu voglia sostituire la prenotazione collegata res-1 per l'impegno my-commitment-with-reservations, che è stato acquistato effettuando la seguente richiesta POST:

  POST https://compute.googleapis.com/compute/beta/projects/my-project/regions/asia-east1/commitments

  {
    "name": "my-commitment-with-reservations",
    "plan": "TWELVE_MONTH",
    "reservations":
    [
      {
        "name": "res-1",
        "specificReservation":
        {
          "count": "4",
          "instanceProperties":
          {
            "guestAccelerators":
            [
              {
                "acceleratorCount": "1",
                "acceleratorType": "nvidia-tesla-p100"
              }
            ],
            "localSsds":
            [
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              },
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              }
            ],
            "machineType": "n1-standard-4"
          }
        },
        "zone": "asia-east1-a"
      }
    ],
    "resources":
    [
      {
        "amount": "16",
        "type": "VCPU"
      },
      {
        "amount": "61440",
        "type": "MEMORY"
      },
      {
        "acceleratorType": "nvidia-tesla-p100",
        "amount": "4",
        "type": "ACCELERATOR"
      }
      {
        "amount": "3072000",
        "type": "LOCAL_SSD"
      }
    ],
    "type": "GENERAL_PURPOSE"
  }

Questo impegno my-commitment-with-reservations e la prenotazione collegata res-1 hanno generato le seguenti risorse impegnate e riservate:

Tipo di risorsa Risorse nell'impegno
(my-commitment-with-reservations)
Risorse nella prenotazione allegata corrente
(res-1)
vCPU e memoria 16 vCPU e 60 GB 16 vCPU e 60 GB
(4 VM riservate n1-standard-4)*
GPU 4 GPU P100 4 GPU P100
(1 GPU P100 per VM, per 4 VM)*
Dischi SSD locali 3000 GB o 8 dischi SSD locali 3000 GB o 8 dischi SSD locali
(750 GB o 2 dischi SSD locali per VM, per 4 VM)*

*Nello specifico, la prenotazione allegata all'esempio, res-1, prenota 4 VM n1-standard-4, ognuna con 1 GPU P100 e 2 dischi SSD locali di tipo interfaccia scsi. Il n1-standard-4 tipo di macchina utilizza 4 vCPU e 15 GB per ogni VM.

Sostituisci la prenotazione di esempio allegata

Supponiamo che tu voglia sostituire la prenotazione collegata res-1 per con una nuova prenotazione collegata res-2 e modificare le risorse riservate nel seguente modo:

Tipo di risorsa Risorse nell'impegno
(my-commitment-with-reservations)
Risorse nella prenotazione allegata corrente
(res-1)
Risorse nella prenotazione allegata sostitutiva
(res-2)
vCPU e memoria 16 vCPU e 60 GB 16 vCPU e 60 GB
(4 VM riservate n1-standard-4)*
16 vCPU e 60 GB
(2 VM riservate e condivise n1-standard-8)
GPU 4 GPU P100 4 GPU P100
(1 GPU P100 per VM, per 4 VM)*
4 GPU P100
(2 GPU P100 per VM, per 2 VM)
Dischi SSD locali 3000 GB o 8 dischi SSD locali 3000 GB o 8 dischi SSD locali
(750 GB o 2 dischi SSD locali per VM, per 4 VM)*
3000 GB o 8 dischi SSD locali
(1500 GB o 4 dischi SSD locali per VM, per 2 VM)*

*Nello specifico, la prenotazione allegata di esempio, res-1, prenota 4 VM n1-standard-4, ciascuna con 1 GPU P100 e 2 dischi SSD locali di tipo interfaccia scsi. Il n1-standard-4 tipo di macchina utilizza 4 vCPU e 15 GB per ogni VM.

Nello specifico, la prenotazione collegata sostitutiva definisce res-2, che prenota 2 VM n1-standard-8, ognuna con 1 GPU P100 e 4 dischi SSD locali di tipo di interfaccia scsi. Inoltre, res-2 è condiviso con altri due progetti, project-1 e project-2, ed è di proprietà del progetto corrente, my-project. Il tipo di macchina n1-standard-8 utilizza 8 vCPU e 30 GB per ogni VM.

Per sostituire la prenotazione collegata res-1 con res-2 per l'impegno my-commitment-with-reservations, invia la seguente richiesta POST utilizzando il metodo regionCommitments.updateReservations:

  POST https://compute.googleapis.com/compute/beta/projects/my-project/regions/asia-east1/commitments/my-commitment-with-reservations/updateReservations

  {
    "reservations":
    [
      {
        "name": "res-2",
        "specificReservation":
        {
          "count": "2",
          "instanceProperties":
          {
            "guestAccelerators":
            [
              {
                "acceleratorCount": 2,
                "acceleratorType": "nvidia-tesla-p100"
              }
            ],
            "localSsds":
            [
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              },
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              },
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              },
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              }
            ],
            "machineType": "n1-standard-8"
          }
        },
        "zone": "asia-east1-a"
      },
      {
        "name": "res-1",
        "specificReservation":
        {
          "count": "0",
          "instanceProperties":
          {
            "guestAccelerators":
            [
              {
                "acceleratorCount": 1,
                "acceleratorType": "nvidia-tesla-p100"
              }
            ],
            "localSsds":
            [
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              },
              {
                "diskSizeGb": "375",
                "interface": "scsi"
              }
            ],
            "machineType": "n1-standard-4"
          }
        },
        "zone": "asia-east1-a"
      }
    ]
  }

Passaggi successivi