Sostituisci, rimuovi o elimina i criteri di posizionamento

Questo documento descrive come sostituire, rimuovere o eliminare i criteri di posizionamento.

La sostituzione, la rimozione o l'eliminazione dei criteri di posizionamento è utile nei seguenti casi:

  • Sostituisci un criterio di posizionamento in un'istanza di una macchina virtuale (VM) per spostare la VM in una posizione diversa rispetto ad altre VM.

  • Rimuovi un criterio di posizionamento da una VM se non ti interessa più la sua posizione rispetto ad altre VM.

  • Elimina un criterio di posizionamento quando non ti serve più.

Prima di iniziare

  • Consulta le limitazioni relative ai criteri di posizionamento.
  • Se non l'hai già fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale viene verificata l'identità dell'utente per ottenere l'accesso ai servizi e alle API Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione in Compute Engine come segue.

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

    gcloud

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Set a default region and zone.
    3. 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, quindi initialize eseguendo questo comando:

        gcloud init

      Per maggiori informazioni, consulta Autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per sostituire, rimuovere o eliminare i criteri di posizionamento, chiedi all'amministratore di concederti il ruolo IAM Amministratore istanze Compute (v1) (roles/compute.instanceAdmin.v1) per il tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per sostituire, rimuovere o eliminare i criteri di posizionamento. Per visualizzare esattamente le autorizzazioni necessarie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per sostituire, rimuovere o eliminare i criteri di posizionamento sono necessarie le seguenti autorizzazioni:

  • Per sostituire o rimuovere un criterio di posizionamento da una VM: compute.instances.update on the project
  • Per eliminare un criterio di posizionamento: compute.resourcePolicies.delete on the project

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

Sostituisci un criterio di posizionamento in una VM

Prima di sostituire un criterio di posizionamento distribuito in una VM con un criterio di posizionamento compatto, assicurati che la VM utilizzi un tipo di macchina e un criterio di manutenzione dell'host supportati. Se devi aggiornare la VM prima di sostituire il criterio di posizionamento, esegui una o entrambe le seguenti operazioni:

Dopo aver sostituito il criterio di posizionamento in una VM, devi riavviare la VM per rendere effettivo il criterio di posizionamento appena applicato.

Per sostituire un criterio di posizionamento in una VM, seleziona una delle seguenti opzioni:

gcloud

  1. Per esportare le proprietà di una VM esistente, 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 un criterio di posizionamento.

    • FILE_PATH: il percorso in cui vuoi salvare il file di configurazione della VM.

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

  2. In un editor di testo a tua scelta, apri il file di configurazione della VM.

  3. Per sostituire il criterio di posizionamento con un altro criterio esistente, sostituisci il valore nel campo resourcePolicies con un altro criterio di posizionamento.

    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 il criterio di posizionamento.

    • REGION: la regione in cui si trova il criterio di posizionamento.

    • POLICY_NAME: il nome del criterio di posizionamento.

    Puoi anche modificare altre proprietà della VM. Per maggiori informazioni, consulta la sezione Proprietà aggiornabili.

  4. Segui i passaggi rimanenti in Aggiornare le proprietà della VM.

REST

  1. Per esportare le proprietà di una VM esistente, effettua una richiesta GET al metodo instances.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 un criterio di posizionamento.

    La richiesta restituisce i dettagli di configurazione della VM.

  2. Per sostituire il criterio di posizionamento con un altro criterio esistente, sostituisci il valore nel campo resourcePolicies con un altro criterio di posizionamento.

    "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 il criterio di posizionamento.

    • REGION: la regione in cui si trova il criterio di posizionamento.

    • POLICY_NAME: il nome del criterio di posizionamento.

    Puoi anche modificare altre proprietà della VM. Per maggiori informazioni, consulta la sezione Proprietà aggiornabili.

  3. Segui i passaggi rimanenti in Aggiornare le proprietà della VM.

Rimuovi un criterio di posizionamento da una VM

Se vuoi rimuovere da una VM un criterio di posizionamento distribuito con due o più domini di disponibilità, puoi farlo senza arrestare la VM. Se vuoi rimuovere un criterio di posizionamento compatto o un criterio di posizionamento distribuito con un solo dominio di disponibilità, devi arrestare la VM prima di rimuovere il criterio di posizionamento associato.

La rimozione di un criterio di posizionamento da una VM non influisce sulla sua posizione fisica. Tuttavia, se la VM esegue una migrazione in tempo reale, Compute Engine potrebbe spostarla in un'altra posizione fisica.

Per rimuovere un criterio di posizionamento da una VM, seleziona una delle seguenti opzioni:

gcloud

Per rimuovere un criterio 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:

  • VM_NAME: il nome di una VM esistente che specifica un criterio di posizionamento.

  • POLICY_NAME: il nome del criterio di posizionamento applicato alla VM. Per verificare il nome del criterio di posizionamento, visualizza i dettagli della VM e controlla il valore del campo resourcePolicies.

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

REST

Per rimuovere un criterio di posizionamento da una VM, effettua una richiesta POST al metodo instances.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:

  • 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 un criterio di posizionamento.

  • REGION: la regione in cui si trova il criterio di posizionamento.

  • POLICY_NAME: il nome del criterio di posizionamento applicato alla VM. Per verificare il nome del criterio di posizionamento, visualizza i dettagli della VM e controlla il valore del campo resourcePolicies.

Elimina un criterio di posizionamento

Puoi eliminare un criterio di posizionamento solo se non è applicato ad nessuna risorsa Compute Engine. In caso contrario, l'eliminazione del criterio di posizionamento non riuscirà. Se vuoi eliminare un criterio di posizionamento applicato a una o più risorse Compute Engine, procedi in uno dei seguenti modi:

  • Se il criterio viene applicato solo alle VM e vuoi mantenerle, procedi nel seguente modo:

    1. Rimuovi il criterio di posizionamento dalle VM come descritto in questo documento.

    2. Elimina il criterio di posizionamento come descritto in questa sezione.

  • In caso contrario, procedi nel seguente modo:

    1. (Facoltativo) Rimuovi il criterio di posizionamento da tutte le VM che vuoi conservare, come descritto in questo documento.

    2. Elimina ogni altra risorsa Compute Engine a cui viene applicato il criterio di posizionamento nel seguente ordine:

      1. VM

      2. Prenotazioni

      3. Modelli di istanza

    3. Elimina il criterio di posizionamento come descritto in questa sezione.

Per eliminare un criterio di posizionamento, seleziona una delle seguenti opzioni:

gcloud

Per eliminare un criterio di posizionamento, utilizza il comando gcloud compute resource-policies delete.

gcloud compute resource-policies delete POLICY_NAME \
    --region=REGION

Sostituisci quanto segue:

  • POLICY_NAME: il nome di un criterio di posizionamento esistente.

  • REGION: la regione in cui si trova il criterio di posizionamento.

REST

Per eliminare un criterio di posizionamento, effettua una richiesta DELETE al metodo resourcePolicies.delete.

DELETE https://compute.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 il criterio di posizionamento.

  • REGION: la regione in cui si trova il criterio di posizionamento.

  • POLICY_NAME: il nome di un criterio di posizionamento esistente.

Che cosa succede dopo?