Modifica le prenotazioni

Questo documento spiega come modificare le prenotazioni. Per modificare le prenotazioni collegate agli impegni, consulta Sostituisci le prenotazioni collegate agli impegni.

Modifica una prenotazione quando, ad esempio, le tue esigenze di capacità cambiano o vuoi cambiare i workload che possono utilizzare una prenotazione.

Limitazioni

Prima di modificare una prenotazione, tieni presente quanto segue:

  • Puoi modificare una prenotazione condivisa solo nello stesso progetto in cui l'hai creata.

  • Puoi modificare una prenotazione creata automaticamente solo dopo quanto segue:

    • Per una prenotazione futura creata in AI Hypercomputer, puoi modificare la prenotazione solo dopo l'ora di inizio.

    • Per una prenotazione futura creata in Compute Engine, puoi modificare la prenotazione solo dopo l'ora di fine.

  • Puoi modificare una prenotazione creata automaticamente per una prenotazione futura in AI Hypercomputer solo per consentire o meno ai job Vertex AI di utilizzarla.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione verifica la tua identità per l'accesso a Google Cloud servizi e API. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

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

    Console

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

    gcloud

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

      gcloud init

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

    2. Set a default region and zone.

    REST

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

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

      gcloud init

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

    Per saperne di più, consulta Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .

Ruoli obbligatori

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

Questo ruolo predefinito include le autorizzazioni necessarie per modificare le prenotazioni. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per modificare le prenotazioni sono necessarie le seguenti autorizzazioni:

  • Per modificare l'opzione di eliminazione automatica in una prenotazione, i progetti consumer in una prenotazione condivisa o stabilire se i job Vertex AI possono utilizzare una prenotazione di istanze con GPU collegate: compute.reservations.update sul progetto
  • Per modificare il numero di istanze in una prenotazione: compute.reservations.resize sul progetto

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Modifica le prenotazioni

A seconda delle proprietà che vuoi modificare in una prenotazione, utilizza uno dei seguenti metodi:

Per modificare le proprietà non menzionate in questo elenco devi creare una nuova prenotazione. Per istruzioni, consulta Modifica altre proprietà in una prenotazione in questo documento.

Modifica l'eliminazione automatica di una prenotazione

Puoi modificare il momento in cui Compute Engine elimina automaticamente una prenotazione esistente eseguendo una delle seguenti operazioni:

Per modificare l'eliminazione automatica di una prenotazione, seleziona una delle seguenti opzioni:

Console

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

    Vai a Prenotazioni

  2. Nella scheda Prenotazioni on demand (predefinita), nella colonna Nome, fai clic sul nome della prenotazione da modificare.

    Viene visualizzata la pagina dei dettagli della prenotazione.

  3. Nella riga Data/ora eliminazione automatica, fai clic su Modifica data/ora eliminazione automatica.

  4. Nel riquadro Aggiorna prenotazione, esegui una delle seguenti operazioni:

    • Per eliminare la prenotazione in una data e un'ora specifiche, segui questi passaggi:

      1. Se l'opzione di eliminazione automatica non è già attivata, fai clic sul pulsante di attivazione/disattivazione Attiva eliminazione automatica in modo che sia impostato su On.

      2. Nel campo Data/ora eliminazione automatica, inserisci una data e un'ora in cui Compute Engine elimina automaticamente la prenotazione.

    • In caso contrario, fai clic sul pulsante di attivazione/disattivazione Attiva l'eliminazione automatica in modo che sia impostato su Off.

  5. Fai clic su Invia.

    La modifica della prenotazione potrebbe richiedere alcuni secondi.

gcloud

Quando attivi l'opzione di eliminazione automatica in una prenotazione, puoi specificare una data e un'ora di eliminazione della prenotazione o un periodo di tempo al termine del quale la prenotazione deve essere eliminata.

Per attivare l'opzione di eliminazione automatica o modificare la data di eliminazione della prenotazione, svolgi una delle seguenti operazioni:

  • Per eliminare la prenotazione in una data e ora specifica, utilizza il comando gcloud beta compute reservations update con il flag --delete-at-time.

    gcloud beta compute reservations update RESERVATION_NAME \
        --delete-at-time=DELETE_AT_TIME \
        --zone=ZONE
    

    Sostituisci quanto segue:

    • RESERVATION_NAME: il nome di una prenotazione esistente

    • DELETE_AT_TIME: una data e un'ora formattate come timestamp RFC 3339

    • ZONE: la zona in cui si trova la prenotazione

  • Per eliminare la prenotazione dopo un periodo di tempo specifico, utilizza il comando gcloud beta compute reservations update con il flag --delete-after-duration.

    gcloud beta compute reservations update RESERVATION_NAME \
        --delete-after-duration=DELETE_AFTER_DURATION \
        --zone=ZONE
    

    Sostituisci quanto segue:

    • RESERVATION_NAME: il nome di una prenotazione esistente.

    • DELETE_AFTER_DURATION: un periodo di tempo in giorni, ore, minuti o secondi prima dell'eliminazione automatica della prenotazione. Ad esempio, specifica 30m per 30 minuti o 1d2h3m4s per 1 giorno, 2 ore, 3 minuti e 4 secondi.

    • ZONE: la zona in cui si trova la prenotazione.

Per disattivare l'opzione di eliminazione automatica, utilizza il comando gcloud beta compute reservations update con il flag --disable-auto-delete.

gcloud beta compute reservations update RESERVATION_NAME \
    --disable-auto-delete \
    --zone=ZONE

Sostituisci quanto segue:

  • RESERVATION_NAME: il nome di una prenotazione esistente

  • ZONE: la zona in cui si trova la prenotazione

REST

Quando attivi l'opzione di eliminazione automatica in una prenotazione, puoi specificare una data e un'ora di eliminazione della prenotazione o un periodo di tempo al termine del quale la prenotazione deve essere eliminata.

Per attivare l'opzione di eliminazione automatica o modificare la data di eliminazione della prenotazione, svolgi una delle seguenti operazioni:

  • Per eliminare la prenotazione in una data e ora specifica, effettua una richiesta PATCH al metodo beta.reservations.update. Nell'URL della richiesta, includi il parametro di query paths impostato su deleteAtTime.

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAtTime
    
    {
      "name": "RESERVATION_NAME",
      "deleteAtTime": "DELETE_AT_TIME"
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto in cui si trova la prenotazione

    • ZONE: la zona in cui si trova la prenotazione

    • RESERVATION_NAME: il nome di una prenotazione esistente

    • DELETE_AT_TIME: una data e un'ora formattate come timestamp RFC 3339

  • Per eliminare la prenotazione dopo un periodo di tempo specifico, effettua una richiesta PATCH al metodo beta.reservations.update. Nell'URL della richiesta, includi il parametro di query paths impostato su deleteAfterDuration.seconds.

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAfterDuration.seconds
    
    {
      "name": "RESERVATION_NAME",
      "deleteAfterDuration": {
        "seconds": "DELETE_AFTER_DURATION"
      }
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto in cui si trova la prenotazione

    • ZONE: la zona in cui si trova la prenotazione

    • RESERVATION_NAME: il nome di una prenotazione esistente.

    • DELETE_AFTER_DURATION: un periodo di tempo in secondi prima che la prenotazione venga eliminata automaticamente. Ad esempio, specifica 86400 per 86.400 secondi (1 giorno).

Per disattivare l'opzione di eliminazione automatica, invia una richiesta PATCH al metodo beta.reservations.update. Nella richiesta, specifica il parametro di query paths=deleteAtTime&paths=deleteAfterDuration e ometti il corpo della richiesta.

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAtTime&paths=deleteAfterDuration

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova la prenotazione

  • ZONE: la zona in cui si trova la prenotazione

  • RESERVATION_NAME: il nome di una prenotazione esistente

Modifica i progetti consumer in una prenotazione condivisa

Per evitare errori quando modifichi i progetti consumer per una prenotazione condivisa, tieni presente quanto segue:

  • Rimozione di progetti: puoi impedire ai progetti consumer di utilizzare una prenotazione condivisa solo se nessuna istanza di calcolo in questi progetti utilizza la prenotazione. Per impedire alle istanze di utilizzare una prenotazione, arresta o elimina le istanze.

  • Aggiunta di progetti: puoi consentire ai progetti consumer di utilizzare una prenotazione condivisa solo se si trovano nella stessa organizzazione del progetto proprietario. Per eseguire la migrazione di un progetto all'organizzazione del progetto proprietario, consulta Migrazione dei progetti tra le risorse dell'organizzazione nella documentazione di Resource Manager.

Dopo aver modificato i progetti consumer per una prenotazione condivisa, l'utilizzo della prenotazione potrebbe cambiare. Ad esempio, se hai configurato la prenotazione in modo che possa essere utilizzata da qualsiasi istanza corrispondente (configurazione predefinita), qualsiasi progetto consumer appena aggiunto potrebbe iniziare immediatamente a utilizzare la prenotazione. Per scoprire di più su quali progetti di prenotazioni corrispondenti vengono utilizzati per primi, consulta l'ordine di utilizzo delle prenotazioni.

Per modificare i progetti consumer che possono utilizzare una prenotazione condivisa, seleziona una delle seguenti opzioni:

Console

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

    Vai a Prenotazioni

  2. Nella scheda Prenotazioni on demand (predefinita), nella colonna Nome, fai clic sul nome della prenotazione che vuoi descrivere.

    Viene visualizzata la pagina dei dettagli della prenotazione.

  3. Fai clic su Modifica.

  4. Nella sezione Progetti selezionati, esegui una delle seguenti operazioni:

    • Per interrompere la condivisione della prenotazione con un progetto consumer specifico, fai clic su Elimina.

    • Per iniziare a condividere la prenotazione con uno o più progetti specifici, segui questi passaggi:

      1. Fai clic su Aggiungi progetti.

      2. Seleziona la casella di controllo per ogni progetto dell'organizzazione del progetto proprietario con cui vuoi condividere la prenotazione. Puoi condividere una prenotazione condivisa con un massimo di 100 progetti consumer.

      3. Fai clic su Seleziona.

  5. Per confermare le modifiche, fai clic su Salva.

    La modifica della prenotazione potrebbe richiedere alcuni secondi.

gcloud

Quando modifichi i progetti consumer per una prenotazione condivisa, devi specificare un elenco separato da virgole degli ID dei progetti per cui vuoi consentire o interrompere l'utilizzo della prenotazione condivisa. Questi progetti devono appartenere alla stessa organizzazione del progetto proprietario. Non specificare il progetto proprietario nell'elenco. Per impostazione predefinita, è già autorizzato a utilizzare la prenotazione condivisa.

Per modificare i progetti consumer per una prenotazione condivisa, esegui una delle seguenti operazioni:

  • Per consentire a uno o più progetti di utilizzare una prenotazione condivisa, utilizza il comando gcloud compute reservations update con il flag --add-share-with.

    gcloud compute reservations update RESERVATION_NAME \
        --add-share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Sostituisci quanto segue:

    • RESERVATION_NAME: il nome di una prenotazione condivisa esistente.

    • CONSUMER_PROJECT_IDS: un elenco separato da virgole degli ID dei progetti con cui condividere la prenotazione, ad esempio project-1,project-2. Puoi condividere una prenotazione condivisa con un massimo di 100 progetti consumer.

    • ZONE: la zona in cui si trova la prenotazione condivisa.

  • Per fare in modo che uno o più progetti non utilizzino più una prenotazione condivisa, usa il comando gcloud compute reservations update con il flag --remove-share-with.

    gcloud compute reservations update RESERVATION_NAME \
        --remove-share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Sostituisci quanto segue:

    • RESERVATION_NAME: il nome di una prenotazione condivisa esistente.

    • CONSUMER_PROJECT_IDS: un elenco separato da virgole di ID dei progetti con cui non vuoi più condividere la prenotazione, ad esempio project-1,project-2.

    • ZONE: la zona in cui si trova la prenotazione condivisa.

  • Per sostituire l'elenco dei progetti che possono utilizzare una prenotazione condivisa, usa il comando gcloud beta compute reservations update con il flag --share-with.

    gcloud beta compute reservations update RESERVATION_NAME \
        --share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Sostituisci quanto segue:

    • RESERVATION_NAME: il nome di una prenotazione condivisa esistente.

    • ZONE: la zona in cui si trova la prenotazione condivisa.

    • CONSUMER_PROJECT_IDS: un elenco separato da virgole degli ID dei progetti con cui condividere la prenotazione, ad esempio project-1,project-2. Puoi condividere una prenotazione condivisa con un massimo di 100 progetti consumer.

REST

Quando modifichi i progetti consumer per una prenotazione condivisa, devi specificare gli ID dei progetti a cui vuoi concedere o revocare l'autorizzazione a utilizzare la prenotazione condivisa. Questi progetti devono appartenere alla stessa organizzazione del progetto proprietario. Non specificare il progetto proprietario. Per impostazione predefinita, è già autorizzato a utilizzare la prenotazione condivisa.

Per modificare i progetti consumer per una prenotazione condivisa, esegui una delle seguenti operazioni:

  • Per consentire a uno o più progetti di utilizzare una prenotazione condivisa, invia una richiesta PATCH al metodo reservations.update. Nell'URL della richiesta, includi il parametro di query paths=shareSettings.projectMap.PROJECT_ID per ogni progetto con cui vuoi condividere la prenotazione.

    Ad esempio, per consentire a due progetti di utilizzare una prenotazione condivisa, invia una richiesta PATCH come segue. Puoi condividere una prenotazione condivisa con un massimo di 100 progetti consumer.

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_1&paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_2
    
    {
      "name": "RESERVATION_NAME",
      "shareSetting": {
        "projectMap": {
          "CONSUMER_PROJECT_ID_1": {
            "projectId": "CONSUMER_PROJECT_ID_1"
          },
          "CONSUMER_PROJECT_ID_2": {
            "projectId": "CONSUMER_PROJECT_ID_2"
          }
        }
      }
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto proprietario, cioè il progetto utilizzato per creare la prenotazione condivisa

    • ZONE: la zona in cui si trova la prenotazione condivisa

    • RESERVATION_NAME: il nome di una prenotazione condivisa esistente

    • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: gli ID di due progetti con cui vuoi condividere la prenotazione

  • Per non consentire più a uno o più progetti di utilizzare una prenotazione condivisa, invia una richiesta PATCH al metodo reservations.update. Nell'URL della richiesta, includi il parametro di query paths=shareSettings.projectMap.PROJECT_ID per ogni progetto con cui vuoi interrompere la condivisione della prenotazione. Inoltre, devi omettere il campo shareSetting dal corpo della richiesta.

    Ad esempio, per impedire a due progetti di utilizzare una prenotazione condivisa, invia una richiesta PATCH come segue:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_1&paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_2
    
    {
      "name": "RESERVATION_NAME"
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto proprietario, cioè il progetto utilizzato per creare la prenotazione condivisa

    • ZONE: la zona in cui si trova la prenotazione condivisa

    • RESERVATION_NAME: il nome di una prenotazione condivisa esistente

    • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: gli ID di due progetti con cui non vuoi più condividere la prenotazione

Modifica il numero di istanze dedicate in una prenotazione

Puoi aumentare o diminuire il numero di istanze di computing dedicate in una prenotazione. Tuttavia, prima di modificare il numero di istanze, tieni presente quanto segue per evitare errori:

  • Per aumentare il numero di istanze in qualsiasi prenotazione, verifica quanto segue:

  • Per ridurre il numero di istanze in una prenotazione specifica, assicurati che il numero di istanze che la utilizzano non superi il nuovo numero inferiore. In questo caso, esegui una delle seguenti operazioni con le istanze che superano il nuovo numero:

    • Elimina le istanze

    • Arresta o sospendi le istanze

Per modificare il numero di istanze dedicate in una prenotazione, seleziona una delle seguenti opzioni:

Console

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

    Vai a Prenotazioni

  2. Nella scheda Prenotazioni on demand (predefinita), nella colonna Nome, fai clic sul nome della prenotazione da modificare.

    Viene visualizzata la pagina dei dettagli della prenotazione.

  3. Fai clic su Modifica.

  4. Nel campo Numero di istanze VM, inserisci il numero aggiornato di istanze da prenotare.

  5. Per confermare, fai clic su Salva.

    La modifica della prenotazione potrebbe richiedere alcuni secondi.

gcloud

Per modificare il numero di istanze dedicate in una prenotazione, utilizza il comando gcloud compute reservations update.

gcloud compute reservations update RESERVATION_NAME \
    --vm-count=NUMBER_OF_VMS \
    --zone=ZONE

Sostituisci quanto segue:

  • RESERVATION_NAME: il nome di una prenotazione esistente

  • NUMBER_OF_VMS: il nuovo numero di istanze da prenotare

  • ZONE: la zona in cui si trova la prenotazione

REST

Per modificare il numero di istanze dedicate in una prenotazione, invia una richiesta POST al metodo reservations.resize.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/resize

{
  "specificSkuCount": "NUMBER_OF_VMS"
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova la prenotazione

  • ZONE: la zona in cui si trova la prenotazione

  • RESERVATION_NAME: il nome di una prenotazione esistente

  • NUMBER_OF_VMS: il nuovo numero di istanze da prenotare

Modifica la policy di condivisione di una prenotazione

Quando modifichi le norme sulla condivisione di una prenotazione di istanze di computing GPU, controlli se i job di addestramento o di previsione di Vertex AI utilizzano la prenotazione.

Prima di impedire ai job Vertex AI di utilizzare una prenotazione, interrompi tutti i job Vertex AI che la utilizzano. In caso contrario, si verificano degli errori.

Per modificare il criterio di condivisione di una prenotazione di istanze GPU, seleziona una delle seguenti opzioni:

Console

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

    Vai a Prenotazioni

  2. Nella scheda Prenotazioni on demand (predefinita), nella colonna Nome, fai clic sul nome della prenotazione delle istanze GPU da modificare. Viene visualizzata una pagina con i dettagli della prenotazione.

  3. Nella riga Condividi con altri servizi Google Cloud, fai clic su Modifica impostazioni di condivisione del servizio.

  4. Nel riquadro Condivisione delle prenotazioni, esegui una delle seguenti operazioni:

    • Per consentire ai job Vertex AI di utilizzare la prenotazione, seleziona Condividi prenotazione.

    • Per impedire ai job Vertex AI di utilizzare la prenotazione, seleziona Non condividere la prenotazione.

  5. Fai clic su Salva.

    La modifica della prenotazione potrebbe richiedere alcuni secondi.

gcloud

Per modificare la policy di condivisione di una prenotazione di istanze GPU, utilizza il comando gcloud compute reservations update con il flag --reservation-sharing-policy.

gcloud compute reservations update RESERVATION_NAME \
    --reservation-sharing-policy=SHARING_POLICY \
    --zone=ZONE

Sostituisci quanto segue:

  • RESERVATION_NAME: il nome di una prenotazione esistente.

  • SHARING_POLICY: le norme di condivisione della prenotazione. Specifica uno dei seguenti valori:

    • Per consentire ai job Vertex AI di utilizzare la prenotazione: ALLOW_ALL

    • Per impedire ai job Vertex AI di utilizzare la prenotazione: DISALLOW_ALL

  • ZONE: la zona in cui esiste la prenotazione

REST

Per modificare il criterio di condivisione di una prenotazione di istanze GPU, invia una richiesta PATCH al metodo reservations.update. Nell'URL della richiesta, includi il parametro di query paths impostato su reservationSharingPolicy.serviceShareType.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=reservationSharingPolicy.serviceShareType

{
  "name": "RESERVATION_NAME",
  "reservationSharingPolicy": {
    "serviceShareType": "SHARING_POLICY"
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui esiste la prenotazione.

  • ZONE: la zona in cui esiste la prenotazione.

  • RESERVATION_NAME: il nome di una prenotazione esistente

  • SHARING_POLICY: le norme di condivisione della prenotazione. Specifica uno dei seguenti valori:

    • Per consentire ai job Vertex AI di utilizzare la prenotazione: ALLOW_ALL

    • Per impedire ai job Vertex AI di utilizzare la prenotazione: DISALLOW_ALL

Modifica altre proprietà in una prenotazione

Se vuoi modificare una proprietà non indicata nella sezione Modifica prenotazioni, devi creare una prenotazione sostitutiva.

Per sostituire una prenotazione senza rischiare inavvertitamente di ridurre la capacità dedicata, segui questi passaggi:

  1. Crea un nuovo singolo progetto o prenotazione condivisa con le proprietà aggiornate.

  2. Se non hai più bisogno della prenotazione originale, eliminala.

Risoluzione dei problemi

Scopri come risolvere i problemi relativi agli aggiornamenti delle prenotazioni.

Passaggi successivi