Aggiungere flessibilità delle istanze


Questo documento descrive come aggiungere la flessibilità delle istanze che ti consente di impostare più tipi di macchine in un gruppo di istanze gestite (MIG).

Puoi aggiungere flessibilità alle istanze durante la creazione di un gruppo di istanze gestite o modificando un gruppo di istanze gestite esistente. Per aggiungere la flessibilità, configura un criterio di flessibilità delle istanze nel MIG. Il criterio sostituisce il tipo di macchina specificato nel modello di istanza. Ogni volta che il MIG crea un'istanza di macchina virtuale (VM), seleziona automaticamente uno dei tipi di macchine elencati nel criterio in base alla disponibilità delle risorse. Puoi anche assegnare dei ranking agli elenchi di tipi di macchine per indicare la tua preferenza.

Per sapere come funziona la flessibilità dell'istanza in un gruppo di istanze gestite, consulta Informazioni sulla flessibilità dell'istanza.

Prima di iniziare

  • Assicurati di scegliere tipi di macchine supportati nella regione in cui si trova il gruppo di istanze gestite. Per visualizzare i tipi di macchine in una regione, consulta Regioni e zone disponibili.
  • 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 saperne di più, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Crea un gruppo di istanze gestite con flessibilità delle istanze

Prima di creare un gruppo di istanze gestite, devi prima creare un modello di istanza, se non ne hai già uno. Puoi quindi creare un gruppo di istanze gestite con la flessibilità delle istanze per eseguire l'override del tipo di macchina specificato nel modello di istanza.

Crea un gruppo di istanze gestite con flessibilità delle istanze in uno dei seguenti modi:

Creare un gruppo di istanze gestite con più tipi di macchine

Console

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

    Vai a Gruppi di istanze

  2. Fai clic su Crea gruppo di istanze.

  3. Nel campo Nome, inserisci un nome per il gruppo di istanze gestite.

  4. Nell'elenco Modello di istanza, seleziona il modello di istanza che vuoi utilizzare per il gruppo di istanze gestite.

  5. Prima di poter specificare il Numero di istanze e aggiungere Selezioni di istanze, devi svolgere i seguenti passaggi:

    1. Imposta una località nel seguente modo:

      1. Scorri fino alla sezione Località e seleziona Più zone.

      2. Nei menu a discesa Regioni e Zone, seleziona una regione e le zone in cui vuoi creare le VM nel gruppo di istanze gestite. Se hai selezionato un modello di istanza regionale, la regione del modello viene selezionata per impostazione predefinita.

      3. Nel campo Forma di distribuzione di destinazione, seleziona Bilanciata o Qualsiasi zona singola.

      4. Nella finestra di dialogo visualizzata, fai clic su Disattiva la ridistribuzione delle istanze.

    2. Elimina la configurazione della scalabilità automatica nel seguente modo:

      1. Nella sezione Scalabilità automatica, fai clic su Elimina configurazione della scalabilità automatica nel menu a discesa Modalità di scalabilità automatica.

      2. Nella finestra di dialogo che si apre, fai clic su Elimina.

    3. Scorri fino al campo Numero di istanze.

  6. Nel campo Numero di istanze, specifica il numero di VM che vuoi inserire nel gruppo.

  7. Nella sezione Selezioni di istanze, fai clic su Aggiungi selezioni di istanze.

    Si apre la finestra Selezioni istanze.

    1. Fai clic su Aggiungi selezione delle istanze.

    2. Nella sezione Selezione della nuova istanza:

      1. Nel campo Nome, inserisci un nome per la selezione dell'istanza.

      2. Nella sezione Tipi di macchine, fai clic su Aggiungi tipo di macchina, seleziona un tipo di macchina da aggiungere alla selezione delle istanze e poi fai clic su Fine.

        Ripeti questo passaggio per ogni tipo di macchina che vuoi aggiungere alla selezione delle istanze.

      3. Dopo aver aggiunto i tipi di macchine alla selezione delle istanze, fai clic su Fine.

  8. Nella finestra Selezioni delle istanze, fai clic su Fine.

  9. Lascia invariate le impostazioni predefinite degli altri campi o modificale in base alle tue esigenze.

  10. Fai clic su Crea.

gcloud

Per creare un gruppo di istanze gestite a livello di regione con più tipi di macchine, utilizza il comando beta instance-groups managed create come segue:

gcloud beta compute instance-groups managed create INSTANCE_GROUP_NAME \
    --region REGION \
    --size TARGET_SIZE \
    --template INSTANCE_TEMPLATE \
    --target-distribution-shape SHAPE \
    --instance-redistribution-type none \
    --instance-selection-machine-types MACHINE_TYPE,MACHINE_TYPE,...

I gruppi di istanze gestite zonali non supportano la flessibilità delle istanze. Tuttavia, se vuoi creare un gruppo di istanze gestite in una singola zona, imposta la forma di distribuzione di destinazione su any-single-zone. Inoltre, se vuoi una zona specifica, utilizza la forma di distribuzione any-single-zone e includi il flag --zones ZONE.

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite.
  • REGION: la regione in cui vuoi creare il gruppo di istanze gestite.
  • TARGET_SIZE: il numero di VM che vuoi che il MIG crei e gestisca.
  • INSTANCE_TEMPLATE: il nome del modello di istanza.
  • SHAPE: la forma di distribuzione target. Il valore può essere balanced o any-single-zone. Le altre forme di distribuzione target non sono supportate.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite, ad esempio n1-standard-16,n2-standard-16,e2-standard-16.

REST

Per creare un gruppo di istanze gestite a livello di regione con più tipi di macchine, invia una richiesta POST al metodo regionInstanceGroupManagers.insert beta.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers

{
  "name": "INSTANCE_GROUP_NAME",
  "targetSize": TARGET_SIZE,
  "instanceTemplate": "INSTANCE_TEMPLATE_URL",
  "distributionPolicy": {
    "targetShape": "SHAPE"
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2",
          ...
        ]
      }
    }
  }
}

I gruppi di istanze gestite zonali non supportano la flessibilità delle istanze. Tuttavia, se vuoi creare un gruppo di istanze gestite in una singola zona, imposta la forma di distribuzione di destinazione su ANY_SINGLE_ZONE. Inoltre, se vuoi una zona specifica, utilizza la forma di distribuzione ANY_SINGLE_ZONE e includi il campo distributionPolicy.zones[].zone nella richiesta.

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • REGION: la regione in cui vuoi creare il gruppo di istanze gestite.
  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite.
  • TARGET_SIZE: il numero di VM che vuoi che il MIG crei e gestisca.
  • INSTANCE_TEMPLATE_URL: l'URL del modello di istanza.
  • SHAPE: la forma di distribuzione target. Il valore può essere BALANCED o ANY_SINGLE_ZONE. Le altre forme di distribuzione target non sono supportate.
  • INSTANCE_SELECTION: il nome dell'elenco di tipi di macchine.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite, ad esempio "n1-standard-16","n2-standard-16","e2-standard-16".

Creare un gruppo di istanze gestite con più tipi di macchine e preferenze

Console

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

    Vai a Gruppi di istanze

  2. Fai clic su Crea gruppo di istanze.

  3. Nel campo Nome, inserisci un nome per il gruppo di istanze gestite.

  4. Nell'elenco Modello di istanza, seleziona il modello di istanza che vuoi utilizzare per il gruppo di istanze gestite.

  5. Prima di poter specificare il Numero di istanze e aggiungere Selezioni di istanze, devi svolgere i seguenti passaggi:

    1. Imposta una località nel seguente modo:

      1. Scorri fino alla sezione Località e seleziona Più zone.

      2. Nei menu a discesa Regioni e Zone, seleziona una regione e le zone in cui vuoi creare le VM nel gruppo di istanze gestite. Se hai selezionato un modello di istanza regionale, la regione del modello viene selezionata per impostazione predefinita.

      3. Nel campo Forma di distribuzione di destinazione, seleziona Bilanciata o Qualsiasi zona singola.

      4. Nella finestra di dialogo visualizzata, fai clic su Disattiva la ridistribuzione delle istanze.

    2. Elimina la configurazione della scalabilità automatica nel seguente modo:

      1. Nella sezione Scalabilità automatica, fai clic su Elimina configurazione della scalabilità automatica nel menu a discesa Modalità di scalabilità automatica.

      2. Nella finestra di dialogo che si apre, fai clic su Elimina.

    3. Scorri fino al campo Numero di istanze.

  6. Nel campo Numero di istanze, specifica il numero di VM che vuoi inserire nel gruppo.

  7. Nella sezione Selezioni di istanze, fai clic su Aggiungi selezioni di istanze.

    Si apre la finestra Selezioni istanze. Ripeti i seguenti passaggi per ogni selezione di istanze che vuoi aggiungere al MIG.

    1. Fai clic su Aggiungi selezione delle istanze.

    2. Nella sezione Selezione della nuova istanza:

      1. Nel campo Nome, inserisci un nome per la selezione delle istanze.

      2. Nel campo Rank (Classifica), inserisci l'ordine di preferenza tra le selezione di istanze che aggiungi per il gruppo di istanze gestite.

      3. Nella sezione Tipi di macchine, fai clic su Aggiungi tipo di macchina, seleziona un tipo di macchina da aggiungere alla selezione delle istanze e poi fai clic su Fine.

        Ripeti questo passaggio per ogni tipo di macchina che vuoi aggiungere alla selezione delle istanze.

      4. Dopo aver aggiunto i tipi di macchine alla selezione delle istanze, fai clic su Fine.

  8. Dopo aver completato l'aggiunta delle selezioni delle istanze, fai clic su Fine.

  9. Lascia invariate le impostazioni predefinite degli altri campi o modificale in base alle tue esigenze.

  10. Fai clic su Crea.

gcloud

Per creare un gruppo di istanze gestite a livello di regione con più tipi di macchine e preferenze, utilizza il comando beta instance-groups managed create.

gcloud beta compute instance-groups managed create INSTANCE_GROUP_NAME \
    --region REGION \
    --size TARGET_SIZE \
    --template INSTANCE_TEMPLATE \
    --target-distribution-shape SHAPE \
    --instance-redistribution-type none \
    --instance-selection "name=INSTANCE_SELECTION_1,machine-type=MACHINE_TYPE_1,machine-type=MACHINE_TYPE_2,rank=RANK_1" \
    --instance-selection "name=INSTANCE_SELECTION_2,machine-type=MACHINE_TYPE_3,machine-type=MACHINE_TYPE_4,rank=RANK_2"

I gruppi di istanze gestite zonali non supportano la flessibilità delle istanze. Tuttavia, se vuoi creare un gruppo di istanze gestite in una singola zona, imposta la forma di distribuzione di destinazione su any-single-zone. Inoltre, se vuoi una zona specifica, utilizza la forma di distribuzione any-single-zone e includi il flag --zones ZONE.

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite.
  • REGION: la regione in cui vuoi creare il gruppo di istanze gestite.
  • TARGET_SIZE: il numero di VM che vuoi che il MIG crei e mantenga.
  • INSTANCE_TEMPLATE: il nome del modello di istanza.
  • SHAPE: la forma di distribuzione target. Il valore può essere balanced o any-single-zone. Le altre forme di distribuzione target non sono supportate.
  • INSTANCE_SELECTION: il nome dell'elenco dei tipi di macchine. Puoi aggiungere più elenchi con preferenze diverse.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite.

REST

Per creare un gruppo di istanze gestite a livello di regione con più tipi di macchine, invia una richiesta POST al metodo regionInstanceGroupManagers.insert beta.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers

{
  "name": "INSTANCE_GROUP_NAME",
  "targetSize": TARGET_SIZE,
  "instanceTemplate": "INSTANCE_TEMPLATE_URL",
  "distributionPolicy": {
    "targetShape": "SHAPE"
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION_1": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2",
          ...
        ],
        "rank": RANK_1
      },
      "INSTANCE_SELECTION_2": {
        "machineTypes": [
          "MACHINE_TYPE_3",
          "MACHINE_TYPE_4",
          ...
        ],
        "rank": RANK_2
      },
      ...
    }
  }
}

I gruppi di istanze gestite zonali non supportano la flessibilità delle istanze. Tuttavia, se vuoi creare un MIG in una singola zona, imposta la forma di distribuzione di destinazione su ANY_SINGLE_ZONE. Inoltre, se vuoi una zona specifica, utilizza la forma di distribuzione ANY_SINGLE_ZONE e includi il campo distributionPolicy.zones[].zone nella richiesta.

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • REGION: la regione in cui vuoi creare il gruppo di istanze gestite.
  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite.
  • TARGET_SIZE: il numero di VM che vuoi che il MIG crei e gestisca.
  • INSTANCE_TEMPLATE_URL: l'URL del modello di istanza.
  • SHAPE: la forma di distribuzione target. Il valore può essere BALANCED o ANY_SINGLE_ZONE.
  • ZONE: la zona in cui vuoi creare il gruppo di istanze gestite. Utilizza questo campo se vuoi creare un gruppo di istanze gestite a livello di regione in una determinata zona. In caso contrario, puoi saltare questo campo.
  • INSTANCE_SELECTION: il nome dell'elenco di tipi di macchine. Puoi aggiungere più elenchi con preferenze diverse.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite.
  • RANK: il numero che rappresenta l'ordine di preferenza. Un valore più basso indica una preferenza più alta.

Aggiungere la flessibilità dell'istanza a un gruppo di istanze gestite esistente

Puoi aggiungere flessibilità delle istanze a un gruppo MIG esistente. Se il gruppo di istanze gestite contiene già VM, devi rimuoverle ridimensionando il gruppo di istanze gestite a 0. Dopodiché puoi impostare più tipi di macchine nel gruppo MIG. Puoi anche impostare preferenze per determinati tipi di macchine.

Se vuoi aggiungere una selezione di istanze a un criterio di flessibilità dell'istanza esistente, consulta Modificare la configurazione della flessibilità dell'istanza.

Impostare più tipi di macchine

Console

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

    Vai a Gruppi di istanze

  2. Fai clic sul nome del gruppo di istanze gestite in cui vuoi impostare più tipi di macchine.

  3. Fai clic su Modifica.

  4. Nel campo Numero di istanze, se il numero non è già 0, impostalo su 0.

  5. Nella sezione Selezioni di istanze, fai clic su Aggiungi selezioni di istanze.

    Si apre la finestra Selezioni istanze.

    1. Fai clic su Aggiungi selezione delle istanze.

    2. Nella sezione Selezione della nuova istanza:

      1. Nel campo Nome, inserisci un nome per la selezione dell'istanza.

      2. Nella sezione Tipi di macchine, fai clic su Aggiungi tipo di macchina, seleziona un tipo di macchina da aggiungere alla selezione delle istanze e poi fai clic su Fine.

        Ripeti questo passaggio per ogni tipo di macchina che vuoi aggiungere alla selezione delle istanze.

      3. Dopo aver aggiunto i tipi di macchine alla selezione delle istanze, fai clic su Fine.

  6. Nella finestra Selezioni delle istanze, fai clic su Fine.

  7. Fai clic su Salva.

gcloud

Per impostare più tipi di macchine in un gruppo di istanze gestite, utilizza il comando beta instance-groups managed update.

gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \
    --region REGION \
    --size 0 \
    --instance-selection-machine-types MACHINE_TYPE,MACHINE_TYPE,...

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite in cui vuoi aggiungere la flessibilità delle istanze.
  • REGION: la regione in cui si trova il gruppo di istanze gestite.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite, ad esempio n1-standard-16,n2-standard-16,e2-standard-16.

REST

Per impostare più tipi di macchine in un gruppo di istanze gestite, invia una richiesta PATCH al metodo regionInstanceGroupManagers.patch beta.

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "targetSize": 0,
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
    "INSTANCE_SELECTION": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2"
          ...
        ]
      }
    }
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • REGION: la regione in cui si trova il gruppo di istanze gestite.
  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite in cui vuoi aggiungere la flessibilità delle istanze.
  • INSTANCE_SELECTION: un nome per l'elenco di tipi di macchine.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite, ad esempio "n1-standard-16","n2-standard-16","e2-standard-16".
  • RANK: il numero che rappresenta l'ordine di preferenza. Un valore più basso indica una preferenza più alta.

Impostare più tipi di macchine e preferenze

Console

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

    Vai a Gruppi di istanze

  2. Fai clic sul nome del gruppo di istanze gestite in cui vuoi impostare più tipi di macchine.

  3. Fai clic su Modifica.

  4. Nel campo Numero di istanze, se il numero non è già 0, impostalo su 0.

  5. Nella sezione Selezioni di istanze, fai clic su Aggiungi selezioni di istanze.

    Si apre la finestra Selezioni istanze. Ripeti i seguenti passaggi per ogni selezione di istanze che vuoi aggiungere al MIG.

    1. Fai clic su Aggiungi selezione delle istanze.

    2. Nella sezione Selezione della nuova istanza:

      1. Nel campo Nome, inserisci un nome per la selezione delle istanze.

      2. Nel campo Rank (Classifica), inserisci l'ordine di preferenza tra le selezione di istanze che aggiungi per il gruppo di istanze gestite.

      3. Nella sezione Tipi di macchine, fai clic su Aggiungi tipo di macchina, seleziona un tipo di macchina da aggiungere alla selezione delle istanze e poi fai clic su Fine.

        Ripeti questo passaggio per ogni tipo di macchina che vuoi aggiungere alla selezione delle istanze.

      4. Dopo aver aggiunto i tipi di macchine alla selezione delle istanze, fai clic su Fine.

  6. Dopo aver completato l'aggiunta delle selezioni delle istanze, fai clic su Fine.

  7. Fai clic su Salva.

gcloud

Per impostare più tipi di macchine con preferenze in un gruppo di istanze gestite, utilizza il comando beta instance-groups managed update

gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \
    --region REGION \
    --size 0 \
    --instance-selection "name=INSTANCE_SELECTION_1,machine-type=MACHINE_TYPE_1,machine-type=MACHINE_TYPE_2,rank=RANK_1" \
    --instance-selection "name=INSTANCE_SELECTION_2,machine-type=MACHINE_TYPE_3,machine-type=MACHINE_TYPE_4,rank=RANK_2"

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite in cui vuoi aggiungere la flessibilità delle istanze.
  • REGION: la regione in cui si trova il gruppo di istanze gestite.
  • INSTANCE_SELECTION: il nome dell'elenco dei tipi di macchine. Puoi aggiungere più elenchi con preferenze diverse.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite.

REST

Per impostare più tipi di macchine con preferenze in un gruppo di istanze gestite, utilizza il metodo beta regionInstanceGroupManagers.patch.

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "targetSize": 0,
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION_1": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2"
        ],
        "rank": RANK_1
      },
      "INSTANCE_SELECTION_2": {
        "machineTypes": [
          "MACHINE_TYPE_3",
          "MACHINE_TYPE_4"
        ],
        "rank": RANK_2
      }
    }
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • REGION: la regione in cui si trova il gruppo di istanze gestite.
  • INSTANCE_GROUP_NAME: il nome del gruppo di istanze gestite.
  • INSTANCE_SELECTION: il nome dell'elenco di tipi di macchine. Puoi aggiungere più elenchi con preferenze diverse.
  • MACHINE_TYPE: i tipi di macchine da configurare nel gruppo di istanze gestite.

Passaggi successivi