Questo documento spiega come impedire alle istanze Compute Engine di utilizzare le prenotazioni. Per scoprire di più sulle prenotazioni, consulta Prenotazioni di risorse di zona di Compute Engine.
Le prenotazioni consumate automaticamente consentono alle istanze con proprietà corrispondenti alle prenotazioni di utilizzarle automaticamente. Per evitare che le istanze utilizzino una prenotazione, esegui una delle seguenti operazioni:
Configura le istanze in modo che non consumino prenotazioni, come descritto in questo documento.
Crea o aggiorna istanze con proprietà che non corrispondono alla prenotazione.
Puoi evitare di utilizzare le prenotazioni quando vuoi utilizzare le tue istanze per attività come test, debug o implementazioni isolate.
Limitazioni
Puoi aggiornare un'istanza esistente in modo che non consumi le prenotazioni solo se l'istanza è configurata per utilizzare automaticamente le prenotazioni corrispondenti.
Prima di iniziare
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API. Trusted Cloud by S3NS
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in 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 Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Per creare le prenotazioni:
compute.reservations.create
nel progetto -
Per creare istanze:
compute.instances.create
sul progetto- Per utilizzare un'immagine personalizzata per creare la VM:
compute.images.useReadOnly
sull'immagine - Per utilizzare uno snapshot per creare la VM:
compute.snapshots.useReadOnly
nello snapshot - Per utilizzare un modello di istanza per creare la VM:
compute.instanceTemplates.useReadOnly
nel modello di istanza - Per assegnare una rete legacy alla VM:
compute.networks.use
nel progetto - Per specificare un indirizzo IP statico per la VM:
compute.addresses.use
nel progetto - Per assegnare un indirizzo IP esterno alla VM quando nel progetto viene utilizzata una rete precedente:
compute.networks.useExternalIp
- Per specificare una subnet per la VM:
compute.subnetworks.use
nel progetto o nella subnet scelta - Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC:
compute.subnetworks.useExternalIp
nel progetto o nella subnet scelta - Per impostare i metadati dell'istanza VM per la VM:
compute.instances.setMetadata
nel progetto - Per impostare i tag per la VM:
compute.instances.setTags
sulla VM - Per impostare le etichette per la VM:
compute.instances.setLabels
sulla VM - Per impostare un account di servizio per l'utilizzo di:
compute.instances.setServiceAccount
sulla VM - Per creare un nuovo disco per la VM:
compute.disks.create
nel progetto - Per collegare un disco esistente in modalità di sola lettura o di lettura e scrittura:
compute.disks.use
sul disco - Per collegare un disco esistente in modalità di sola lettura:
compute.disks.useReadOnly
sul disco
-
Per creare modelli di istanze:
compute.instanceTemplates.create
sul progetto Evitare il consumo durante la creazione collettiva di istanze
Impedire il consumo durante la creazione di un modello di istanza
Crea un file YAML vuoto.
Per esportare le proprietà di un'istanza nel file YAML appena creato, utilizza il comando
gcloud compute instances export
:gcloud compute instances export INSTANCE_NAME \ --destination=YAML_FILE \ --zone=ZONE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome dell'istanza.YAML_FILE
: il percorso del file YAML vuoto che hai creato nel passaggio precedente.ZONE
: la zona in cui esiste l'istanza.
Nel file di configurazione YAML, imposta
consumeReservationType
suNO_RESERVATION
:reservationAffinity: consumeReservationType: NO_RESERVATION
Per aggiornare l'istanza e riavviarla, utilizza il comando
gcloud compute instances update-from-file
con il flag--most-disruptive-allowed-action
impostato suRESTART
:gcloud compute instances update-from-file INSTANCE_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE
Sostituisci quanto segue:
INSTANCE_NAME
: il nome dell'istanza.YAML_FILE
: il percorso del file YAML con i dati di configurazione modificati nel passaggio precedente.ZONE
: la zona in cui esiste l'istanza.
Per visualizzare le proprietà di un'istanza esistente, invia una richiesta
GET
al metodoinstances.get
:GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto in cui hai creato l'istanza.ZONE
: la zona in cui esiste l'istanza.INSTANCE_NAME
: il nome dell'istanza.
Memorizza l'output della richiesta
GET
in un file o in un editor di testo. Modifica l'output copiato per cambiare il campoconsumeReservationType
inNO_RESERVATION
:{ ... "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" }, ... }
Per aggiornare l'istanza e riavviarla, effettua una richiesta
PUT
al metodoinstances.update
. Nella richiesta:Nell'URL della richiesta, includi il parametro di query
mostDisruptiveAllowedAction
impostato suRESTART
.Per il corpo della richiesta, utilizza l'output della richiesta
GET
che hai modificato in un passaggio precedente.
La richiesta è simile al seguente esempio:
PUT https://compute.s3nsapis.fr/compute/v1/projects/example-project/zones/us-central-1/instances/instance-01?mostDisruptiveAllowedAction=RESTART { ... "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" }, ... }
Nella console Trusted Cloud , vai alla pagina Crea un'istanza.
Nel campo Nome, inserisci un nome per l'istanza.
Negli elenchi Regione e Zona, seleziona la regione e la zona in cui creare l'istanza.
Specifica il tipo di macchina da utilizzare per l'istanza.
Nel menu di navigazione, fai clic su Avanzate.
Nella sezione Prenotazioni, seleziona Non utilizzare una prenotazione.
Fai clic su Crea.
INSTANCE_NAME
: il nome dell'istanza.MACHINE_TYPE
: il tipo di macchina da utilizzare per l'istanza.ZONE
: la zona in cui creare l'istanza.PROJECT_ID
: l'ID del progetto in cui vuoi creare l'istanza.ZONE
: la zona in cui creare l'istanza.INSTANCE_NAME
: il nome dell'istanza.MACHINE_TYPE
: il tipo di macchina da utilizzare per l'istanza.IMAGE_PROJECT
: il progetto immagine che contiene l'immagine del sistema operativo, ad esempiodebian-cloud
. Per saperne di più sui progetti di immagini supportati, consulta Immagini pubbliche.IMAGE
: specifica una delle seguenti opzioni:Una versione specifica dell'immagine del sistema operativo, ad esempio
debian-12-bookworm-v20240617
.Una famiglia di immagini, che deve essere formattata come
family/IMAGE_FAMILY
. Questo specifica l'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifichifamily/debian-12
, viene utilizzata la versione più recente della famiglia di immagini Debian 12. Per saperne di più sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.
Per impedire alle istanze di calcolo di un gruppo di istanze gestite (MIG) di consumare prenotazioni, esegui le seguenti operazioni:
Nella console Trusted Cloud , vai alla pagina Crea un modello di istanza.
Nel campo Nome, inserisci un nome per il modello di istanza.
Nella sezione Località, specifica se vuoi creare un modello di istanze regionale (predefinito) o globale.
Nella sezione Configurazione macchina, specifica il tipo di macchina da utilizzare per le istanze create utilizzando il modello.
Espandi la sezione Opzioni avanzate e segui questi passaggi:
Espandi la sezione Gestione.
Nella sezione Prenotazioni, seleziona Non utilizzare una prenotazione.
Fai clic su Crea.
INSTANCE_TEMPLATE_NAME
: il nome del modello di istanza.REGION
: la regione in cui creare il modello di istanza.MACHINE_TYPE
: il tipo di macchina da utilizzare per le istanze create utilizzando il modello di istanza.Per creare un modello di istanza globale:
instanceTemplates.insert
metodo.Per creare un modello di istanza regionale: metodo
regionInstanceTemplates.insert
.PROJECT_ID
: l'ID del progetto in cui creare il modello di istanza.INSTANCE_TEMPLATE_NAME
: il nome del modello di istanza.MACHINE_TYPE
: il tipo di macchina da utilizzare per le istanze create utilizzando il modello di istanza.IMAGE_PROJECT
: il progetto immagine che contiene l'immagine del sistema operativo, ad esempiodebian-cloud
. Per saperne di più sui progetti di immagini supportati, consulta Immagini pubbliche.IMAGE
: specifica una delle seguenti opzioni:Una versione specifica dell'immagine del sistema operativo, ad esempio
debian-12-bookworm-v20240617
.Una famiglia di immagini, che deve essere formattata come
family/IMAGE_FAMILY
. Questo specifica l'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifichifamily/debian-12
, viene utilizzata la versione più recente della famiglia di immagini Debian 12. Per saperne di più sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.
Vai
Per utilizzare gli Go esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Java
Per utilizzare gli Java esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Node.js
Per utilizzare gli Node.js esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Python
Per utilizzare gli Python esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite all'interfaccia alla gcloud CLI.
After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella Trusted Cloud documentazione sull'autenticazione.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per impedire a un'istanza Compute di utilizzare le prenotazioni, chiedi all'amministratore di concederti il ruolo IAM Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene le autorizzazioni necessarie per impedire a un'istanza di calcolo di utilizzare le prenotazioni. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per impedire a un'istanza di calcolo di utilizzare le prenotazioni, sono necessarie le seguenti autorizzazioni:
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Evitare il consumo delle prenotazioni
Per impedire a un'istanza di calcolo di utilizzare le prenotazioni, imposta la proprietà affinità prenotazione (
reservationAffinity
) in modo che non le utilizzi. Questa proprietà controlla se un'istanza può utilizzare prenotazioni corrispondenti, una prenotazione specifica o nessuna prenotazione.Per impedire a una o più istanze di utilizzare le prenotazioni, utilizza uno dei seguenti metodi:
Evitare il consumo in un'istanza esistente
Puoi aggiornare un'istanza in esecuzione in modo che non consumi più automaticamente le prenotazioni. Per applicare le modifiche, devi riavviare l'istanza, come descritto in questa sezione.
Per impedire a un'istanza esistente di utilizzare le prenotazioni, seleziona una delle seguenti opzioni:
gcloud
REST
Per ulteriori informazioni sull'aggiornamento di un'istanza, consulta Aggiornare le proprietà delle istanze.
Impedire il consumo durante la creazione di un'istanza
Per creare un'istanza di calcolo che non può utilizzare le prenotazioni, seleziona una delle seguenti opzioni:
Console
gcloud
Per creare un'istanza che non può utilizzare le prenotazioni, utilizza il comando
gcloud compute instances create
con il flag--reservation-affinity
impostato sunone
:gcloud compute instances create INSTANCE_NAME \ --machine-type=MACHINE_TYPE \ --reservation-affinity=none \ --zone=ZONE
Sostituisci quanto segue:
Vai
Per creare un'istanza che non può utilizzare le prenotazioni, utilizza il seguente esempio di codice:
Java
Per creare un'istanza che non può utilizzare le prenotazioni, utilizza il seguente esempio di codice:
Node.js
Per creare un'istanza che non può utilizzare le prenotazioni, utilizza il seguente esempio di codice:
Python
Per creare un'istanza che non può utilizzare le prenotazioni, utilizza il seguente esempio di codice:
REST
Per creare un'istanza che non può utilizzare le prenotazioni, invia una richiesta
POST
al metodoinstances.insert
. Nel corpo della richiesta, includi il campoconsumeReservationType
impostato suNO_RESERVATION
:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" } }
Sostituisci quanto segue:
Per ulteriori informazioni sulla creazione di un'istanza, consulta Creare e avviare un'istanza Compute Engine.
Evitare il consumo durante la creazione di un modello di istanza
Dopo aver creato un modello di istanza che configura le istanze in modo che non consumino prenotazioni, puoi utilizzarlo per:
Per creare un modello di istanza che configuri le istanze in modo che non consumino prenotazioni, seleziona una delle seguenti opzioni:
Console
gcloud
Per creare un modello di istanza che configuri le istanze in modo che non consumino prenotazioni, utilizza il comando
gcloud compute instances-templates create
con il flag--reservation-affinity
impostato sunone
.Per creare un modello di istanza regionale che configuri le istanze in modo che non consumino prenotazioni, esegui il seguente comando. Se vuoi creare un modello di istanza globale, utilizza lo stesso comando senza il flag
--instance-template-region
.gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --instance-template-region=REGION \ --machine-type=MACHINE_TYPE \ --reservation-affinity=none
Sostituisci quanto segue:
Vai
Per creare un modello di istanza che configuri le istanze in modo che non consumino prenotazioni, utilizza il seguente esempio di codice:
Java
Per creare un modello di istanza che configuri le istanze in modo che non consumino prenotazioni, utilizza il seguente esempio di codice:
Node.js
Per creare un modello di istanza che configuri le istanze in modo che non consumino prenotazioni, utilizza il seguente esempio di codice:
Python
Per creare un modello di istanza che configuri le istanze in modo che non consumino prenotazioni, utilizza il seguente esempio di codice:
REST
Per creare un modello di istanza che configuri le istanze in modo che non consumino prenotazioni, effettua una richiesta
POST
con uno dei seguenti metodi:Nel corpo della richiesta, includi il campo
consumeReservationType
e impostalo suNO_RESERVATION
.Ad esempio, per creare un modello di istanza regionale e specificare di non consumare le prenotazioni, effettua una richiesta come segue:
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/InstanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" } } }
Sostituisci quanto segue:
Per saperne di più sulla creazione di modelli di istanze, consulta Creare modelli di istanze.
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-06-23 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-06-23 UTC."],[[["This document outlines methods to prevent Compute Engine instances from consuming reservations, which is useful for tasks like testing or isolated deployments."],["You can configure existing or new instances to not consume reservations by setting the `reservationAffinity` property to `NO_RESERVATION`."],["Methods to prevent reservation consumption include updating an existing instance, creating a new instance, creating instances in bulk, and creating instance templates."],["To update an existing instance, you can export the properties to a YAML file, modify it to set `consumeReservationType` to `NO_RESERVATION`, then update the instance using the updated file and restart."],["When creating new instances, instance templates, or bulk instances, setting the `--reservation-affinity` flag to `none` or the `consumeReservationType` to `NO_RESERVATION` in the request body will prevent them from consuming reservations."]]],[]] -