Richtlinien für gestreute Platzierung erstellen und auf VMs anwenden


In diesem Dokument wird erläutert, wie Sie eine Richtlinie für verteilte Platzierung erstellen und auf eine oder mehrere VM-Instanzen anwenden, um die Zuverlässigkeit zu verbessern.

In einer Richtlinie für verteilte Platzierungen ist angegeben, dass Ihre VMs physisch weit voneinander entfernt sein sollen, indem sie in verschiedenen Verfügbarkeitsdomains platziert werden. Eine Verfügbarkeitsdomain ist eine isolierte, separate Hardware in einem Rechenzentrum mit separater Stromversorgung, Kühlung und Netzwerkquelle. Mit einer Richtlinie für verteilte Platzierungen können Sie die Auswirkungen eines isolierten Hardwarefehlers oder eines Wartungsereignisses auf alle VMs reduzieren.

Hinweise

  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.

    Select the tab for how you plan to use the samples on this page:

    gcloud

    1. Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

        Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

        gcloud init

      Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.

Erforderliche Rollen

Um die Berechtigungen zu erhalten, die Sie zum Erstellen und Anwenden einer Richtlinie für verteilte Platzierung auf VMs benötigen, bitten Sie Ihren Administrator, Ihnen die Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) IAM-Rolle für Ihr Projekt zuzuweisen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Erstellen und Anwenden einer Richtlinie für gestreute Platzierung auf VMs erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um eine Richtlinie für verteilte Platzierung zu erstellen und auf VMs anzuwenden:

  • Zur Erstellung von Platzierungsrichtlinien: compute.resourcePolicies.create für das Projekt
  • Zur Anwendung einer Platzierungsrichtlinie auf vorhandene VMs an: compute.instances.addResourcePolicies für das Projekt
  • Zum Erstellen von VMs:
    • compute.instances.create für das Projekt
    • Zur Erstellung der VM mit einem benutzerdefinierten Image: compute.images.useReadOnly für das Image
    • Zur Erstellung der VM mithilfe eines Snapshots: compute.snapshots.useReadOnly für den Snapshot
    • Zur Erstellung der VM mithilfe einer Instanzvorlage: compute.instanceTemplates.useReadOnly für die Instanzvorlage
    • Um der VM ein Legacy-Netzwerk zuzuweisen: compute.networks.use für das Projekt
    • Zum Festlegen einer statische IP-Adresse für die VM: compute.addresses.use für das Projekt
    • Zur Zuweisung einer externen IP-Adresse zur VM bei Verwendung eines Legacy-Netzwerks: compute.networks.useExternalIp für das Projekt
    • Um ein Subnetz für die VM anzugeben: compute.subnetworks.use für das Projekt oder für das ausgewählte Subnetz
    • Um der VM eine externe IP-Adresse zuzuweisen, wenn Sie ein VPC-Netzwerk verwenden: compute.subnetworks.useExternalIp für das Projekt oder für das ausgewählte Subnetz
    • Um die Metadaten der VM-Instanz für die VM festzulegen: compute.instances.setMetadata für das Projekt
    • Um Tags für die VM festzulegen: compute.instances.setTags für die VM
    • Um Labels für die VM festzulegen: compute.instances.setLabels für die VM
    • Um ein Dienstkonto festzulegen, das die VM verwenden soll: compute.instances.setServiceAccount für die VM
    • Um ein neues Laufwerk für die VM zu erstellen: compute.disks.create für das Projekt
    • Um ein vorhandenes Laufwerk im Lese- oder Lese‑/Schreibmodus anzuhängen: compute.disks.use für das Laufwerk
    • Um ein vorhandenes Laufwerk im Lesemodus anzuhängen: compute.disks.useReadOnly für das Laufwerk
  • Um eine Instanzvorlage zu erstellen: compute.instanceTemplates.create für das Projekt
  • Um eine regionale oder zonal verwaltete Instanzgruppe (Managed Instance Group, MIG) zu erstellen: compute.instanceGroupManagers.create für das Projekt

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Richtlinie für die Richtlinie für verteilte Platzierung erstellen

Beim Erstellen einer Richtlinie für verteilte Platzierung können Sie bis zu acht Verfügbarkeitsdomains angeben, in denen Ihre VMs platziert werden sollen. Sofern Sie die Anwendung der Richtlinie für verteilte Platzierung auf Ihren VMs nicht testen möchten, empfiehlt Google Cloud, zwei oder mehr Verfügbarkeitsdomains anzugeben. Dadurch wird das Risiko minimiert, dass alle Ihre VMs von einem einzelnen Hardwarefehler oder einem Wartungsereignis beeinträchtigt werden.

Wählen Sie eine der folgenden Optionen aus, um eine Richtlinie für verteilte Platzierung zu erstellen:

gcloud

Verwenden Sie zum Erstellen einer Richtlinie für gestreute platzierungen den Befehl gcloud compute resource-policies create group-placement mit dem Flag --availability-domain-count.

gcloud compute resource-policies create group-placement POLICY_NAME \
    --availability-domain-count=DOMAIN_COUNT \
    --region=REGION

Ersetzen Sie Folgendes:

  • POLICY_NAME: der Name der zu erstellenden Richtlinie für gestreute Platzierung.

  • DOMAIN_COUNT: die eindeutige Anzahl der Verfügbarkeitsdomains, in denen Sie VMs platzieren möchten. Der Wert muss zwischen 1 und 8 liegen.

  • REGION: Die Region, in der die Policy erstellt werden soll.

REST

Senden Sie zum Erstellen einer Richtlinie für gestreute Platzierung eine POST-Anfrage an die Methode resourcePolicies.insert. Geben Sie im Anfragetext das Feld availabilityDomainCount an.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies

{
  "name": "POLICY_NAME",
  "groupPlacementPolicy": {
    "availabilityDomainCount": DOMAIN_COUNT
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem Sie die Richtlinie erstellen möchten.

  • REGION: Die Region, in der Sie die Richtlinie erstellen möchten.

  • POLICY_NAME: der Name der zu erstellenden Richtlinie für gestreute Platzierung.

  • DOMAIN_COUNT: die eindeutige Anzahl der Verfügbarkeitsdomains, in denen Sie VMs platzieren möchten. Der Wert muss zwischen 1 und 8 liegen.

Richtlinien für gestreute Platzierungen anwenden

Sie können eine Richtlinie für gestreute Platzierungen auf eine vorhandene VM oder beim Erstellen von VMs, Instanzvorlagen oder verwaltete Instanzgruppe anwenden.

Wählen Sie eine der folgenden Methoden, um eine Compute Engine-Ressource zu erstellen, die eine Richtlinie für gestreute platzierungen angibt, oder die Richtlinie für gestreute platzierungen auf eine vorhandene VM anzuwenden:

Richtlinie für verteilte Platzierungen auf eine vorhandene VM anwenden

Prüfen Sie Folgendes, bevor Sie eine Richtlinie für verteilte Platzierungen auf eine vorhandene VM anwenden:

  • Wenn Ihre Richtlinie für verteilte Platzierungen zwei oder mehr Verfügbarkeitsdomains hat, können Sie sie einer VM hinzufügen, ohne die VM zu beenden. Wenn Ihre Richtlinie für die verteilte Platzierung nur eine Domain angibt, müssen Sie zuerst die VM beenden, bevor Sie die Platzierungsrichtlinie auf sie anwenden.

  • Die VM und die Richtlinie für verteilte Platzierung müssen sich in derselben Region befinden. Beispiel: Wenn sich die Platzierungsrichtlinie in der Region us-central1 befindet, muss sich die VM in einer Zone in us-central1 befinden. Wenn Sie eine VM in eine andere Region migrieren müssen, finden Sie weitere Informationen in VM zwischen Zonen oder Regionen verschieben.

Andernfalls schlägt das Anwenden der Richtlinie für verteilte Platzierung auf die VM fehl. Wenn die VM bereits eine Platzierungsrichtlinie vorgibt und Sie diese ersetzen möchten, lesen Sie stattdessen den Abschnitt Platzierungsrichtlinie in einer VM ersetzen.

Wählen Sie eine der folgenden Optionen aus, um eine Richtlinie für verteilte Platzierungen auf eine vorhandene VM anzuwenden:

gcloud

Verwenden Sie den Befehl gcloud compute instances add-resource-policies mit dem Flag --resource-policies, um eine Richtlinie für gestreute Platzierung auf eine vorhandene VM anzuwenden.

gcloud compute instances add-resource-policies VM_NAME \
    --resource-policies=POLICY_NAME \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • VM_NAME: Der Name einer vorhandenen VM.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

  • ZONE: Zone, in der sich die VM befindet. Sie muss sich in der Region befinden, in der sich die Richtlinie für gestreute Platzierungen befindet.

REST

Senden Sie eine POST-Anfrage an die Methode instances.addResourcePolicies, um eine Richtlinie für gestreute Platzierung auf eine vorhandene VM anzuwenden. Geben Sie im Anfragetext das Feld resourcePolicies an.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/addResourcePolicies

{
  "resourcePolicies": [
    "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
  ]
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem sich die Richtlinie für gestreute Platzierung und die VM befinden.

  • ZONE: Zone, in der sich die VM befindet. Sie muss sich in der Region befinden, in der sich die Richtlinie für gestreute Platzierungen befindet.

  • VM_NAME: Der Name einer vorhandenen VM.

  • REGION: die Region, in der sich die Richtlinie für verteilte Platzierung befindet.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

VM mit einer Richtlinie für verteilte Platzierungen erstellen

Sie können eine VM mit einer Richtlinie für verteilte Platzierungen nur in einer Zone innerhalb der Region der Platzierungsrichtlinie erstellen.

Wählen Sie eine der folgenden Optionen aus, um eine VM zu erstellen, die eine Richtlinie für verteilte Platzierungen angibt:

gcloud

Verwenden Sie zum Erstellen einer VM mit einer Richtlinie für verteilte Platzierung den Befehl gcloud compute instances create mit dem Flag --resource-policies.

gcloud compute instances create VM_NAME \
    --machine-type=MACHINE_TYPE \
    --resource-policies=POLICY_NAME \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • VM_NAME: Name der zu erstellenden VM.

  • MACHINE_TYPE: Maschinentyp für die VM.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

  • ZONE: Die Zone, in der die VM erstellt werden soll.

REST

Senden Sie zum Erstellen einer VM, die eine Richtlinie für gestreute Platzierung angibt, eine POST-Anfrage an die Methode instances.insert. Geben Sie im Anfragetext das Feld resourcePolicies an.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
  "name": "VM_NAME",
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "resourcePolicies": [
    "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
  ]
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem sich die Richtlinie für gestreute Platzierung befindet.

  • ZONE: Die Zone, in der die VM erstellt werden soll und in der sich der Maschinentyp befindet. Sie können nur Maschinentypen angeben, die in der Region der Richtlinie für verteilte Platzierung verfügbar sind.

  • VM_NAME: Name der zu erstellenden VM.

  • MACHINE_TYPE: Maschinentyp für die VM.

  • REGION: die Region, in der sich die Richtlinie für verteilte Platzierung befindet.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

Weitere Informationen zu den Konfigurationsoptionen zum Erstellen einer VM finden Sie unter VM-Instanz erstellen und starten

VMs im Bulk mit einer Richtlinie für verteilte Platzierungen erstellen

Sie können VMs im Bulk mit Richtlinien für verteilte Platzierungen nur in der Region erstellen, in der sich die Platzierungsrichtlinie befindet.

Wählen Sie eine der folgenden Optionen aus, um VMs im Bulk zu erstellen, die eine Richtlinie für verteilte Platzierung angeben:

gcloud

Wenn Sie VMs im Bulk erstellen möchten, die eine Richtlinie für verteilte Platzierung angeben, verwenden Sie den Befehl gcloud compute instances bulk create mit dem Flag --resource-policies.

Wenn Sie beispielsweise VMs im Bulk in einer einzelnen Zone erstellen und ein Namensmuster für die VMs angeben möchten, führen Sie den folgenden Befehl aus:

gcloud compute instances bulk create \
    --count=COUNT \
    --machine-type=MACHINE_TYPE \
    --name-pattern=NAME_PATTERN \
    --resource-policies=POLICY_NAME \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • COUNT ist die Anzahl der zu erstellenden VMs.

  • MACHINE_TYPE ist der Maschinentyp für die VMs.

  • NAME_PATTERN ist das Namensmuster für die zu erstellenden VMs. Verwenden Sie das Rautezeichen (#), um es durch eine Zahlenfolge zu ersetzen. Wenn Sie hier beispielsweise vm-# angeben, werden VMs mit den Namen vm-1, vm-2 usw. erstellt, bis die Anzahl der in COUNT angegebenen VMs erreicht ist.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

  • ZONE: Zone, in der die VMs im Bulk erstellt werden sollen.

REST

Wenn Sie VMs im Bulk erstellen möchten, die eine Richtlinie für gestreute Platzierung angeben, erstellen Sie einen POST an die Methode instances.bulkInsert. Geben Sie im Anfragetext das Feld resourcePolicies an.

Wenn Sie beispielsweise VMs im Bulk in einer einzelnen Zone erstellen und ein Namensmuster für die VMs angeben möchten, stellen Sie folgende POST-Anfrage:

POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert

{
  "count": "COUNT",
  "machineType": "MACHINE_TYPE",
  "namePattern": "NAME_PATTERN",
  "instanceProperties": {
    "resourcePolicies": [
      "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
    ]
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem sich die Richtlinie für gestreute Platzierung befindet.

  • ZONE: Zone, in der die VMs im Bulk erstellt werden sollen.

  • COUNT ist die Anzahl der zu erstellenden VMs.

  • MACHINE_TYPE ist der Maschinentyp für die VMs.

  • NAME_PATTERN ist das Namensmuster für die zu erstellenden VMs. Verwenden Sie das Rautezeichen (#), um es durch eine Zahlenfolge zu ersetzen. Wenn Sie hier beispielsweise vm-# angeben, erstellt das VMs mit den Namen vm-1, vm-2 usw., bis die Anzahl der in COUNT angegebenen VMs erreicht ist.

  • REGION: die Region, in der sich die Richtlinie für verteilte Platzierung befindet.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

Weitere Informationen zu den Konfigurationsoptionen zum Erstellen von VMs im Bulk finden Sie unter VMs im Bulk erstellen

Instanzvorlage mit einer Richtlinie für verteilte Platzierungen erstellen

Wenn Sie eine regionale Instanzvorlage erstellen möchten, müssen Sie die Vorlage in der Region erstellen, in der sich auch die Richtlinie für verteilte Platzierungen befindet. Andernfalls schlägt das Erstellen der Instanzvorlage fehl.

Nachdem Sie eine Instanzvorlage erstellt haben, können Sie sie für Folgendes verwenden:

Wählen Sie eine der folgenden Optionen aus, um eine Instanzvorlage zu erstellen, die eine Richtlinie für verteilte Platzierung angibt:

gcloud

Verwenden Sie zum Erstellen einer Instanzvorlage, die eine Richtlinie für verteilte Platzierungen angibt, den Befehl gcloud compute instance-templates create mit dem Flag --resource-policies.

Beispiel: Führen Sie folgenden Befehl aus, um eine globale Instanzvorlage zu erstellen, die eine Richtlinie für verteilte Platzierungen angibt:

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --resource-policies=POLICY_NAME

Ersetzen Sie Folgendes:

  • INSTANCE_TEMPLATE_NAME: Name der Instanzvorlage.

  • MACHINE_TYPE: Maschinentyp für die mithilfe der Instanzvorlage erstellten VMs.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

REST

Senden Sie zum Erstellen einer Instanzvorlage mit einer Richtlinie für gestreute platzierungen eine POST-Anfrage an die Methode instanceTemplates.insert. Geben Sie im Anfragetext das Feld resourcePolicies an.

Wenn Sie beispielsweise eine globale Instanzvorlage erstellen möchten, die eine Richtlinie für verteilte Platzierungen angibt, stellen Sie die folgende POST-Anfrage:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates

{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "disks": [
      {
        "boot": true,
        "mode": "READ_WRITE",
        "type": "PERSISTENT",
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "machineType": "MACHINE_TYPE",
    "networkInterfaces": [
      {
        "accessConfigs": [
          {
            "name": "external-IP",
            "type": "ONE_TO_ONE_NAT"
          }
        ],
        "network": "global/networks/default"
      }
    ],
    "resourcePolicies": [
      "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
    ]
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem sich die Richtlinie für gestreute Platzierung befindet.

  • INSTANCE_TEMPLATE_NAME: Name der Instanzvorlage.

  • Für IMAGE oder IMAGE_FAMILY muss eine der folgenden Optionen angegeben werden:

    • IMAGE ist eine bestimmte Version des Betriebssystem-Images; Beispiel: debian-10-buster-v20200309.

    • IMAGE_FAMILY ist eine Image-Familie. Dies gibt das neueste nicht verworfene Betriebssystem-Image an. Beispiel: Wenn Sie family/debian-10 angeben, wird die aktuelle Version in der Debian 10-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.

  • MACHINE_TYPE: Maschinentyp für die mithilfe der Instanzvorlage erstellten VMs.

  • REGION: die Region, in der sich die Richtlinie für verteilte Platzierung befindet.

  • POLICY_NAME: Name einer vorhandenen Richtlinie für verteilte Platzierung.

Weitere Informationen zu den Konfigurationsoptionen zum Erstellen einer Instanzvorlage finden Sie unter Instanzvorlagen erstellen.

Richtlinie für gestreute Platzierungen auf die VMs in einer verwaltete Instanzgruppe anwenden

Nachdem Sie eine Instanzvorlage erstellt haben, die eine richtlinie für verteilte Platzierung angibt, können Sie mit der Vorlage Folgendes tun:

Wenn Sie eine Richtlinie für gestreute Platzierungen auf eine MIG anwenden möchten, sollten Sie die Richtlinie erstellen und sie auf eine regionale MIG mit Beliebige einzelne Zone als Verteilungsform anwenden. Wenn dann eine regionale MIG durch das Erstellen von VMs horizontal skaliert werden muss, wird die Zone, in der die VMs erstellt werden sollen, basierend auf Ihren Kontingenten und Hardwareanforderungen ausgewählt.

Eine verwaltete Instanzgruppe mit einer Richtlinie für verteilte Platzierungen erstellen

Sie können VMs, die eine Richtlinie für verteilte Platzierung angeben, nur erstellen, wenn sich die VMs in derselben Region wie die Platzierungsrichtlinie befinden.

Wählen Sie eine der folgenden Optionen aus, um eine verwaltete Instanzgruppe mit einer Instanzvorlage zu erstellen, die eine Richtlinie für die verteilte Platzierung angibt:

gcloud

Verwenden Sie den Befehl gcloud compute instance-groups managed create, um eine verwaltete Instanzgruppe mit einer Instanzvorlage zu erstellen, die eine Richtlinie für die verteilte Platzierung angibt.

Beispiel: Um eine regionale verwaltete Instanzgruppe mit Standard-VM-Attributen und der Verteilung any-single-zone zu erstellen, führen Sie folgenden Befehl aus:

gcloud compute instance-groups managed create MIG_NAME \
    --region=REGION \
    --size=SIZE \
    --target-distribution-shape=any-single-zone \
    --template=INSTANCE_TEMPLATE_NAME

Ersetzen Sie Folgendes:

  • MIG_NAME: Name der MIG, die erstellt werden soll.

  • REGION: die Region, in der die MIG erstellt werden soll. Diese muss mit der Region übereinstimmen, in der sich die Richtlinie für gestreute Platzierung befindet.

  • SIZE: die Größe der MIG.

  • INSTANCE_TEMPLATE_NAME: Name einer vorhandenen Instanzvorlage, die eine Richtlinie für verteilte Platzierung angibt.

REST

Senden Sie zum Erstellen einer MIG mit einer Instanzvorlage, die eine Richtlinie für gestreute Platzierung angibt, eine POST-Anfrage an die Methoden instanceGroupManagers.insert oder regionInstanceGroupManagers.insert.

Wenn Sie beispielsweise eine regionale verwaltete Instanzgruppe mit Standard-VM-Attributen und der Verteilungsform any-single-zone erstellen möchten, stellen Sie die folgende POST-Anfrage:

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

{
  "name": "MIG_NAME",
  "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME",
  "targetSize": SIZE,
  "distributionPolicy": {
    "targetShape": "ANY_SINGLE_ZONE"
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem sich die Richtlinie für gestreute Platzierung und die Instanzvorlage befinden, die die Platzierungsrichtlinie angibt.

  • REGION: die Region, in der die MIG erstellt werden soll. Diese muss mit der Region übereinstimmen, in der sich die Richtlinie für gestreute Platzierung befindet.

  • MIG_NAME: Name der MIG, die erstellt werden soll.

  • INSTANCE_TEMPLATE_NAME: Name einer vorhandenen Instanzvorlage, die eine Richtlinie für verteilte Platzierung angibt.

  • SIZE: die Größe der MIG.

Weitere Informationen zu den Konfigurationsoptionen zum Erstellen von MIGs finden Sie unter Grundlegende Szenarien zum Erstellen von MIGs.

Richtlinie für verteilte Platzierungen auf eine vorhandene verwaltete Instanzgruppe anwenden

Sie können eine Richtlinie für kompakte Platzierungen nur auf eine vorhandene verwaltete Instanzgruppe (MIG, Managed Instance Group) anwenden, wenn sich die MIG in derselben Region oder (bei zonalen MIGs) in einer Zone innerhalb derselben Region wie die Platzierungsrichtlinie befindet.

Wählen Sie eine der folgenden Optionen aus, um eine MIG so zu aktualisieren, dass sie eine Instanzvorlage verwendet, die eine Richtlinie für verteilte Platzierung angibt:

gcloud

Verwenden Sie den Befehl gcloud compute instance-groups managed rolling-action start-update, um eine MIG so zu aktualisieren, dass sie eine Instanzvorlage nutzt, die eine Richtlinie für gestreute Platzierung angibt.

Wenn Sie beispielsweise eine regionale MIG so aktualisieren möchten, dass sie eine Instanzvorlage verwendet, die eine Richtlinie für gestreute Platzierung angibt, und die vorhandenen VMs aus der MIG durch neue VMs ersetzen möchten, die die Attribute der Vorlage angeben, führen Sie den folgenden Befehl aus:

gcloud compute instance-groups managed rolling-action start-update MIG_NAME \
    --region=REGION \
    --type=proactive \
    --version=template=INSTANCE_TEMPLATE_NAME

Ersetzen Sie Folgendes:

  • MIG_NAME: der Name einer vorhandenen MIG.

  • REGION: Die Region, in der sich die MIG befindet. Sie können die Richtlinie für gestreute Platzierung nur auf eine MIG in derselben Region anwenden.

  • INSTANCE_TEMPLATE_NAME: Name einer vorhandenen Instanzvorlage, die eine Richtlinie für verteilte Platzierung angibt.

REST

Wenn Sie eine MIG so aktualisieren möchten, dass eine Instanzvorlage verwendet wird, die eine Richtlinie für gestreute Platzierung angibt, und Sie die Attribute der Vorlage und der Platzierungsrichtlinie automatisch auf vorhandene VMs in der MIG anwenden möchten, senden Sie eine PATCH-Anfrage an die Methode instanceGroupManagers.insert oder die Methode regionInstanceGroupManagers.insert.

Wenn Sie beispielsweise eine regionale MIG so aktualisieren möchten, dass sie eine Instanzvorlage verwendet, die eine Richtlinie für gestreute Platzierung angibt, und die vorhandenen VMs aus der MIG durch neue VMs ersetzen möchten, die die Attribute der Vorlage angeben, stellen Sie die folgende Anfrage PATCH:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME

{
  "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME",
  "updatePolicy": {
    "type": "PROACTIVE"
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, das Sie zum Erstellen einer vorhandenen MIG, der Richtlinie für gestreute Platzierung und der Instanzvorlage verwendet haben, die die Richtlinie für gestreute Platzierung angibt.

  • REGION: Die Region, in der sich die MIG befindet. Sie können die Richtlinie für gestreute Platzierung nur auf eine MIG in derselben Region anwenden.

  • MIG_NAME: der Name einer vorhandenen MIG.

  • INSTANCE_TEMPLATE_NAME: Name einer vorhandenen Instanzvorlage, die eine Richtlinie für verteilte Platzierung angibt.

Weitere Informationen zu den Konfigurationsoptionen zum Aktualisieren der VMs in einer MIG finden Sie unter Neue Konfigurationen in VMs in einer MIG aktualisieren und anwenden.

Nächste Schritte