Visualizzare, annullare o eliminare le richieste di ridimensionamento in un gruppo di istanze gestite


Questo documento descrive come eseguire le seguenti operazioni dopo aver creato una richiesta di ridimensionamento in un gruppo di istanze gestite (MIG):

Dopo aver creato richieste di ridimensionamento in un gruppo di istanze gestite, puoi eseguire una o più delle seguenti operazioni:

  • Visualizza le richieste di ridimensionamento per monitorarne lo stato o risolverne i problemi.

  • Annulla le richieste di ridimensionamento per impedire al gruppo di istanze di macchine virtuali (VM) di creare il numero richiesto di istanze.

  • Elimina le richieste di ridimensionamento quando non ti servono più.

Prima di iniziare

  • Se non l'hai ancora fatto, scopri come funzionano le richieste di ridimensionamento.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi 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 sull'autenticazione di Google Cloud.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per visualizzare, annullare o eliminare le richieste di ridimensionamento in un gruppo di istanze gestite, 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 le autorizzazioni necessarie per visualizzare, annullare o eliminare le richieste di ridimensionamento in un MIG. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

Per visualizzare, annullare o eliminare le richieste di ridimensionamento in un gruppo di istanze gestite sono necessarie le seguenti autorizzazioni:

  • Per annullare o eliminare le richieste di ridimensionamento in un gruppo di istanze gestite: compute.instanceGroupManagers.update
  • Per visualizzare un elenco di richieste di ridimensionamento in un gruppo di istanze gestite: compute.instanceGroupManagers.list
  • Per visualizzare i dettagli di una richiesta di ridimensionamento: compute.instanceGroupManagers.get

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Visualizzare le richieste di ridimensionamento

Per visualizzare le informazioni sulle richieste di ridimensionamento in un gruppo di istanze gestite, utilizza uno dei seguenti metodi:

Visualizzare un elenco di richieste di ridimensionamento in un MIG

Per visualizzare un elenco di tutte le richieste di ridimensionamento in un gruppo di istanze gestite, seleziona una delle seguenti opzioni:

Per visualizzare un elenco di tutte le richieste di ridimensionamento in un gruppo di istanze gestite regionale, utilizza gcloud CLI o l'API REST. In caso contrario, per visualizzare un elenco di tutte le richieste di ridimensionamento in un gruppo di istanze gestite a livello di zona, seleziona una delle seguenti opzioni:

Console

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

    Vai a Gruppi di istanze

  2. Nella colonna Nome, fai clic sul nome del gruppo di istanze gestite contenente le richieste di ridimensionamento.

    Si apre la pagina di panoramica del gruppo di istanze gestite.

  3. Nella riga Richieste di ridimensionamento, fai clic su Modifica richieste di ridimensionamento.

    Viene visualizzato il riquadro Richieste di ridimensionamento. Se la colonna Dettagli di una richiesta di ridimensionamento mostra il valore Quota superata o ETA: indefinito, significa che la richiesta ha riscontrato un errore. Puoi fare clic su questi valori per scoprire di più.

    Per ulteriori informazioni sulla risoluzione degli errori, consulta Visualizzare i dettagli di una richiesta di ridimensionamento in questo documento.

gcloud

  • Per visualizzare un elenco di richieste di ridimensionamento in un gruppo di istanze gestite zonale, utilizza il comando instance-groups managed resize-requests list.

    gcloud compute instance-groups managed resize-requests list INSTANCE_GROUP_NAME \
        --zone=ZONE
    
  • Per visualizzare un elenco di richieste di ridimensionamento in un gruppo di istanze gestite a livello di regione, utilizza il comando beta instance-groups managed resize-requests list.

    gcloud beta compute instance-groups managed resize-requests list INSTANCE_GROUP_NAME \
        --region=REGION
    

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome di un MIG con richieste di ridimensionamento accettate, riuscite, annullate o non riuscite.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

L'output è simile al seguente per un gruppo di istanze gestite a livello di zona:

NAME: rr-01
LOCATION: us-central1-a
SCOPE: zone
RESIZE_BY: 5
STATE: SUCCEEDED
REQUESTED_RUN_DURATION: P1D

NAME: rr-02
LOCATION: us-central1-a
SCOPE: zone
RESIZE_BY: 10
STATE: ACCEPTED
REQUESTED_RUN_DURATION: P3D

REST

  • Per visualizzare un elenco di richieste di ridimensionamento in un gruppo di istanze gestite zonale, invia una richiesta GET utilizzando il metodo instanceGroupManagerResizeRequests.list.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests
    
  • Per visualizzare un elenco di richieste di ridimensionamento in un gruppo di istanze gestite a livello di regione, invia una richiesta GET utilizzando il metodo beta.regionInstanceGroupManagerResizeRequests.list.

    GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests
    

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova un MIG con richieste di ridimensionamento accettate, riuscite, annullate o non riuscite.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

  • INSTANCE_GROUP_NAME: il nome di un MIG esistente con richieste di ridimensionamento accettate, riuscite, annullate o non riuscite.

L'output di un gruppo di istanze gestite a livello di zona è simile al seguente:

{
  "kind": "compute#instanceGroupManagerResizeRequestList",
  "id": "projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests",
  "items": [
    {
      "kind": "compute#instanceGroupManagerResizeRequest",
      "id": "4247139565532196982",
      "creationTimestamp": "2024-01-08T07:51:53.034-08:00",
      "name": "rr-01",
      "zone": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a",
      "count": 5,
      "resizeBy": 5,
      "requestedRunDuration": {
        "seconds": "86400",
        "nanos": 0
      },
      "state": "SUCCEEDED",
      "status": {},
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/rr-01",
      "selfLinkWithId": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/4247139565532196982"
    },
    {
      "kind": "compute#instanceGroupManagerResizeRequest",
      "id": "8095866098849525652",
      "creationTimestamp": "2024-01-11T08:04:11.851-08:00",
      "name": "rr-02",
      "zone": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a",
      "count": 10,
      "resizeBy": 10,
      "requestedRunDuration": {
        "seconds": "259200",
        "nanos": 0
      },
      "state": "ACCEPTED",
      "status": {},
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/rr-02",
      "selfLinkWithId": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/8095866098849525652"
    }
  ],
  "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests"
}

Visualizzare i dettagli di una richiesta di ridimensionamento

Puoi visualizzare i dettagli di una richiesta di ridimensionamento per esaminarne la configurazione e, facoltativamente, risolverne i problemi se la richiesta non è ancora andata a buon fine.

Se una richiesta di ridimensionamento accettata non va a buon fine, puoi risolvere il problema controllando il campo status.lastAttempt.error.errors.code nei dettagli della richiesta. I possibili codici di errore sono i seguenti:

  • QUOTA_EXCEEDED: il progetto non dispone della quota per le risorse richieste. Per aumentare la quota del progetto, consulta Richiedere una quota superiore.

  • ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS: le risorse richieste non sono disponibili temporaneamente. Compute Engine ha pianificato la creazione delle risorse richieste e prevede di crearle quando diventano disponibile. Se il campo message contiene Expected time is indefinite, Google consiglia di annullare la richiesta e di provare una o più delle seguenti operazioni:

    • Crea una nuova richiesta di ridimensionamento con un numero inferiore di VM richieste.

    • Utilizza un altro tipo di macchina nel gruppo di istanze gestite e poi crea una nuova richiesta di ridimensionamento. Per utilizzare un tipo di macchina diverso, crea un nuovo modello di istanza, quindi utilizza il modello per creare o aggiornare un gruppo di istanze gestite.

    • Crea una richiesta di ridimensionamento in un gruppo di istanze gestite in una regione o una zona diversa.

Per visualizzare i dettagli di una richiesta di ridimensionamento, seleziona una delle seguenti opzioni:

gcloud

  • Per visualizzare i dettagli di una richiesta di ridimensionamento in un gruppo di istanze gestite zonale, utilizza il comando instance-groups managed resize-requests describe.

    gcloud compute instance-groups managed resize-requests describe INSTANCE_GROUP_NAME \
        --resize-request=RESIZE_REQUEST_NAME \
        --zone=ZONE
    
  • Per visualizzare i dettagli di una richiesta di ridimensionamento in un gruppo di istanze gestite a livello di regione, utilizza il comando beta instance-groups managed resize-requests describe.

    gcloud beta compute instance-groups managed resize-requests describe INSTANCE_GROUP_NAME \
        --resize-request=RESIZE_REQUEST_NAME \
        --region=REGION
    

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome di un gruppo di istanze gestite.

  • RESIZE_REQUEST_NAME: il nome di una richiesta di ridimensionamento di cui vuoi visualizzare i dettagli.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

L'output è simile al seguente per un gruppo di istanze gestite a livello di zona:

creationTimestamp: '2024-09-23T02:27:09.575-07:00'
id: '6386622402379156098'
kind: compute#instanceGroupManagerResizeRequest
name: example-request
requestedRunDuration:
  nanos: 0
  seconds: '86400'
resizeBy: 10
selfLink: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/example-request
selfLinkWithId: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/6386622402379156098
state: ACCEPTED
status:
  lastAttempt:
    error:
      errors:
      - code: QUOTA_EXCEEDED
        message: Quota 'NVIDIA_A100_GPUS' exceeded. Limit: 1500 in region us-central1.
      - code: ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS
        message: There are currently not enough resources available to fulfill the request. Expected time is indefinite.
        - errorDetails:
          - errorInfo:
            - metadatas:
              - estimatedAvailabilityTime: '9999-12-31T23:59:59.999999999Z'
zone: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a

REST

  • Per visualizzare i dettagli di una richiesta di ridimensionamento in un gruppo di istanze gestite zonale, invia una richiesta GET utilizzando il metodo instanceGroupManagerResizeRequests.get.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests/RESIZE_REQUEST_NAME
    
  • Per visualizzare i dettagli di una richiesta di ridimensionamento in un gruppo di istanze gestite a livello di regione, invia una richiesta GET utilizzando il metodo beta.regionInstanceGroupManagerResizeRequests.get.

    GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests/RESIZE_REQUEST_NAME
    

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova il MIG zonale.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

  • INSTANCE_GROUP_NAME: il nome di un gruppo di istanze gestite in cui si trova la richiesta di ridimensionamento.

  • RESIZE_REQUEST_NAME: il nome di una richiesta di ridimensionamento esistente di cui vuoi visualizzare i dettagli.

L'output è simile al seguente:

{
  "kind": "compute#instanceGroupManagerResizeRequest",
  "id": "6386622402379156098",
  "creationTimestamp": "2024-09-23T02:27:09.575-07:00",
  "name": "example-request",
  "zone": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a",
  "resizeBy": 10,
  "requestedRunDuration": {
    "seconds": "86400",
    "nanos": 0
  },
  "state": "SUCCEEDED",
  "status": {
    "lastAttempt": {
      "error": {
        "errors": [
          {
            "code": "QUOTA_EXCEEDED",
            "message": "Quota 'NVIDIA_A100_GPUS' exceeded. Limit: 1500 in region us-central1."
          },
          {
            "code": "ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS",
            "message": "There are currently not enough resources available to fulfill the request. Expected time is indefinite.",
            "errorDetails": [
              {
                "errorInfo":{
                  "metadatas":{
                    "estimatedAvailabilityTime": "9999-12-31T23:59:59.999999999Z"
                  }
                }
              }
            ]
          }
        ]
      }
    }
  },
  "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/example-request",
  "selfLinkWithId": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/6386622402379156098"
}

Annullare le richieste di ridimensionamento in un gruppo di istanze gestite

Puoi annullare le richieste di ridimensionamento in un gruppo di istanze gestite per impedire al gruppo di istanze gestite di tentare di creare il numero di VM richiesto. Puoi annullare solo le richieste di ridimensionamento accettate (ACCEPTED). Dopo aver annullato una richiesta di ridimensionamento, puoi eliminarla o lasciare che Compute Engine la elimini automaticamente dopo 14 giorni.

Per annullare più richieste di ridimensionamento contemporaneamente, utilizza la console Google Cloud o Google Cloud CLI. In caso contrario, per annullare una singola richiesta di ridimensionamento, seleziona una delle seguenti opzioni:

Console

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

    Vai a Gruppi di istanze

  2. Nella colonna Nome, fai clic sul nome del gruppo di istanze gestite contenente le richieste di ridimensionamento.

    Si apre la pagina di panoramica del gruppo di istanze gestite.

  3. Nella riga Richieste di ridimensionamento, fai clic su Modifica richieste di ridimensionamento.

    Viene visualizzato il riquadro Richieste di ridimensionamento.

  4. Seleziona le richieste di ridimensionamento da annullare.

  5. Fai clic su Annulla e poi su Conferma.

gcloud

  • Per annullare le richieste di ridimensionamento in un gruppo di istanze gestite zonale, utilizza il comando instance-groups managed resize-requests cancel.

    gcloud compute instance-groups managed resize-requests cancel INSTANCE_GROUP_NAME \
        --resize-requests=RESIZE_REQUEST_NAMES \
        --zone=ZONE
    
  • Per annullare le richieste di ridimensionamento in un gruppo di istanze gestite a livello di area geografica, utilizza il comando beta instance-groups managed resize-requests cancel.

    gcloud beta compute instance-groups managed resize-requests cancel INSTANCE_GROUP_NAME \
        --resize-requests=RESIZE_REQUEST_NAMES \
        --region=REGION
    

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome di un MIG con richieste di ridimensionamento accettate.

  • RESIZE_REQUEST_NAMES: un elenco separato da virgole di nomi delle richieste di ridimensionamento accettate nel gruppo di istanze gestite a livello di zona specificato. Ad esempio, specifica request-1,request-2.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

REST

  • Per annullare una richiesta di ridimensionamento in un gruppo di istanze gestite zonale, invia una richiesta POST utilizzando il metodo instanceGroupManagerResizeRequests.cancel.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests/RESIZE_REQUEST_NAME/cancel
    
  • Per annullare una richiesta di ridimensionamento in un gruppo di istanze gestite a livello di regione, invia una richiesta POST utilizzando il metodo beta.regionInstanceGroupManagerResizeRequests.cancel.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests/RESIZE_REQUEST_NAME/cancel
    

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova un gruppo di istanze gestite zonale esistente con una richiesta di ridimensionamento accettata.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite.

  • RESIZE_REQUEST_NAME: il nome della richiesta di ridimensionamento da annullare.

Eliminare le richieste di ridimensionamento in un gruppo di istanze gestite

Per impostazione predefinita, Compute Engine elimina automaticamente una richiesta di ridimensionamento 14 giorni dopo aver impostato il relativo stato su uno dei seguenti valori:

  • Riuscita (SUCCEEDED)

  • Non riuscita (FAILED)

  • Annullato (CANCELLED)

Tuttavia, puoi eliminare immediatamente una richiesta di ridimensionamento prima di questa data, come descritto in questa sezione.

L'eliminazione di una richiesta di ridimensionamento andata a buon fine non comporta l'eliminazione delle VM create tramite la richiesta. Il gruppo di istanze gestite elimina automaticamente queste VM al termine della durata di esecuzione richiesta. Tuttavia, se l'esecuzione del job è terminata e non hai più bisogno delle VM, eliminale.

Per eliminare più richieste di ridimensionamento contemporaneamente, utilizza la console Google Cloud o gcloud CLI. In caso contrario, per eliminare una singola richiesta di ridimensionamento, seleziona una delle seguenti opzioni:

Console

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

    Vai a Gruppi di istanze

  2. Nella colonna Nome, fai clic sul nome del gruppo di istanze gestite contenente le richieste di ridimensionamento.

    Si apre la pagina di panoramica del gruppo di istanze gestite.

  3. Nella riga Richieste di ridimensionamento, fai clic su Modifica richieste di ridimensionamento.

    Viene visualizzato il riquadro Richieste di ridimensionamento.

  4. Seleziona le richieste di ridimensionamento da eliminare.

  5. Fai clic su Elimina e poi su Conferma.

gcloud

  • Per eliminare le richieste di ridimensionamento in un gruppo di istanze gestite zonale, utilizza il comando instance-groups managed resize-requests delete.

    gcloud compute instance-groups managed resize-requests delete INSTANCE_GROUP_NAME \
        --resize-requests=RESIZE_REQUEST_NAMES \
        --zone=ZONE
    
  • Per eliminare le richieste di ridimensionamento in un gruppo di istanze gestite a livello di regione, utilizza il comando beta instance-groups managed resize-requests delete.

    gcloud beta compute instance-groups managed resize-requests delete INSTANCE_GROUP_NAME \
        --resize-requests=RESIZE_REQUEST_NAMES \
        --region=REGION
    

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome di un MIG con richieste di ridimensionamento riuscite, non riuscite o annullate.

  • RESIZE_REQUEST_NAMES: un elenco separato da virgole di nomi delle richieste di ridimensionamento da eliminare nel MIG. Ad esempio, specifica request-1,request-2.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

REST

  • Per eliminare una richiesta di ridimensionamento in un gruppo di istanze gestite zonale, invia una richiesta DELETE utilizzando il metodo instanceGroupManagerResizeRequests.delete.

    DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests/RESIZE_REQUEST_NAME
    
  • Per eliminare una richiesta di ridimensionamento in un gruppo di istanze gestite a livello di area geografica, invia una richiesta DELETE utilizzando il metodo beta.regionInstanceGroupManagerResizeRequests.delete.

    DELETE https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests/RESIZE_REQUEST_NAME
    

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova un MIG zonale esistente con richieste di ridimensionamento riuscite, non riuscite o annullate.

  • ZONE: la zona in cui si trova il gruppo di istanze gestite.

  • REGION: la regione in cui si trova il gruppo di istanze gestite.

  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite.

  • RESIZE_REQUEST_NAME: il nome della richiesta di ridimensionamento da eliminare.

Passaggi successivi