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


Questo documento descrive come creare un gruppo di istanze gestite con flessibilità dell'istanza che ti consente di specificare più tipi di macchine nel gruppo di istanze gestite.

La flessibilità dell'istanza aiuta a migliorare l'ottenimento delle risorse, in particolare per di applicazioni che possono operare su diversi tipi di macchina e che richiedono su larga scala o hardware con domanda elevata. Per ulteriori informazioni, consulta Informazioni sulla flessibilità delle istanze.

Puoi anche leggere altre informazioni scenari di base per la creazione di un gruppo di istanze gestite.

Prima di iniziare

  • Crea un modello di istanza, necessario per creare un modello gruppo di istanze gestite.
  • Se non l'hai già 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 eseguire l'autenticazione Compute Engine come segue.

    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, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Crea un gruppo di istanze gestite con più tipi di macchina

gcloud

Per creare un gruppo di istanze gestite a livello di regione con più tipi di macchina, utilizza comando instance-groups managed create beta 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 di zona non supportano la flessibilità delle istanze. Tuttavia, se vuoi creare un gruppo di istanze gestite in una zona singola, imposta la forma di distribuzione target 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 a cui vuoi che il gruppo di istanze gestite per creare e mantenere.
  • INSTANCE_TEMPLATE: il nome del modello di istanza.
  • SHAPE: forma di distribuzione di destinazione. Il valore può essere balanced o any-single-zone. Le altre forme di distribuzione target non sono supportate.
  • MACHINE_TYPE: i tipi di macchina che vuoi per la configurazione 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: forma di distribuzione di destinazione. Il valore può essere BALANCED o ANY_SINGLE_ZONE. Le altre forme di distribuzione di destinazione non supportati.
  • INSTANCE_SELECTION: il nome dell'elenco di tipi di macchine virtuali.
  • MACHINE_TYPE: i tipi di macchina che vuoi per la configurazione nel gruppo di istanze gestite, ad esempio "n1-standard-16","n2-standard-16","e2-standard-16".

Se vuoi configurare la flessibilità dell'istanza con la preferenza per alcune macchine disponibili, puoi utilizzare i ranking. Per ulteriori informazioni, consulta Creare un gruppo di istanze gestite con più tipi di macchine e preferenze.

Passaggi successivi