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 saperne di più 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 è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API di 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. 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.

      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.

          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 .

Limitazioni

Non puoi disattivare le riparazioni in un MIG se il gruppo contiene quanto segue:

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. Nella sezione Ciclo di vita di un'istanza VM, imposta il campo Azione predefinita in caso di errore su Nessuna azione.

  5. 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.

  6. 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.

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. Nella sezione Ciclo di vita di un'istanza VM, imposta il campo In caso di controllo di integrità non riuscito su Nessuna azione.

  5. 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. Nella sezione Ciclo di vita di un'istanza VM, segui questi passaggi:

    • Per riparare le VM con errori, imposta il campo Azione predefinita in caso di errore su Ripara istanza.
    • Per riparare le VM in stato non integro, 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