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 gruppo di istanze gestite eliminato

Il problema potrebbe essere correlato alle seguenti situazioni.

Il gestore della scalabilità automatica collegato esiste ancora

Se hai eliminato un gruppo di istanze gestite 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 l'autoscaler collegato utilizzando i metodi dell'API Compute Engine:

  • Per un gestore della scalabilità automatica di un gruppo di istanze gestite a livello di zona, utilizza il metodo autoscalers.delete.
  • Per un gestore della scalabilità automatica di un gruppo di istanze gestite a livello di regione, utilizza il metodo regionAutoscalers.delete.

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à lo stesso nome.my-instance Se esiste già un disco permanente con questo nome, la richiesta non va a buon fine. Per risolvere il problema, se vuoi puoi eseguire uno snapshot ed eliminare il disco permanente esistente.

Il modello di istanza non è valido

Se hai aggiornato di recente il modello di istanza, potrebbe esserci una proprietà non valida che causa il fallimento della creazione della VM nel MIG. Esamina le proprietà per rilevare questi errori comuni:

  • Hai specificato una risorsa che non esiste, ad esempio un'immagine di origine.
  • Hai scritto male il nome di una risorsa.
  • Hai provato a collegare un disco permanente non di avvio esistente in modalità di lettura/scrittura, ma il tuo 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 solo in modalità di sola lettura.

Limite superato per il tipo di risorsa

Il seguente errore si verifica quando si tenta di creare più di 2000 VM in un gruppo di istanze gestite regionale o più di 1000 VM in un gruppo di istanze gestite 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 gruppo di istanze gestite 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 gruppo di istanze gestite 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 gruppo di istanze gestite zonale 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 viene 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) Scarica il gruppo di istanza di backend.

  2. Rimuovi il gruppo di istanze gestite dal servizio di backend regionale o globale.

    • Per un MIG zonale, 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 gruppo di istanze gestite regionale, 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 gruppo di istanze gestite:

    gcloud compute instance-groups managed delete INSTANCE_GROUP_NAME
    

Se il gruppo di istanze gestite tenta continuamente di ricreare istanze

Il problema potrebbe essere correlato alla seguente situazione.

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

Se hai configurato un criterio di riparazione automatica, 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 di integrità e il gruppo di istanze gestite 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à.