Disattiva le riparazioni in un MIG

Questo documento descrive come disattivare le riparazioni delle VM con errori e in stato non integro in un gruppo di istanze gestite (MIG) e, se già disattivate, come configurare il MIG per riparare le VM.

Per impostazione predefinita, un MIG ripara automaticamente una VM con errori nel gruppo ricreandola. Se hai configurato un controllo di integrità basato sull'applicazione, il MIG ripara anche le VM in stato non integro su cui la tua applicazione non supera il controllo di integrità. La riparazione di una VM in base a un controllo di integrità basato sull'applicazione è chiamata anche riparazione automatica.

Se non vuoi che un MIG ripari una VM con errori o in stato non integro, puoi disattivare le riparazioni nel MIG. La disattivazione delle riparazioni è utile quando vuoi risolvere i problemi dovuti a una VM con errori, implementare la tua logica di riparazione o monitorare l'integrità delle applicazioni senza riparare le VM in stato non integro.

Per verificare se in un MIG le riparazioni sono già disattivate, consulta Controlla se in un MIG le riparazioni delle VM sono disattivate.

Per ulteriori informazioni sulle riparazioni in un MIG, consulta Informazioni sulla riparazione delle VM per l'alta affidabilità.

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 .

Disattiva le riparazioni in un MIG

Quando disattivi le riparazioni in un MIG, per impostazione predefinita vengono disattivate sia le riparazioni delle VM con errori sia la riparazione automatica. Se vuoi disattivare solo la riparazione automatica, consulta Disattiva la riparazione automatica.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome del MIG in cui vuoi disattivare la riparazione.

  3. Fai clic su Modifica.

  4. Fai clic su Ciclo di vita dell'istanza e autoriparazione per espandere la sezione.

    1. Nella sezione Azione in caso di errore, imposta il campo Azione predefinita in caso di errore su Nessuna azione.
    2. Se hai configurato la riparazione automatica e non vuoi che il MIG la disattivi, imposta il campo In caso di controllo di integrità non riuscito su Ripara istanza nella sezione Riparazione automatica.
  5. Fai clic su Salva.

gcloud

Per disattivare le riparazioni in un MIG, utilizza quindi il comando update come segue. In questo modo la riparazione automatica viene disattivata per impostazione predefinita.

gcloud compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=do-nothing \
    --zone=ZONE

Se la riparazione automatica è configurata nel MIG e non vuoi disattivarla per impostazione predefinita, utilizza il comando beta update per impostare il flag --action-on-vm-failed-health-check su repair. In questo modo, la riparazione automatica delle VM in stato non integro continua a funzionare anche se la riparazione delle VM con errori è disattivata.

gcloud beta compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=do-nothing \
    --action-on-vm-failed-health-check=repair \
    --zone=ZONE

Sostituisci quanto segue:

  • MIG_NAME: il nome del gruppo di istanze.
  • ZONE: la zona in cui si trova il MIG. Per un MIG a livello di regione, usa il flag --region=REGION.

REST

Per disattivare le riparazioni in un MIG, utilizza i metodi dell'API come segue. In questo modo la riparazione automatica viene disattivata per impostazione predefinita.

Ad esempio, esegui la seguente chiamata in un MIG a livello di zona. In questo modo la riparazione automatica viene disattivata per impostazione predefinita.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
    {
      "defaultActionOnFailure": "DO_NOTHING"
    }
  }

Se la riparazione automatica è configurata nel MIG e non vuoi disattivarla per impostazione predefinita, utilizza i metodi dell'API come indicato di seguito per impostare il flag onFailedHealthCheck su REPAIR. In questo modo, la riparazione automatica delle VM in stato non integro continua a funzionare anche se la riparazione delle VM con errori è disattivata.

Ad esempio, esegui la seguente chiamata in un MIG a livello di zona:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
    {
      "defaultActionOnFailure": "DO_NOTHING",
      "onFailedHealthCheck": "REPAIR"
    }
  }

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • MIG_NAME: il nome del MIG.
  • ZONE: la zona in cui si trova il MIG. Per un MIG a livello di regione, utilizza regions/REGION nell'URL.

Limitazioni

Se un MIG presenta uno dei seguenti elementi, non puoi disattivare le riparazioni nel MIG impostando il campo defaultActionOnFailure su DO_NOTHING:

Disattiva la riparazione automatica

Dopo aver configurato un controllo di integrità dell'applicazione in un MIG, se non desideri che il MIG ripari le VM in stato non integro, puoi disattivare la riparazione automatica separatamente. Le riparazioni delle VM con errori non vengono disattivate.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome del MIG in cui vuoi disattivare la riparazione automatica.

  3. Fai clic su Modifica.

  4. Fai clic su Ciclo di vita dell'istanza e autoriparazione per espandere la sezione.

  5. Nella sezione Riparazione automatica, imposta il campo In caso di controllo di integrità non riuscito su Nessuna azione.

  6. Fai clic su Salva.

gcloud

Per disattivare la riparazione automatica in un MIG, utilizza il comando beta update e imposta il flag --action-on-vm-failed-health-check su do-nothing.

Ad esempio, utilizza il seguente comando per un MIG a livello di zona:

gcloud beta compute instance-groups managed update MIG_NAME \
    --action-on-vm-failed-health-check=do-nothing \
    --zone=ZONE

Sostituisci quanto segue:

  • MIG_NAME: il nome del MIG.
  • ZONE: la zona in cui si trova il MIG. Per un MIG a livello di regione, usa il flag --region=REGION.

REST

Per disattivare la riparazione automatica in un MIG, utilizza i metodi dell'API come indicato di seguito e imposta il flag --action-on-vm-failed-health-check su do-nothing.

Ad esempio, invia la seguente richiesta per disattivare la riparazione automatica in un MIG a livello di zona:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers

{
  "instanceLifecyclePolicy":
   {
     "onFailedHealthCheck": "DO_NOTHING"
   }
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG. Per un MIG a livello di regione, utilizza regions/REGION nell'URL.
  • MIG_NAME: il nome del gruppo di istanze.

Attiva le riparazioni o la riparazione automatica

Per impostazione predefinita, un MIG ripara le VM con errori e, se è configurata la riparazione automatica, ripara anche le VM in stato non integro. Se hai disattivato le riparazioni, la riparazione automatica o entrambe, puoi riattivarle.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic sul nome del MIG in cui vuoi attivare la riparazione.

  3. Fai clic su Modifica.

  4. Fai clic su Ciclo di vita dell'istanza e autoriparazione per espandere la sezione.

    • Per riparare le VM con errori, nella sezione Azione in caso di errore, imposta il campo Azione predefinita in caso di errore su Ripara istanza.
    • Per riparare le VM in stato non integro, nella sezione Riparazione automatica, imposta il campo In caso di controllo di integrità non riuscito su Ripara istanza. Se imposti questo valore su Azione predefinita, la riparazione automatica utilizza la stessa impostazione configurata per il campo Azione predefinita in caso di errore.
  5. Al termine, fai clic su Salva per applicare le modifiche.

gcloud

Per attivare le riparazioni in un MIG, utilizza il comando update. Viene attivata anche la riparazione automatica, se il valore del flag --action-on-vm-failed-health-check è default-action.

gcloud compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=repair

Se hai disattivato la riparazione automatica separatamente e vuoi riattivarla, utilizza il comando beta update:

gcloud beta compute instance-groups managed update MIG_NAME \
    --action-on-vm-failed-health-check=default-action OR repair

Sostituisci quanto segue:

  • MIG_NAME: il nome di un MIG.
  • default-action OR repair: se vuoi che la riparazione automatica utilizzi la stessa impostazione configurata per le riparazioni delle VM con errori, imposta il valore su default-action. Ad esempio, quando disattivi la riparazione delle VM con errori, il MIG disattiva anche la riparazione automatica. Se vuoi controllare separatamente le riparazioni delle VM in stato non integro, imposta il valore su repair.

REST

Per attivare le riparazioni in un MIG, utilizza il metodo dell'API come segue. Viene attivata anche la riparazione automatica, se il valore del campo onFailedHealthCheck è DEFAULT_ACTION.

Ad esempio, invia la seguente richiesta in un MIG a livello di zona:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
    {
      "instanceLifecyclePolicy": {
        "defaultActionOnFailure": "REPAIR"
      }
    }
  

Se hai disattivato la riparazione automatica separatamente e vuoi riattivarla, utilizza il metodo dell'API beta come segue:

  PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
  {
    "instanceLifecyclePolicy": {
      "onFailedHealthCheck": "DEFAULT_ACTION OR REPAIR"
    }
  }

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • ZONE: la zona in cui si trova il MIG. Per un MIG a livello di regione, utilizza regions/REGION nell'URL.
  • MIG_NAME: il nome del MIG.
  • DEFAULT_ACTION OR REPAIR: se vuoi che la riparazione automatica utilizzi la stessa impostazione configurata per le VM con errori, imposta il valore su DEFAULT_ACTION. Ad esempio, quando disattivi la riparazione delle VM con errori, il MIG disattiva anche la riparazione automatica. Se vuoi configurare la riparazione automatica separatamente, imposta il valore su REPAIR.

Passaggi successivi