Questo documento descrive come sostituire, rimuovere o eliminare le policy di posizionamento.
La sostituzione, la rimozione o l'eliminazione delle policy di posizionamento è utile nei seguenti casi:
Sostituisci una policy di posizionamento in un'istanza di macchina virtuale (VM) per spostare la VM in una posizione diversa rispetto alle altre VM.
Rimuovi una policy di posizionamento da una VM quando non ti interessa più la sua posizione rispetto alle altre VM.
Elimina una policy di posizionamento quando non ti serve più.
Prima di iniziare
- Consulta le limitazioni per le norme sul posizionamento.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è
il processo mediante il quale la tua identità viene verificata per l'accesso ai Google Cloud servizi e alle 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:
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
-
Per sostituire o rimuovere una policy di posizionamento da una VM:
compute.instances.update
on the project -
Per eliminare una policy di posizionamento:
compute.resourcePolicies.delete
on the project Crea un file YAML vuoto.
Per esportare le proprietà di una VM nel file YAML che hai appena creato, utilizza il comando
gcloud compute instances export
.gcloud compute instances export VM_NAME \ --destination=FILE_PATH \ --zone=ZONE
Sostituisci quanto segue:
VM_NAME
: il nome di una VM esistente che specifica una policy di posizionamento.FILE_PATH
: il percorso del file YAML che hai creato nel passaggio precedente.ZONE
: la zona in cui si trova la VM.
Nel file di configurazione YAML, modifica il valore del campo
resourcePolicies
per specificare un criterio di posizionamento diverso.resourcePolicies: - https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto in cui si trova la normativa di posizionamento. Puoi specificare solo una policy di posizionamento che si trova nello stesso progetto della VM.REGION
: la regione in cui si trova la policy di posizionamento.POLICY_NAME
: il nome della policy di posizionamento.
Per aggiornare la VM 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 VM_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE
Sostituisci quanto segue:
VM_NAME
: il nome della VM.YAML_FILE
: il percorso del file YAML con i dati di configurazione modificati nel passaggio precedente.ZONE
: la zona in cui si trova la VM.
Crea un file JSON vuoto.
Per visualizzare le proprietà di una VM esistente, invia una richiesta
GET
al metodoinstances.get
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.VM_NAME
: il nome di una VM esistente che specifica una policy di posizionamento.
Nel file JSON vuoto che hai creato nei passaggi precedenti, procedi in questo modo:
Inserisci le proprietà della VM dall'output della richiesta
GET
.Individua il campo
resourcePolicies
e modifica il valore per specificare un criterio di posizionamento diverso."resourcePolicies": [ "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto in cui si trova la normativa di posizionamento. Puoi specificare solo una norma di posizionamento che si trova nello stesso progetto della VM.REGION
: la regione in cui si trova la norma di posizionamento.POLICY_NAME
: il nome della policy di posizionamento.
Per aggiornare la VM e riavviarla, effettua una richiesta
PUT
al metodoinstances.update
. Nella richiesta, segui questi passaggi:Nell'URL della richiesta, includi il parametro di query
most_disruptive_allowed_action
impostato suRESTART
.Per il corpo della richiesta, utilizza i dettagli di configurazione della VM dal file JSON che hai creato e aggiornato nei passaggi precedenti.
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART { ... "resourcePolicies": [ "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ], ... }
VM_NAME
: il nome di una VM esistente che specifica una policy di posizionamento.POLICY_NAME
: il nome del criterio di posizionamento applicato alla VM. Per verificare il nome della norma di posizionamento, visualizza i dettagli della VM e controlla il valore del camporesourcePolicies
.ZONE
: la zona in cui si trova la VM.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.VM_NAME
: il nome di una VM esistente che specifica una policy di posizionamento.REGION
: la regione in cui si trova la policy di posizionamento.POLICY_NAME
: il nome del criterio di posizionamento applicato alla VM. Per verificare il nome della norma di posizionamento, visualizza i dettagli della VM e controlla il valore del camporesourcePolicies
.Se la norma viene applicata solo alle VM e vuoi conservarle, procedi nel seguente modo:
Rimuovi la policy di posizionamento dalle VM come descritto in questo documento.
Elimina la policy di posizionamento come descritto in questa sezione.
In caso contrario, procedi nel seguente modo:
(Facoltativo) Rimuovi la policy di posizionamento da qualsiasi VM che vuoi conservare come descritto in questo documento.
Elimina ogni altra risorsa Compute Engine a cui viene applicata la policy di posizionamento nel seguente ordine:
VM
Prenotazioni
Modelli di istanza
Elimina la policy di posizionamento come descritto in questa sezione.
POLICY_NAME
: il nome di una norma di posizionamento esistente.REGION
: la regione in cui si trova la policy di posizionamento.PROJECT_ID
: l'ID del progetto in cui si trova la policy di posizionamento.REGION
: la regione in cui si trova la policy di posizionamento.POLICY_NAME
: il nome di una norma di posizionamento esistente.Scopri come visualizzare le norme di posizionamento.
Scopri come eseguire le seguenti operazioni con una VM che specifica una policy di posizionamento:
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.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per sostituire, rimuovere o eliminare le norme di posizionamento, chiedi all'amministratore di concederti il ruolo IAM Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1
) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene le autorizzazioni necessarie per sostituire, rimuovere o eliminare i criteri di posizionamento. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per sostituire, rimuovere o eliminare le policy di posizionamento sono necessarie le seguenti autorizzazioni:
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Sostituisci una policy di posizionamento in una VM
Prima di sostituire una policy di posizionamento distribuito in una VM con una policy di posizionamento compatto, assicurati che la VM utilizzi un tipo di macchina e una policy di manutenzione dell'host supportati. Se devi aggiornare la VM prima di sostituire le relative norme di posizionamento, esegui una o entrambe le seguenti operazioni:
Dopo aver sostituito la policy di posizionamento in una VM, devi riavviarla per rendere effettiva la policy di posizionamento appena applicata.
Per sostituire una policy di posizionamento in una VM, seleziona una delle seguenti opzioni:
gcloud
REST
Per ulteriori informazioni sull'aggiornamento delle proprietà di una VM, consulta Aggiorna le proprietà della VM.
Rimuovi una policy di posizionamento da una VM
Se vuoi rimuovere una policy di posizionamento spread con due o più domini di disponibilità da una VM, puoi farlo senza arrestare la VM. Se vuoi rimuovere una policy di posizionamento compatta o una policy di posizionamento distribuita con un solo dominio di disponibilità, devi prima arrestare la VM prima di rimuovere la policy di posizionamento collegata.
La rimozione di una policy di posizionamento da una VM non influisce sulla sua posizione fisica. Tuttavia, se la VM è in fase di migrazione live, Compute Engine potrebbe spostarla in una posizione fisica diversa.
Per rimuovere un criterio di posizionamento da una VM, seleziona una delle seguenti opzioni:
gcloud
Per rimuovere una policy di posizionamento da una VM, utilizza il comando
gcloud compute instances remove-resource-policies
.gcloud compute instances remove-resource-policies VM_NAME \ --resource-policies=POLICY_NAME \ --zone=ZONE
Sostituisci quanto segue:
REST
Per rimuovere una policy di posizionamento da una VM, invia una richiesta
POST
al metodoinstances.removeResourcePolicies
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/removeResourcePolicies { "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ] }
Sostituisci quanto segue:
Elimina una policy di posizionamento
Puoi eliminare una policy di posizionamento solo se non è applicata a nessuna risorsa Compute Engine. In caso contrario, l'eliminazione della policy di posizionamento non riesce. Se vuoi eliminare una norma di posizionamento applicata a una o più risorse Compute Engine, esegui una delle seguenti operazioni:
Per eliminare un criterio di posizionamento, seleziona una delle seguenti opzioni:
gcloud
Per eliminare una policy di posizionamento, utilizza il comando
gcloud compute resource-policies delete
.gcloud compute resource-policies delete POLICY_NAME \ --region=REGION
Sostituisci quanto segue:
REST
Per eliminare una policy di posizionamento, invia una richiesta
DELETE
al metodoresourcePolicies.delete
.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME
Sostituisci quanto segue:
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-07-10 UTC.
-