Risoluzione dei problemi relativi ai gruppi di istanze gestite


Esistono diversi problemi che possono impedire a un gruppo di istanze gestite (MIG) di creare o ricreare correttamente un'istanza VM.

Se vengono generati log per un MIG eliminato

Il problema potrebbe essere correlato alle seguenti situazioni.

Il gestore della scalabilità automatica collegato è ancora esistente

Se hai eliminato un MIG utilizzando l'API Compute Engine e non hai inviato una richiesta distinta per eliminare il gestore della scalabilità automatica collegato, in Esplora log potrebbero essere visualizzati log con il seguente messaggio.

The resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/DELETED_INSTANCE_GROUP_NAME' was not found.

Risoluzione:

Per risolvere il problema, elimina il gestore della scalabilità automatica collegato utilizzando i metodi dell'API Compute Engine:

Se il MIG non riesce a creare o ricreare istanze

Il problema potrebbe essere correlato alle seguenti situazioni.

Il disco di avvio esiste già

Per impostazione predefinita, quando crei un'istanza viene creato un nuovo disco permanente di avvio. Il nome del disco di avvio corrisponde al nome della VM. Se assegni il nome my-instance a una VM, il disco avrà allo stesso modo il nome my-instance. Se esiste già un disco permanente con questo nome, la richiesta non va a buon fine. Per risolvere il problema, facoltativamente puoi eseguire uno snapshot ed eliminare il disco permanente esistente.

Il template di istanza non è valido

Se hai aggiornato di recente il template di istanza, potrebbe esserci una proprietà non valida che causa l'errore della creazione della VM da parte del MIG. Esamina le proprietà per rilevare questi errori comuni:

  • Hai specificato una risorsa che non esiste, ad esempio un'immagine di origine.
  • Hai scritto in modo errato il nome di una risorsa.
  • Hai provato a collegare un disco permanente non di avvio esistente in modalità di lettura/scrittura, ma il gruppo contiene più di una VM. Per i gruppi con più di una VM, tutti i dischi aggiuntivi che vuoi condividere tra tutte le VM del gruppo possono essere collegati esclusivamente in modalità di sola lettura.

Limite superato per il tipo di risorsa

Il seguente errore si verifica quando si tenta di creare più di 2.000 VM in un MIG regionale o più di 1.000 VM in un MIG a livello di zona. Hai raggiunto il limite di dimensione per il gruppo di istanze.

Messaggio di errore:

ERROR: (gcloud.compute.<INSTANCE_GROUP_TYPE>.<METHOD>) Could not
fetch resource:

 - Exceeded limit 'MAX_INSTANCES_IN_INSTANCE_GROUP' on resource 'PROJECT_ID'.
 Limit: NUMBER

Risoluzione:

Per risolvere il problema, prova una delle seguenti soluzioni:

Se non riesci a eliminare il MIG o le relative istanze

Il problema potrebbe essere correlato alla seguente situazione.

Risorsa non trovata nella zona o nella regione

Il seguente errore si verifica quando provi a eliminare un MIG a livello di regione e specifichi il flag --zone, non specifichi alcuna regione o specifichi la regione sbagliata. Un errore simile può verificarsi se provi a eliminare un MIG di zona e specifichi il flag --region.

Messaggio di errore:

  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME' was not found
    
  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The resource 'projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME' was not found
    

Risoluzione:

Per risolvere il problema, prova una delle seguenti soluzioni:

La risorsa è utilizzata da un servizio di backend

Non puoi rimuovere un gruppo di istanze se viene utilizzato dal servizio di backend di un bilanciatore del carico. Devi rimuovere l'istanza dal servizio di backend prima di poter eliminare il gruppo di istanze.

Messaggio di errore:

  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The instance_group_manager resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME is already being used by 'projects/PROJECT/global/backendServices/BACKEND_SERVICE
  • ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed:
    ‐ The instance_group_manager resource 'projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME is already being used by 'projects/PROJECT/global/backendServices/BACKEND_SERVICE

Risoluzione:

  1. (Facoltativo) Svuota il gruppo di istanze di backend.

  2. Rimuovi il MIG dal servizio di backend regionale o globale.

    • Per un MIG a livello di zona, esegui il seguente comando:

      gcloud compute backend-services remove-backend BACKEND_SERVICE \
          --instance-group=INSTANCE_GROUP_NAME \
          --instance-group-zone=ZONE \
          [--region=REGION | --global]
      
    • Per un MIG a livello di regione, esegui il seguente comando:

      gcloud compute backend-services remove-backend BACKEND_SERVICE  \
          --instance-group=INSTANCE_GROUP_NAME \
          --instance-group-region=REGION \
          [--region=REGION | --global]
      
  3. Elimina il MIG:

    gcloud compute instance-groups managed delete INSTANCE_GROUP_NAME
    

Se il MIG tenta continuamente di ricreare istanze

Il problema potrebbe essere correlato alla seguente situazione.

I probe di controllo di integrità non riescono a raggiungere l'istanza

Se hai configurato una policy di ripristino automatico, ma non hai configurato o hai configurato erroneamente la regola firewall che consente ai probe del controllo di integrità di raggiungere la tua applicazione, le tue VM sembrano non essere in stato integro e il MIG tenta continuamente di ricrearle. Per informazioni su come configurare una regola firewall per il controllo di integrità, consulta Esempio di configurazione del controllo di integrità.