Disattivare l'arresto graduale in un'istanza Compute Engine


Questo documento spiega come disattivare l'arresto in modo controllato in un'istanza Compute Engine esistente. Per scoprire di più sull'arresto elegante, incluso come saltare l'arresto elegante per singole operazioni di arresto o eliminazione, consulta la Panoramica dell'arresto elegante.

Se hai attivato l'arresto graduale in un'istanza, puoi disattivarlo per:

  • Accelera le operazioni di arresto o eliminazione per evitare addebiti non necessari.

  • Aggiorna le proprietà dell'istanza che richiedono un riavvio.

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. Google Cloud 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. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

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

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

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

Ruoli obbligatori

Per ottenere l'autorizzazione necessaria per disattivare l'arresto graduale in un'istanza Compute, 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 l'autorizzazione compute.instances.update on the instance necessaria per disattivare l'arresto graduale in un'istanza di calcolo.

Potresti anche ottenere questa autorizzazione con ruoli personalizzati o altri ruoli predefiniti.

Disattivare l'arresto graceful in un'istanza

Puoi disattivare l'arresto elegante in un'istanza di calcolo senza riavviare l'istanza. Tuttavia, non puoi disattivare l'arresto controllato mentre l'istanza è in fase di arresto controllato (PENDING_STOP).

Per disattivare l'arresto controllato in un'istanza, seleziona una delle seguenti opzioni:

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Nella colonna Nome, fai clic sul nome dell'istanza per visualizzarne i dettagli.

    Viene visualizzata la pagina dei dettagli dell'istanza e viene selezionata la scheda Dettagli.

  3. Fai clic su Modifica.

  4. Nella sezione Gestione, deseleziona la casella di controllo Esegui l'arresto controllato della VM.

  5. Fai clic su Salva.

gcloud

Per disattivare l'arresto elegante in un'istanza, utilizza il comando gcloud beta compute instances update con il flag --no-graceful-shutdown:

gcloud beta compute instances update INSTANCE_NAME \
    --no-graceful-shutdown \
    --zone=ZONE

Sostituisci quanto segue:

  • INSTANCE_NAME: il nome dell'istanza.

  • ZONE: la zona in cui si trova l'istanza.

REST

  1. Crea un file JSON vuoto.

  2. Per visualizzare le proprietà di un'istanza esistente, effettua una richiesta GET al metodo instances.get beta:

    GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto in cui si trova l'istanza.

    • ZONE: la zona in cui si trova l'istanza.

    • INSTANCE_NAME: il nome di un'istanza esistente.

  3. Nel file JSON vuoto creato nei passaggi precedenti, procedi nel seguente modo:

    1. Inserisci le proprietà dell'istanza dall'output della richiesta GET.

    2. Individua il campo gracefulShutdown.enabled e modifica il valore in false:

      {
        ...
        "scheduling": {
          ...
          "gracefulShutdown": {
            "enabled": false
          }
        },
        ...
      }
      
  4. Per aggiornare l'istanza, invia una richiesta PUT al metodo instances.update beta. Includi quanto segue:

    • Nell'URL della richiesta, includi il parametro di query mostDisruptiveAllowedAction.

    • Nel corpo della richiesta, includi le proprietà dell'istanza dal file JSON che hai creato e aggiornato nei passaggi precedenti.

    La richiesta PUT per aggiornare l'istanza è simile alla seguente:

    PUT https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=ALLOWED_ACTION
    
    {
      ...
      "scheduling": {
        ...
        "gracefulShutdown": {
          "enabled": false
        }
      },
      ...
    }
    

    Sostituisci ALLOWED_ACTION con uno dei seguenti valori:

    • NO_EFFECT: la richiesta verifica se la richiesta di aggiornamento è valida e se le risorse sono disponibili, ma non aggiorna l'istanza.

    • REFRESH: se le proprietà dell'istanza modificate non richiedono il riavvio dell'istanza, Compute Engine aggiorna l'istanza.

Per ulteriori informazioni sull'aggiornamento delle proprietà di un'istanza, consulta Aggiornare le proprietà delle istanze.

Passaggi successivi