Zustandsorientierte IP-Adressen in MIGs konfigurieren


Durch das Konfigurieren der zustandsorientierten IP-Adressen in einer verwalteten Instanzgruppe (Managed Instance Group, MIG) sorgen Sie dafür, dass IP-Adressen beibehalten werden, wenn VM-Instanzen in der Gruppe automatisch repariert, aktualisiert und neu erstellt werden.

Sie können interne und externe IPv4-Adressen beibehalten. Sie können konfigurieren, dass IP-Adressen automatisch zugewiesen werden, oder jeder VM-Instanz in einer MIG bestimmte IP-Adressen zuweisen.

Hinweise

  • Machen Sie sich damit vertraut, wann zustandsorientierte MIGs verwendet werden und wie zustandsorientierte MIGs funktionieren.
  • 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 wie folgt bei Compute Engine authentifizieren.

    Wählen Sie den Tab für die Verwendung der Beispiele auf dieser Seite aus:

    Console

    Wenn Sie über die Google Cloud Console auf Google Cloud-Dienste und -APIs zugreifen, müssen Sie die Authentifizierung nicht einrichten.

    gcloud

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

      gcloud init
    2. Legen Sie eine Standardregion und -zone fest.

    Terraform

    Wenn Sie die Terraform-Beispiele auf dieser Seite aus einer lokalen Entwicklungsumgebung heraus verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.

    1. Installieren Sie die Google Cloud CLI.
    2. Führen Sie folgenden Befehl aus, um die gcloud CLI zu initialisieren:

      gcloud init
    3. Erstellen Sie lokale Anmeldedaten zur Authentifizierung für Ihr Google-Konto:

      gcloud auth application-default login

    Weitere Informationen: Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

    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

Beschränkungen

Für eine MIG mit zustandsorientierten IP-Adressen gelten die folgenden Einschränkungen:

  • IPv6-Adressen werden nicht unterstützt.

  • Interne IP-Adressen werden in Netzwerken ohne Subnetzwerke nicht unterstützt, z. B. Legacy-Netzwerke.

Für eine MIG mit einer zustandsorientierten Konfiguration – einer zustandsorientierten MIG – gelten folgende Einschränkungen:

  • Sie können Autoscaling nicht verwenden, wenn Ihre MIG eine zustandsorientierte Konfiguration hat.
  • Wenn Sie automatische Rolling Updates verwenden möchten, müssen Sie die Ersetzungsmethode auf RECREATE setzen.
  • Bei zustandsorientierten regionalen MIGs müssen Sie die proaktive Umverteilung deaktivieren. Setzen Sie dafür den Typ für die Umverteilung auf NONE. Damit wird verhindert, dass zustandsorientierte Instanzen durch die automatische zonenübergreifende Umverteilung gelöscht werden.
  • Wenn Sie eine instanzübergreifende Konfiguration zum Überschreiben der Attribute der Instanzvorlage verwenden, können Sie diese Attribute nicht in einer instanzspezifischen Konfiguration und gleichzeitig in der instanzübergreifenden Konfiguration der Gruppe konfigurieren.

Preise

Externe IP-Adressen werden Ihnen gemäß den Netzwerkpreisen in Rechnung gestellt.

Wann werden zustandsorientierte IP-Adressen verwendet?

Das Beibehalten der IP-Adressen von Instanzen ist in folgenden Szenarien hilfreich:

  • Ihre Anwendung erfordert, dass eine IP-Adresse nach der Zuweisung statisch bleibt, z. B. Kafka.
  • Die Konfiguration Ihrer Anwendung hängt von bestimmten IP-Adressen ab, z. B. einem DNS-Server.
  • Nutzer, einschließlich anderer Anwendungen, greifen über eine dedizierte statische IP-Adresse, z. B. einen Dateiserver, auf Ihren Server zu.
  • Sie müssen vorhandene Arbeitslasten migrieren, ohne die Netzwerkkonfiguration zu ändern.

Zustandsorientierte IP-Adressen für alle VMs in einer Gruppe konfigurieren

Das Konfigurieren zustandsorientierter IP-Adressen für alle VMs in einer MIG ist in den folgenden Szenarien hilfreich:

  • Ihre Anwendung erfordert, dass eine IP-Adresse nach der Zuweisung statisch bleibt. Für Ihre Anwendung ist es jedoch nicht erforderlich, bestimmten Instanzen bestimmte IP-Adressen zuzuweisen. IP-Adressen können bei der Instanzerstellung automatisch zugewiesen werden.
  • Ihre Nutzer, einschließlich anderer Anwendungen, greifen über statische IP-Adressen, die Sie nach der Bereitstellung der Anwendung veröffentlichen, auf Ihre Server zu.
  • Sie möchten von der automatischen Reparatur von Instanzen und von automatischen Updates der profitieren und gleichzeitig die statische IP-Adresse beibehalten, die bei der Instanzerstellung automatisch zugewiesen wird.

Wenn Sie statische interne oder externe IP-Adressen für vorhandene und zukünftige VM-Instanzen in der Gruppe verwalten möchten, konfigurieren Sie dies in der zustandsorientierten Richtlinie.

Wenn Sie die zustandsorientierte IP-Adresskonfiguration zur zustandsorientierten Richtlinie der Gruppe hinzufügen, wendet die MIG die Konfiguration so an:

  • Bei neuen Instanzen weist die MIG automatisch statische IP-Adressen zu und reserviert sie.
  • Bei vorhandenen Instanzen bewirbt die MIG genutzte sitzungsspezifischeinterne oderexterne IP-Adressen zu statischen Adressen, indem sie die entsprechenden statischen IP-Adressen reserviert.
  • Bei vorhandenen Instanzen ohne externe IP-Adressen weist die MIG statische IP-Adressen zu und reserviert sie. Die Zugriffskonfiguration wird der entsprechenden Netzwerkschnittstelle mit den folgenden Standardwerten hinzugefügt:

    "accessConfigs": [
      {
        "kind": "compute#accessConfig",
        "name": "External NAT",
        "natIP": "XX.XX.XX.XX",
        "networkTier": "PREMIUM",
        "type": "ONE_TO_ONE_NAT"
      }
    ]
    

Zum Reservieren einer statischen IP-Adresse erstellt die MIG eine Adressressource.

Zustandsorientierte IP-Adressen beim Erstellen der MIG konfigurieren

Verwenden Sie die Google Cloud Console, die gcloud CLI, Terraform oder REST.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zu den Instanzgruppen

  2. Wählen Sie Ihr Projekt aus und klicken Sie auf Weiter.

  3. Klicken Sie auf Instanzgruppe erstellen.

  4. Wählen Sie Neue verwaltete Instanzgruppe (zustandsorientiert) aus.

  5. Geben Sie einen Namen für die Instanzgruppe an.

  6. Wählen Sie eine Instanzvorlage aus.

  7. Geben Sie unter Anzahl der Instanzen an, wie viele Instanzen die verwaltete Instanzgruppe umfassen soll.

  8. Erweitern Sie unter Zustandsorientierte Konfiguration die externe IP-Adresse und die interne IP-Adresse, die Sie als zustandsorientiert festlegen möchten.

    1. Wählen Sie unter Zustandsorientiert die Option Ja aus.
    2. Wählen Sie im Drop-down-Menü Bei endgültiger Instanzlöschung die Aktion aus, die auf der zustandsorientierten IP-Adresse beim Löschen der VM-Instanz ausgeführt werden soll. Folgende Optionen sind verfügbar:
      • IP-Adresse trennen: (Standard). Heben Sie die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
      • Löschen Sie die IP: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.
    3. Klicken Sie nach Fertigstellung der zustandsorientierten Konfiguration auf Fertig.
  9. Klicken Sie auf Erstellen.

gcloud

Geben Sie beim Erstellen einer MIG an, welche IP-Adressen in Netzwerkschnittstellen aus der Instanzvorlage zustandsorientiert sein sollen. Verwenden Sie dafür ein oder mehrere Flags mit dem gcloud compute instance-groups managed create-Befehl:

  • --stateful-internal-ip, um eine interne IP-Adresse einer bestimmten Netzwerkschnittstelle als zustandsorientiert zu markieren.
  • --stateful-external-ip, um eine externe IP-Adresse einer bestimmten Netzwerkschnittstelle als zustandsorientiert zu markieren.
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
    --template INSTANCE_TEMPLATE \
    --size SIZE \
    --instance-redistribution-type NONE \
    --stateful-internal-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE]

Dabei gilt:

  • INSTANCE_GROUP_NAME: Name der MIG, die erstellt werden soll.
  • INSTANCE_TEMPLATE: Name der Instanzvorlage, die beim Erstellen neuer Instanzen verwendet werden soll.
  • SIZE: anfängliche Anzahl von Instanzen, die Sie in dieser Gruppe benötigen.
  • NI_NAME: (Optional) Name der Netzwerkschnittstelle. Wenn nicht angegeben, ist die Option enabled erforderlich und die primäre Netzwerkschnittstelle mit dem Namen nic0 wird standardmäßig angenommen. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie dieses Flag für jede IP-Adresse in jeder Netzwerkschnittstelle angeben.
  • DELETE_RULE: (Optional) Gibt an, was mit der zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • never: (Standardeinstellung) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • on-permanent-instance-deletion: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

Beispiel

Sie müssen eine regionale Gruppe von VM-Instanzen mit statischen internen IP-Adressen für die Standard- und benutzerdefinierten Netzwerke und statische externe IP-Adressen nur für das Standardnetzwerk erstellen. Die Adressen sollten automatisch zugewiesen werden, müssen aber bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen beibehalten werden. Sie speichern die Instanzkonfiguration in einer Instanzvorlage mit dem Namen node-template.

Führen Sie den folgenden Befehl aus, um die Gruppe zu erstellen:

gcloud compute instance-groups managed create example-group \
    --region us-east1 \
    --template node-template \
    --base-instance-name node \
    --instance-redistribution-type NONE \
    --size 3 \
    --stateful-internal-ip interface-name=nic0,auto-delete=on-permanent-instance-deletion
    --stateful-internal-ip interface-name=nic1,auto-delete=on-permanent-instance-deletion
    --stateful-external-ip enabled,auto-delete=on-permanent-instance-deletion

Die internen IP-Adressen innerhalb der Netzwerkschnittstellen nic0 und nic1 und die externe IP-Adresse innerhalb der Netzwerkschnittstelle nic0 sind für alle Instanzen in der Gruppe als zustandsorientiert konfiguriert. Die Gruppe reserviert automatisch statische interne und externe IP-Adressen für jede Instanz. Da das Flag auto-delete auf on-permanent-instance-deletion gesetzt ist, löscht die Gruppe automatisch die Reservierungen statischer IP-Adressen, wenn Sie die zugehörigen Instanzen oder die gesamte Gruppe löschen.

Führen Sie den folgenden Befehl aus, um zu prüfen, ob die internen IP-Adressen innerhalb der Netzwerkschnittstellen nic0 und nic1 und die externe IP-Adresse innerhalb der Netzwerkschnittstelle nic0 als zustandsorientiert konfiguriert sind:

gcloud compute instance-groups managed describe example-group \
    --zone us-east1-c

Die Ausgabe sollte so aussehen:

baseInstanceName: node
...
name: example-group
...
statefulPolicy:
  preservedState:
    internalIPs:
      nic0:
        autoDelete: ON_PERMANENT_INSTANCE_DELETION
      nic1:
        autoDelete: ON_PERMANENT_INSTANCE_DELETION
    externalIPs:
      nic0:
        autoDelete: ON_PERMANENT_INSTANCE_DELETION
...

Sie sehen, dass die zustandsorientierte Richtlinie der Gruppe interne IP-Adressen innerhalb der Netzwerkschnittstellen nic0 und nic1 und externe IP-Adressen innerhalb der Netzwerkschnittstelle nic0 als zustandsorientiert deklariert, und zwar mit der Regel zum Löschen von Reservierungen statischer IP-Adressen beim endgültigen Löschen von Instanzen.

Terraform

Wenn Sie noch keine Instanzvorlage erstellt haben, die den Maschinentyp, das Bootlaufwerk-Image, das Netzwerk und andere VM-Attribute angibt, die Sie für jede VM in Ihrer MIG verwenden möchten, erstellen Sie eine Instanzvorlage

Verwenden Sie beim Erstellen einer MIG einen oder mehrere der folgenden Blöcke, um anzugeben, welche IP-Adressen innerhalb der Netzwerkschnittstellen aus der Instanzvorlage zustandsorientiert sein sollen:

  • stateful_internal_ip, um eine interne IP-Adresse einer bestimmten Netzwerkschnittstelle als zustandsorientiert zu markieren.
  • stateful_external_ip, um eine externe IP-Adresse einer bestimmten Netzwerkschnittstelle als zustandsorientiert zu markieren.

Im folgenden Beispiel werden zustandsorientierte IP-Adressen beim Erstellen einer regionalen MIG konfiguriert: Weitere Informationen zu der im Beispiel verwendeten Ressource finden Sie unter google_compute_region_instance_group_manager-Ressource.

resource "google_compute_region_instance_group_manager" "default" {
  name               = "example-group"
  base_instance_name = "node"
  target_size        = 3
  region             = "us-east1"

  version {
    instance_template = google_compute_instance_template.default.id
    name              = "primary"
  }
  update_policy {
    type                         = "OPPORTUNISTIC"
    minimal_action               = "REFRESH"
    instance_redistribution_type = "NONE"
    max_unavailable_fixed        = 3
  }
  stateful_internal_ip {
    interface_name = "nic0"
    delete_rule    = "ON_PERMANENT_INSTANCE_DELETION"
  }
  stateful_internal_ip {
    interface_name = "nic1"
    delete_rule    = "ON_PERMANENT_INSTANCE_DELETION"
  }
  stateful_external_ip {
    interface_name = "nic0"
    delete_rule    = "ON_PERMANENT_INSTANCE_DELETION"
  }
}

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

REST

Geben Sie beim Erstellen einer MIG an, welche IP-Adressen innerhalb der Netzwerkschnittstellen aus der Instanzvorlage zustandsorientiert sein sollen. Schließen Sie sie im Feld statefulPolicy im Anfragetext der instanceGroupManagers.insert oder regionInstanceGroupManagers.insert-Methode mit ein:

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

{
  "name": "INSTANCE_GROUP_NAME",
  "versions": [
    {
      "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE"
    }
  ],
  "targetSize": SIZE,
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      },
      "externalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      }
    }
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  }
}

Dabei gilt:

  • PROJECT: Projekt-ID für die Anfrage.
  • REGION: Bei regionalen MIGs die Region, in der sich die Gruppe befindet. Ersetzen Sie bei zonalen MIGs regions/REGION durch zones/ZONE und geben Sie die Zone an, in der sich die MIG befindet.
  • NAME: Name der MIG, die erstellt werden soll.
  • INSTANCE_TEMPLATE: Name der Instanzvorlage, die beim Erstellen neuer Instanzen verwendet werden soll.
  • SIZE: anfängliche Anzahl von Instanzen, die Sie in dieser Gruppe benötigen.
  • NI_NAME: (Optional) Name der Netzwerkschnittstelle. Wenn nicht angegeben, ist die Option enabled erforderlich und die primäre Netzwerkschnittstelle mit dem Namen nic0 wird standardmäßig angenommen. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.
  • DELETE_RULE: (Optional) Gibt an, was mit einer zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • NEVER: (Standard) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • ON_PERMANENT_INSTANCE_DELETION: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

Beispiel

Sie müssen eine regionale Gruppe von VM-Instanzen mit statischen internen IP-Adressen für die Standard- und benutzerdefinierten Netzwerke und statische externe IP-Adressen nur für das Standardnetzwerk erstellen. Die Adressen sollten automatisch zugewiesen werden, müssen aber bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen beibehalten werden. Sie speichern die Instanzkonfiguration in einer Instanzvorlage mit dem Namen node-template.

Verwenden Sie zum Erstellen der Gruppe die Methode regionInstanceGroupManagers.insert:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers

{
  "name": "example-group",
  "baseInstanceName": "node",
  "versions": [
    {
      "instanceTemplate": "global/instanceTemplates/node-template"
    }
  ],
  "targetSize": 3,
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" },
        "nic1": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
      "externalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
    }
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  }
}

Die internen IP-Adressen innerhalb der Netzwerkschnittstellen nic0 und nic1 und die externen IP-Adressen innerhalb der Netzwerkschnittstelle nic0 sind für alle Instanzen in der Gruppe als zustandsorientiert konfiguriert. Die Gruppe reserviert automatisch statische interne und externe IP-Adressen für jede Instanz. Da das Feld auto-delete auf ON_PERMANENT_INSTANCE_DELETION gesetzt ist, löscht die Gruppe automatisch die Reservierungen statischer IP-Adressen, wenn Sie zugehörige Instanzen oder die gesamte Gruppe löschen.

Prüfen Sie mit der Methode regionInstanceGroupManagers.get, ob die internen IP-Adressen der Netzwerkschnittstellen nic0 und nic1 sowie externe IPs der Netzwerkschnittstelle nic0 in der zustandsorientierten Richtlinie der neuen regionInstanceGroupManagers-Ressource konfiguriert sind:

GET https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group

Die Antwort enthält die konfigurierte zustandsorientierte Richtlinie:

{
  "name": "example-group",
  "baseInstanceName": "node",
  ...
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" },
        "nic1": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
      "externalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
    }
  }
  ...
}

Sie sehen, dass die zustandsorientierte Richtlinie der Gruppe interne IP-Adressen innerhalb der nic0- und nic1-Netzwerkschnittstellen und externe IP-Adressen innerhalb der nic0-Netzwerkschnittstelle als zustandsorientiert deklariert, und zwar mit der Regel zum Löschen von Reservierungen assoziierter statischer IP-Adressen beim endgültigen Löschen von Instanzen.

Zustandsorientierte Konfiguration für IP-Adressen in einer vorhandenen MIG festlegen und aktualisieren

Wenn Sie eine Arbeitslast in einer zustandslosen MIG (einer MIG ohne zustandsorientierte Konfiguration) ausführen und die Arbeitslast statische IP-Adressen erfordert, können Sie IP-Adressen konfigurieren, die den verwalteten VM-Instanzen bereits zugewiesen wurden, um zustandsorientiert zu werden. Dadurch wird sichergestellt, dass die IP-Adressen Ihrer vorhandenen VMs bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen erhalten bleiben. Sie können die Reservierungen statischer IP-Adressen optional beibehalten, nachdem die Instanzen gelöscht wurden.

Das Konfigurieren einer zustandsorientierten Richtlinie für IP-Adressen in einer vorhandenen MIG ermöglicht Ihnen Folgendes:

  • Sie konfigurieren IP-Adressen für alle vorhandenen und zukünftigen Instanzen in der Gruppe als zustandsorientiert. Dadurch werden die entsprechenden sitzungsspezifischen IP-Adressen aller vorhandenen Instanzen in statische IP-Adressen umgewandelt.
  • Sie aktualisieren die vorhandene zustandsorientierte Konfiguration für IP-Adressen.

Die MIG wendet die aktualisierte Konfiguration in der zustandsorientierten Richtlinie automatisch und asynchron auf alle Instanzen an. Aktualisierungen von IP-Adresskonfigurationen in einer zustandsorientierten Richtlinie wirken sich nicht negativ auf laufende VM-Instanzen aus. Weitere Informationen finden Sie unter Aktualisierungen der zustandsorientierten Richtlinie anwenden.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zu den Instanzgruppen

  2. Klicken Sie auf den Namen der Instanzgruppe, für die Sie zustandsorientierte IP-Adressen angeben möchten.

  3. Klicken Sie auf Bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.

  4. Erweitern Sie unter Zustandsorientierte Konfiguration die externe IP-Adresse und die interne IP-Adresse, die Sie als zustandsorientiert festlegen möchten.

    1. Wählen Sie unter Zustandsorientiert die Option Ja aus.
    2. Wählen Sie im Drop-down-Menü Bei endgültiger Instanzlöschung die Aktion aus, die auf der zustandsorientierten IP-Adresse beim Löschen der VM-Instanz ausgeführt werden soll. Folgende Optionen sind verfügbar:
      • IP-Adresse trennen: (Standard). Heben Sie die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
      • :Löschen Sie die IP Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.
    3. Klicken Sie nach dem Aktualisieren der zustandsorientierten Konfiguration auf Fertig.
    4. Klicken Sie auf Speichern, um die Aktualisierung abzuschließen.

gcloud

Um festzulegen, welche IP-Adressen zustandsorientiert sein sollen, oder um die zustandsorientierte IP-Konfiguration für ein vorhandenes MIG zu aktualisieren, verwenden Sie ein oder mehrere --stateful-internal-ip- oder--stateful-external-ip-Flags mit dem gcloud compute instance-groups managed update-Befehl.

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --stateful-internal-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE]

Dabei gilt:

  • INSTANCE_GROUP_NAME: Name der MIG, die aktualisiert werden soll.
  • NI_NAME: (Optional) Name der Netzwerkschnittstelle. Wenn nicht angegeben, ist die Option enabled erforderlich und die primäre Netzwerkschnittstelle mit dem Namen nic0 wird standardmäßig angenommen. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie dieses Flag für jede IP-Adresse in jeder Netzwerkschnittstelle angeben.
  • DELETE_RULE: (Optional) Gibt an, was mit einer zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • never: (Standardeinstellung) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • on-permanent-instance-deletion: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

Wenn eine angegebene IP-Adresse bereits in der zustandsorientierten Richtlinie für eine bestimmte Netzwerkschnittstelle konfiguriert ist, aktualisiert der Befehl die Konfiguration.

Beispiel

Sie müssen für externe Nutzer über statische externe IP-Adressen einen Dateiserver bereitstellen, der in einer zustandsorientierten MIG mit dem Namen example-fs-group ausgeführt wird. Die Instanzen in der Gruppe haben sitzungsspezifische externe IP-Adressen. Sie müssen darauf achten, dass die IP-Adressen bei der automatischen Reparatur und Aktualisierung von Instanzen erhalten bleiben, damit externe Nutzer über die veröffentlichten IP-Adressen kontinuierlichen Zugriff auf die Server haben. Außerdem müssen Sie die IP-Adressen für die Kontinuität reserviert halten, falls Sie eine Gruppe einmal versehentlich löschen.

Aktualisieren Sie die MIG mit dem folgenden Befehl, um die externen IP-Adressen als zustandsorientiert zu definieren:

gcloud compute instance-groups managed update example-fs-group \
    --stateful-external-ip enabled

Dadurch werden von der Gruppe sitzungsspezifische externe IP-Adressen innerhalb der Netzwerkschnittstelle nic0 asynchron in statische IP-Adressen für alle verwalteten Instanzen umgewandelt.

Die externen IP-Adressen bleiben jetzt bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen erhalten. Die Zuweisung der zugehörigen Reservierungen statischer IP-Adressen wird beim Löschen von Instanzen aufgehoben und die Reservierungen werden beibehalten, da die nicht angegebene auto-delete-Regel standardmäßig auf never gesetzt ist.

Sie können mit dem Befehl gcloud compute instance-groups managed describe example-fs-group prüfen, ob die zustandsorientierte externe IP-Adresse in der zustandsorientierten Richtlinie konfiguriert ist.

REST

Um festzulegen, welche IP-Adressen zustandsorientiert sein sollen, oder um die zustandsorientierte IP-Konfiguration für einen vorhandenen MIG zu aktualisieren, verwenden Sie die Methode instanceGroupManagers.patch oderregionInstanceGroupManagers.patch:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      },
      "externalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      }
    }
  }
}

Dabei gilt:

  • PROJECT: Projekt-ID für die Anfrage.
  • REGION: Bei regionalen MIGs die Region, in der sich die Gruppe befindet. Ersetzen Sie bei zonalen MIGs regions/REGION durch zones/ZONE und geben Sie die Zone an, in der sich die MIG befindet.
  • NAME: Name der MIG, die erstellt werden soll.
  • NI_NAME: (Erforderlich) Name der Netzwerkschnittstelle. Die primäre Netzwerkschnittstelle heißt nic0. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.
  • DELETE_RULE: (Optional) Gibt an, was mit einer zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • NEVER: (Standard) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • ON_PERMANENT_INSTANCE_DELETION: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

Wenn eine angegebene IP-Adresse bereits in der zustandsorientierten Richtlinie konfiguriert ist, patcht die Methode die Konfiguration.

Beispiel

Sie müssen für externe Nutzer über statische externe IP-Adressen einen Dateiserver bereitstellen, der in einer zustandsorientierten MIG mit dem Namen example-fs-group ausgeführt wird. Die Instanzen in der Gruppe haben sitzungsspezifische externe IP-Adressen. Sie müssen darauf achten, dass die IP-Adressen bei der automatischen Reparatur und Aktualisierung von Instanzen erhalten bleiben, damit externe Nutzer über die veröffentlichte Netzwerkschnittstelle kontinuierlichen Zugriff auf die Server haben. Außerdem müssen Sie die IP-Adressen für die Kontinuität reserviert halten, falls Sie eine Gruppe einmal versehentlich löschen.

Patchen Sie die MIG, um die externen IP-Adressen als zustandsorientiert zu definieren:

PATCH https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-fs-group

{
  "statefulPolicy": {
    "preservedState": {
      "externalIPs": {
        "nic0": {"autoDelete": "NEVER" }
      }
    }
  }
}

Dadurch werden von der Gruppe sitzungsspezifische externe IP-Adressen innerhalb der Netzwerkschnittstelle nic0 asynchron in statische IP-Adressen für alle verwalteten Instanzen umgewandelt.

Die externen IP-Adressen bleiben jetzt bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen erhalten. Die Zuweisung der zugehörigen Reservierungen statischer IP-Adressen wird beim Löschen von Instanzen aufgehoben und die Reservierungen werden beibehalten, da die autoDelete-Regel auf NEVER festgelegt ist.

Prüfen Sie, ob die externe IP-Adresse in der zustandsorientierten Richtlinie konfiguriert ist. Rufen Sie dazu die Ressource regionInstanceGroupManagers auf, die von der Methode regionInstanceGroupManagers.get zurückgegeben wird.

Zustandsorientierte IP-Adressen als zustandslos deklarieren

Es kann zum Beispiel erforderlich sein, eine zustandsorientierte IP-Adresse aus den folgenden Gründen so zu konfigurieren, dass sie sitzungsspezifisch ist:

  • Sie gestalten Ihre Anwendung so um, dass sie nicht mehr auf statische IP-Adressen angewiesen ist.
  • Sie haben die IP-Adresse versehentlich als zustandsorientiert konfiguriert und möchten das rückgängig machen.

Sie können die zustandsorientierte IP-Konfiguration aus der zustandsorientierten Richtlinie der Gruppe entfernen, um eine IP-Adresse innerhalb einer bestimmten Netzwerkschnittstelle für alle verwalteten Instanzen als sitzungsspezifisch zu deklarieren.

Beim Entfernen einer zustandsorientierten IP-Konfiguration aus der zustandsorientierten Richtlinie entfernt die MIG die IP-Adressen automatisch und asynchron aus dem beibehaltenen Zustand aller Instanzen in der Gruppe. Laufende VM-Instanzen werden durch diesen Vorgang nicht unterbrochen. Die IP-Adressen bleiben auf den Instanzen aktiv, sind aber nicht mehr zustandsorientiert. Wenn Sie die Instanzen neu erstellen bzw. aktualisieren oder wenn die Instanzen automatisch repariert werden, hebt die MIG die Zuweisung der zugehörigen statischen IP-Adressen auf und weist automatisch sitzungsspezifische Adressen zu. Wenn Sie die Reservierungen statischer externer IP-Adressen nicht mehr behalten müssen, können Sie sie freigeben.

Weitere Informationen finden Sie in den folgenden Dokumenten:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zu den Instanzgruppen

  2. Klicken Sie auf den Namen der Instanzgruppe, aus der Sie die zustandsorientierte Konfiguration für IP-Adressen entfernen möchten.

  3. Klicken Sie auf Bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.

  4. Erweitern Sie unter Zustandsorientierte Konfiguration die externe IP-Adresse und die interne IP-Adresse, die Sie zustandslos festlegen möchten.

    1. Ändern Sie die Option Zustandsorientiert in Nein.
    2. Klicken Sie auf Fertig.
  5. Nachdem Sie die gewünschten Änderungen vorgenommen haben, klicken Sie auf Speichern.

gcloud

Wenn Sie angeben möchten, welche IP-Adressen aus der zustandsorientierten Richtlinie einer MIG sitzungsspezifisch sind, verwenden Sie das Flag --remove-stateful-internal-ips oder --remove-stateful-external-ips mit dem Befehl gcloud compute instance-groups managed update:

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --remove-stateful-internal-ips NI_NAME[,NI_NAME,...] \
    --remove-stateful-external-ips NI_NAME[,NI_NAME,...]

Dabei gilt:

  • INSTANCE_GROUP_NAME: Name der MIG, die aktualisiert werden soll.
  • NI_NAME: (Pflichtfeld) Name der Netzwerkschnittstelle. Die primäre Netzwerkschnittstelle heißt nic0. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.

Wenn Sie eine zustandsorientierte IP-Adresse aus der standardmäßigen primären Netzwerkschnittstelle namens nic0 in eine sitzungsspezifische IP-Adresse umwandeln müssen, können Sie auch den folgenden Befehl verwenden:

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --stateful-internal-ip disabled \
    --stateful-external-ip disabled

Beispiel

Ihre Anwendung wurde Nutzern über veröffentlichte statische externe IP-Adressen der VM-Instanzen in einer MIG mit dem Namen example-group bereitgestellt. Sie haben Ihren Dienst umstrukturiert, indem Sie vor der MIG einen Load-Balancer bereitgestellt haben und den Traffic über diese MIG an die verwalteten VMs weiterleiten. Sie müssen die statischen externen IP-Adressen nicht mehr verwalten und möchten die externen IP-Adressen der VMs sitzungsspezifisch machen.

Führen Sie den folgenden Befehl aus, um die zustandsorientierten externen IP-Adressen der VMs in einer MIG sitzungsspezifisch zu machen:

gcloud compute instance-groups managed update example-group \
    --remove-stateful-external-ips nic0

Die MIG entfernt die statischen externen IP-Adressen der Netzwerkschnittstelle nic0 automatisch und asynchron aus dem beibehaltenen Zustand aller Instanzen in der Gruppe. Die externen IP-Adressen bleiben auf den Instanzen aktiv, sind aber nicht mehr zustandsorientiert. Wenn Sie die Instanzen neu erstellen bzw. aktualisieren oder wenn die Instanzen automatisch repariert werden, hebt die MIG die Zuweisung der zugehörigen statischen IP-Adressen auf und weist automatisch sitzungsspezifische Adressen zu. Wenn Sie die Reservierungen statischer externer IP-Adressen nicht mehr behalten müssen, können Sie sie freigeben.

REST

Wenn Sie angeben möchten, welche IP-Adressen aus der zustandsorientierten Richtlinie einer MIG sitzungsspezifisch sind, entfernen Sie die Konfiguration jeder IP aus der zustandsorientierten Richtlinie der MIG. Verwenden Sie dafür die instanceGroupManagers.patch oder regionInstanceGroupManagers.patch-Methode:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "NI_NAME": null
      },
      "externalIPs": {
        "NI_NAME": null
      }
    }
  }
}

Dabei gilt:

  • PROJECT: Projekt-ID für die Anfrage.
  • REGION: Bei regionalen MIGs die Region, in der sich die Gruppe befindet. Ersetzen Sie bei zonalen MIGs regions/REGION durch zones/ZONE und geben Sie die Zone an, in der sich die MIG befindet.
  • INSTANCE_GROUP_NAME: Name der MIG, die erstellt werden soll.
  • NI_NAME: (Erforderlich) Name der Netzwerkschnittstelle. Die primäre Netzwerkschnittstelle heißt nic0. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.

Beispiel

Ihre Anwendung wurde Nutzern über veröffentlichte statische externe IP-Adressen der VM-Instanzen in einer MIG mit dem Namen example-group bereitgestellt. Sie haben Ihren Dienst umstrukturiert, indem Sie vor der MIG einen Load-Balancer bereitgestellt haben und den Traffic über diese MIG an die verwalteten VMs weiterleiten. Sie müssen die statischen externen IP-Adressen nicht mehr verwalten und möchten die externen IP-Adressen der VMs sitzungsspezifisch machen.

Patchen Sie die MIG, um die zustandsorientierten externen IP-Adressen der VMs in einer MIG sitzungsspezifisch zu machen:

PATCH https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group

{
  "statefulPolicy": {
    "preservedState": {
      "externalIPs": {
        "nic0": null
      }
    }
  }
}

Die MIG entfernt die statischen externen IP-Adressen der Netzwerkschnittstelle nic0 automatisch und asynchron aus dem beibehaltenen Zustand aller Instanzen in der Gruppe. Die externen IP-Adressen bleiben auf den Instanzen aktiv, sind aber nicht mehr zustandsorientiert. Wenn Sie die Instanzen neu erstellen bzw. aktualisieren oder wenn die Instanzen automatisch repariert werden, hebt die MIG die Zuweisung der zugehörigen statischen IP-Adressen auf und weist automatisch sitzungsspezifische Adressen zu. Wenn Sie die Reservierungen statischer externer IP-Adressen nicht mehr behalten müssen, können Sie sie freigeben.

Zustandsorientierte IP-Adressen einzeln für VMs in einer MIG konfigurieren

Das Konfigurieren einzelner zustandsorientierter IP-Adressen für VMs in einer MIG ist in folgenden Szenarien hilfreich:

  • Sie migrieren vorhandene Arbeitslasten (mit vorhandenen reservierten statischen IP-Adressen) von eigenständigen VM-Instanzen zu zustandsorientierten MIGs, um von der automatischen Reparatur und von automatischen Updates zu profitieren.
  • Sie weisen bestimmte reservierte statische IP-Adressen zu, die für die Architektur oder Arbeitslastkonfiguration erforderlich sind

Statische IP-Adressen beim Erstellen einer VM in einer MIG konfigurieren

Sie können statische IP-Adressen reservieren und bestimmten Instanzen zuweisen, wenn Sie diese Instanzen in einer MIG einzeln erstellen. Dies ist nützlich, wenn Sie eine zustandsorientierte Anwendung von vorhandenen eigenständigen VMs zu einer zustandsorientierten MIG migrieren, wenn sich Architektur, Konfiguration oder Nutzer bestimmte statische IP-Adressen benötigen.

Wenn Sie in einer MIG manuell eine Instanz erstellen und eine statische IP-Adresse angeben, führt die MIG die folgenden Aktionen aus:

  1. Erstellt eine statische interne oder externe IP-Adressreservierung für die bereitgestellten IP-Adressen, sofern noch nicht vorhanden.
  2. Erstellt eine Instanz aus der Instanzvorlage mit dem angegebenen Instanznamen und den IP-Adressen.
  3. Erstellt eine instanzspezifische Konfiguration mit der angegebenen zustandsorientierten Konfiguration für die IP-Adressen.

gcloud

Verwenden Sie zum Erstellen einer Instanz mit einer vordefinierten statischen IP-Adresse den Befehl gcloud compute instance-groups managed create-instance mit einem oder mehreren der folgenden Flags:

  • Mit --stateful-internal-ip wird eine statische interne IP-Adresse einer bestimmten Netzwerkschnittstelle festgelegt.
  • Mit --stateful-external-ip wird eine statische externe IP-Adresse einer bestimmten Netzwerkschnittstelle festgelegt.
gcloud compute instance-groups managed create-instance INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --stateful-internal-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE]

Dabei gilt:

  • INSTANCE_GROUP_NAME: Name der MIG.
  • INSTANCE_NAME: Name der zu erstellenden Instanz
  • NI_NAME: (Optional) Name der Netzwerkschnittstelle. Wenn nicht angegeben, wird standardmäßig die primäre Netzwerkschnittstelle mit dem Namen nic0 angenommen. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie dieses Flag für jede IP-Adresse in jeder Netzwerkschnittstelle angeben.
  • ADDRESS: (Pflichtfeld) Statische IP-Adresse, die der Instanz zugewiesen werden soll, in einem der folgenden Formate:

    • Adresse. URL einer statischen IP-Adressreservierung, z. B. "projects/example-project/regions/us-east1/addresses/example-ip-name".
    • Literal. Beispiel: "130.211.181.55".
      • Wenn die angegebene IP-Adresse noch nicht reserviert ist, erstellt die MIG automatisch eine entsprechende IP-Adressreservierung.
      • Wenn die angegebene IP-Adresse reserviert ist, weist die MIG die Reservierung der Instanz zu.
  • DELETE_RULE: (Optional) Gibt an, was mit einer zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • never: (Standardeinstellung) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • on-permanent-instance-deletion: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

Beispiel

Sie müssen dem Proxyserver eine weitere VM-Instanz hinzufügen, die in einer MIG mit dem Namen proxy-cluster ausgeführt wird. Sie haben eine Reservierung einer statischen internen IP-Adresse mit dem Namen proxy-node-03-ip erstellt und müssen sie dem neuen Knoten zuweisen. Sie möchten die Reservierung der IP-Adresse beibehalten, auch wenn Sie den Knoten in Zukunft löschen.

Führen Sie den folgenden Befehl aus, um den Knoten zu erstellen:

gcloud compute instance-groups managed create-instance proxy-cluster \
    --instance proxy-node-03 \
    --stateful-internal-ip address="projects/example-project/regions/us-east1/addresses/proxy-node-03-ip",auto-delete=never

Der Befehl erstellt eine Instanz mit dem Namen proxy-node-03, weist der Instanz die bereitgestellte statische interne IP-Adresse mit dem Namen proxy-node-03-ip zu und speichert eine zustandsorientierte Konfiguration für die IP-Adresse in der entsprechenden instanzspezifischen Konfiguration. Da das Flag auto-delete auf never gesetzt ist, bleibt die IP-Adresse reserviert, wenn Sie die Instanz später löschen.

Terraform

Verwenden Sie einen oder mehrere der folgenden Blöcke, um eine VM mit einer vordefinierten statischen IP-Adresse zu erstellen:

  • preserved_state.internal_ip, um eine interne IP-Adresse einer bestimmten Netzwerkschnittstelle als zustandsorientiert zu markieren.
  • preserved_state.external_ip, um eine externe IP-Adresse einer bestimmten Netzwerkschnittstelle als zustandsorientiert zu markieren.

Im folgenden Beispiel werden statische IP-Adressen beim Erstellen der VM in einer regionalen MIG konfiguriert. Weitere Informationen zu der im Beispiel verwendeten Ressource finden Sie unter google_compute_region_per_instance_config-Ressource. Verwenden Sie für eine zonale MIG die Ressource google_compute_per_instance_config.

resource "google_compute_region_per_instance_config" "default" {
  region_instance_group_manager = google_compute_region_instance_group_manager.default.name
  region                        = google_compute_region_instance_group_manager.default.region
  name                          = "proxy-node-03-ip"
  preserved_state {
    internal_ip {
      interface_name = "nic0"
      auto_delete    = "NEVER"
      ip_address {
        address = google_compute_address.default.id
      }
    }
  }
}

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

REST

Um eine oder mehrere Instanzen in einem MIG zu erstellen, benutzerdefinierte Instanznamen festzulegen und diesen Instanzen vordefinierte statische IP-Adressen zuzuweisen, verwenden Sie die Methode instanceGroupManagers.createInstances oder regionInstanceGroupManagers.createInstances.

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

{
  "instances": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        "externalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        ...
      }
    },
    ...
  ]
}

Dabei gilt:

  • PROJECT_ID: Projekt-ID für die Anfrage.
  • NAME: Name der MIG.
  • REGION: Bei regionalen MIGs die Region, in der sich die Gruppe befindet. Ersetzen Sie bei zonalen MIGs regions/REGION durch zones/ZONE und geben Sie die Zone an, in der sich die MIG befindet.
  • INSTANCE_NAME: Name der zu erstellenden Instanz
  • NI_NAME: (Pflichtfeld) Name der Netzwerkschnittstelle. Die primäre Netzwerkschnittstelle heißt nic0. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.
  • ADDRESS: (Optional) Statische IP-Adresse, die der Instanz zugewiesen werden soll, im Format einer URL einer Reservierung einer statischen IP-Adresse. Beispiel: "projects/example-project/regions/us-east1/addresses/example-ip-name". Sie müssen und können jeweils nur ein Feld auf einmal festlegen, entweder address oder literal, wenn Sie eine statische IP-Adresse zuweisen.
  • LITERAL: (Optional) Statische IP-Adresse, die der Instanz im Literalformat zugewiesen werden soll. Beispiel: "130.211.181.55". Sie müssen und können jeweils nur ein Feld auf einmal festlegen, entweder address oder literal, wenn Sie eine statische IP-Adresse zuweisen.
    • Wenn die angegebene Literal-IP-Adresse noch nicht reserviert ist, erstellt die MIG automatisch eine entsprechende IP-Adressreservierung.
    • Wenn die angegebene Literal-IP-Adresse reserviert ist, weist die MIG die Reservierung der Instanz zu.
  • DELETE_RULE: (Optional) Gibt an, was mit einer zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • NEVER: (Standardeinstellung) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • ON_PERMANENT_INSTANCE_DELETION: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

Beispiel

Sie müssen dem Proxyserver eine weitere VM-Instanz hinzufügen, die in einer MIG mit dem Namen proxy-cluster ausgeführt wird. Sie haben eine Reservierung einer statischen internen IP-Adresse mit dem Namen proxy-node-03-ip erstellt und müssen sie dem neuen Knoten zuweisen. Sie möchten die Reservierung der IP-Adresse beibehalten, auch wenn Sie den Knoten in Zukunft löschen.

Rufen Sie die Methode regionInstanceGroupManagers.createInstances auf, um eine zusätzliche Instanz zu erstellen:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/proxy-cluster/createInstances

{
  "instances": [
    {
      "name": "proxy-node-03",
      "preservedState" : {
        "internalIPs": {
          "nic0" : {
            "ipAddress": {
              "address": "projects/example-project/regions/us-east1/addresses/proxy-node-03-ip"
            },
            "autoDelete": "NEVER"
          }
        }
      }
    }
  ]
}

Die Methode erstellt eine Instanz mit dem Namen proxy-node-03, weist der Instanz die bereitgestellte statische interne IP-Adresse mit dem Namen proxy-node-03-ip zu und speichert eine zustandsorientierte Konfiguration für die IP-Adresse in der entsprechenden instanzspezifischen Konfiguration. Da das Feld autoDelete auf NEVER gesetzt ist, bleibt die IP-Adresse reserviert, wenn Sie die Instanz später löschen.

Statische IP-Adressen für eine vorhandene VM in einer MIG konfigurieren

Sie können eine vordefinierte statische IP-Adresse festlegen oder die zustandsorientierte IP-Konfiguration für eine verwaltete Instanz einzeln aktualisieren. Beispiel:

  • Zuweisen einer statischen IP-Adresse zu einer vorhandenen Instanz in einer MIG. Bei statischen externen IP-Adressen erfordert dieser Vorgang eine Aktualisierung der Instanz, bei statischen internen IP-Adressen die Neuerstellung der Instanz.
  • Aktualisieren der Löschregel für eine bereits zugewiesene statische IP-Adresse. Dieser Vorgang kann durchgeführt werden, ohne die ausgeführte Instanz zu unterbrechen.

Bei einer vorhandenen Instanz ohne externe IP-Adresse, für die Sie eine externe zustandsorientierte IP-Adresse konfigurieren, fügt die MIG der entsprechenden Netzwerkschnittstelle eine Zugriffskonfiguration mit den folgenden Standardwerten hinzu.:

"accessConfigs": [
  {
    "kind": "compute#accessConfig",
    "name": "External Nat",
    "natIP": "XX.XX.XX.XX",
    "networkTier": "PREMIUM",
    "type": "ONE_TO_ONE_NAT"
  }
]

gcloud

Wenn Sie eine zustandsorientierte IP-Adresse für eine VM-Instanz in einer MIG einzeln konfigurieren möchten, fügen Sie die zustandsorientierte IP-Konfiguration in der zugehörigen instanzspezifischen Konfiguration hinzu oder aktualisieren Sie sie dort.

Wenn noch keine instanzspezifische Konfiguration für die Instanz vorhanden ist, verwenden Sie den Befehl gcloud compute instance-groups managed instance-configs create mit einem oder mehreren der folgenden Flags:

  • Mit --stateful-internal-ip wird eine statische interne IP-Adresse einer bestimmten Netzwerkschnittstelle festgelegt.
  • Mit --stateful-external-ip wird eine statische externe IP-Adresse einer bestimmten Netzwerkschnittstelle festgelegt.
gcloud compute instance-groups managed instance-configs create INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --stateful-internal-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    [--no-update-instance | --update-instance]
    [--instance-update-minimal-action MINIMAL_ACTION]

Wenn bereits eine instanzspezifische Konfiguration für die Instanz vorhanden ist, verwenden Sie den Befehl gcloud compute instance-groups managed instance-configs update mit einem oder mehreren --stateful-internal-ip oder --stateful-external-ip-Flags.

gcloud compute instance-groups managed instance-configs update INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --stateful-internal-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    [--no-update-instance | --update-instance]
    [--instance-update-minimal-action MINIMAL_ACTION]

Dabei gilt:

  • INSTANCE_GROUP_NAME: Name der MIG.
  • INSTANCE_NAME: Name der Instanz, für die zustandsorientierte IP-Adressen konfiguriert werden sollen.
  • NI_NAME: (Optional) Name der Netzwerkschnittstelle. Wenn nicht angegeben, wird standardmäßig die primäre Netzwerkschnittstelle mit dem Namen nic0 angenommen. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie dieses Flag für jede IP-Adresse in jeder Netzwerkschnittstelle angeben.
  • ADDRESS: Statische IP-Adresse, die der Instanz zugewiesen werden soll, in einem der folgenden Formate:
    • Adresse. URL einer statischen IP-Adressreservierung, z. B. "projects/example-project/regions/us-east1/addresses/example-ip-name".
    • Literal. Beispiel: "130.211.181.55".
      • Wenn die angegebene IP-Adresse noch nicht reserviert ist, erstellt die MIG automatisch eine entsprechende IP-Adressreservierung.
      • Wenn die angegebene IP-Adresse reserviert ist, weist die MIG die Reservierung der Instanz zu.
    • Dieses Unterflag ist optional, wenn die Adresse bereits in der instanzbezogenen Konfiguration der Instanz definiert ist. Andernfalls ist es erforderlich.
    • Ohne Angabe bleibt die konfigurierte Adresse unverändert.
  • DELETE_RULE: (Optional) Gibt an, was mit einer zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • never: (Standardeinstellung) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • on-permanent-instance-deletion: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.
    • Wenn keine Angabe gemacht wird, wird der Standardwert für eine neue zustandsorientierte IP festgelegt. Der Wert bleibt in einer vorhandenen Konfiguration unverändert.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

  • --update-instance: (Optional, Standardeinstellung) Wenden Sie die Änderungen sofort auf die Instanz an. Wenn Sie das Flag --no-update-instance verwenden, werden die Änderungen erst angewendet, wenn Sie die Instanz neu erstellen oder die Aktualisierung darauf anwenden.

  • MINIMAL_ACTION: (Optional) Beim Anwenden der aktualisierten instanzspezifischen Konfiguration auf die Instanz wird zumindest die angegebene Aktion ausgeführt. Muss zusammen mit dem Flag --update-instance verwendet werden. Der Wert muss einer der folgenden sein:

    • none: Keine Aktion.
    • refresh: Aktualisierungen, die ohne das Beenden der VM angewendet werden können, werden angewendet.
    • restart: Die Instanz wird gestoppt und noch einmal gestartet.
    • replace: Die Instanz wird neu erstellt.

Wenn nichts angegeben ist, wird die Aktion ausgeführt, die für die Aktualisierung erforderlich ist und am wenigsten Störungen verursacht.

Beispiel

Sie haben eine Dateiserverinstanz namens file-server, bei der es sich um eine einzelne Instanz in einer zustandsorientierten MIG mit dem Namen fs-group handelt. Die Gruppe hat eine entsprechende instanzspezifische Konfiguration, in der ein zustandsorientiertes Datenlaufwerk konfiguriert ist. Auf den Dateiserver konnte bislang nur intern zugegriffen werden, aber jetzt gibt es Nutzer, die extern über eine statische IP-Adresse darauf zugreifen müssen. Sie haben die statische externe IP-Adresse reserviert, indem Sie die Adressreservierung file-server-ip erstellt haben. Jetzt müssen Sie diese IP-Adresse der Dateiserverinstanz zuweisen.

Führen Sie den folgenden Befehl aus, um die zustandsorientierte externe IP-Adresse für die Dateiserverinstanz zu konfigurieren:

gcloud compute instance-groups managed instance-configs update fs-group \
    --instance file-server \
    --stateful-external-ip interface-name=nic0,address="projects/example-project/regions/us-east1/addresses/file-server-ip",auto-delete=never \
    --update-instance

Der Befehl führt folgende Schritte durch:

  1. Aktualisiert die instanzspezifische Konfiguration für die Instanz file-server:
    1. Fügt eine Konfiguration einer zustandsorientierten externen IP-Adresse hinzu, die auf die Adressreservierung file-server-ip verweist.
    2. Die Konfiguration des zustandsorientierten Datenlaufwerks bleibt unverändert.
  2. Wendet die aktualisierte instanzspezifische Konfiguration auf die file-server-Instanz an, weil das Flag --update-instance enthalten ist: aktualisiert die Instanz und weist die statische externe IP-Adresse aus der file-server-ip-Reservierung zu.

REST

Wenn Sie zustandsorientierte IP-Adressen für VM-Instanzen in einer MIG einzeln konfigurieren möchten, fügen Sie die Konfiguration zustandsorientierter IP-Adressen in den zugehörigen instanzspezifischen Konfigurationen hinzu oder aktualisieren Sie sie.

Wenn noch keine instanzspezifischen Konfigurationen für die angegebenen Instanzen vorhanden sind, verwenden Sie die instanceGroupManagers.updatePerInstanceConfigs-Methode oder die regionInstanceGroupManagers.updatePerInstanceConfigs-Methode mit zustandsorientierter Konfiguration für eine oder mehrere IP-Adressen:

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

{
  "perInstanceConfigs": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        "externalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        ...
      },
      "fingerprint: "FINGERPRINT"
    },
    ...
  ]
}

Wenn bereits instanzspezifische Konfigurationen für die angegebenen Instanzen vorhanden sind, verwenden Sie die instanceGroupManagers.patchPerInstanceConfigs-Methode oder die regionInstanceGroupManagers.patchPerInstanceConfigs-Methode mit zustandsorientierter Konfiguration für eine oder mehrere IP-Adressen:

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

{
  "perInstanceConfigs": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        "externalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        ...
      },
      "fingerprint: "FINGERPRINT"
    },
    ...
  ]
}

Dabei gilt:

  • PROJECT_ID: Projekt-ID für die Anfrage.
  • NAME: Name der MIG.
  • REGION: Bei regionalen MIGs die Region, in der sich die Gruppe befindet. Ersetzen Sie bei zonalen MIGs regions/REGION durch zones/ZONE und geben Sie die Zone an, in der sich die MIG befindet.
  • INSTANCE_NAME: (Pflichtfeld) Name der Instanz, für die zustandsorientierte Metadaten konfiguriert werden sollen.
  • NI_NAME: (Pflichtfeld) Name der Netzwerkschnittstelle. Die primäre Netzwerkschnittstelle heißt nic0. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.
  • ADDRESS: (Optional) Statische IP-Adresse, die der Instanz zugewiesen werden soll, im Format einer URL einer Reservierung einer statischen IP-Adresse. Beispiel: "projects/example-project/regions/us-east1/addresses/example-ip-name". Sie müssen und können jeweils nur ein Feld auf einmal festlegen, entweder Adresse oder Literal, wenn Sie eine statische IP-Adresse zuweisen.
  • LITERAL: (Optional) Statische IP-Adresse, die der Instanz im Literalformat zugewiesen werden soll. Beispiel: "130.211.181.55" Sie müssen und können jeweils nur ein Feld auf einmal festlegen, entweder Adresse oder Literal, wenn Sie eine statische IP-Adresse zuweisen.
    • Wenn die angegebene Literal-IP-Adresse noch nicht reserviert ist, erstellt die MIG automatisch eine entsprechende IP-Adressreservierung.
    • Wenn die angegebene Literal-IP-Adresse reserviert ist, weist die MIG die Reservierung der Instanz zu.
  • DELETE_RULE: (Optional) Gibt an, was mit einer zugehörigen statischen Adressressource geschehen soll, wenn eine VM-Instanz dauerhaft gelöscht wird. Folgende Optionen sind verfügbar:

    • NEVER: (Standardeinstellung) Die statische IP-Adresse niemals löschen. Heben Sie stattdessen die Zuweisung der Adresse beim Löschen der Instanz auf und behalten Sie die reservierte Adresse.
    • ON_PERMANENT_INSTANCE_DELETION: Die Reservierung der statischen IP-Adresse wird gelöscht, wenn eine Instanz dauerhaft aus der Instanzgruppe gelöscht wird, beispielsweise beim manuellen Löschen einer Instanz oder beim Verringern der Gruppengröße.
    • Wenn keine Angabe gemacht wird, wird der Standardwert für eine neue zustandsorientierte IP festgelegt. Der Wert bleibt in einer vorhandenen Konfiguration unverändert.

    Unabhängig vom Wert der Löschregel behält die Gruppe immer zustandsorientierte IP-Adressen bei der automatischen Reparatur, Aktualisierung und Neuerstellung von Instanzen bei.

  • FINGERPRINT: (Optional) Der Fingerabdruck für die angegebene Konfiguration, falls er bereits vorhanden ist. Wird für optimistisches Sperren verwendet. Der Vorgang schlägt fehl, wenn sich der Fingerabdruck vom angegebenen Fingerabdruck unterscheidet, da dies darauf hinweist, dass die instanzspezifische Konfiguration seit dem letzten Lesen geändert wurde. Den neuesten Fingerabdruck finden Sie in der Ausgabe der Methode listPerInstanceConfigs für eine regionale oder zonale MIG. Wenn fingerprint weggelassen wird, wird der Vorgang ohne Fingerabdruckvergleich fortgesetzt.

Die Methoden updatePerInstanceConfigs und patchPerInstanceConfigs aktualisieren die angegebenen instanzspezifischen Konfigurationen, wenden die Konfigurationsaktualisierungen jedoch nicht auf die zugehörigen verwalteten Instanzen an. Die Änderungen werden auf eine Instanz angewendet, wenn die MIG angewiesen wird, die Instanz neu zu erstellen oder zu aktualisieren. Sie können die Aktualisierung manuell anwenden, um die Änderungen auf eine Instanz anzuwenden.

Beispiel

Sie haben eine Dateiserverinstanz namens file-server, bei der es sich um eine einzelne Instanz in einer zustandsorientierten MIG mit dem Namen fs-group handelt. Die Gruppe hat eine entsprechende instanzspezifische Konfiguration, in der ein zustandsorientiertes Datenlaufwerk konfiguriert ist. Auf den Dateiserver konnte bislang nur intern zugegriffen werden, aber jetzt gibt es Nutzer, die extern über eine statische IP-Adresse darauf zugreifen müssen. Sie haben die statische externe IP-Adresse reserviert, indem Sie die Adressreservierung file-server-ip erstellt haben. Jetzt müssen Sie diese IP-Adresse der Dateiserverinstanz zuweisen.

Rufen Sie die Methode patchPerInstanceConfigs auf, um die instanzspezifische Konfiguration für file-server mit der neuen zustandsorientierten externen IP-Adresse zu aktualisieren:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/fs-group/patchPerInstanceConfigs

{
  "perInstanceConfigs": [
    {
      "name": "file-server",
      "preservedState" : {
        "externalIPs": {
          "nic0" : {
            "ipAddress": {
              "address": "projects/example-project/regions/us-east1/addresses/file-server-ip"
            },
            "autoDelete": "NEVER"
          }
        }
      }
    }
  ]
}

Mit der Methode wird die instanzspezifische Konfiguration für die Instanz file-server gepatcht:

  1. Fügt eine Konfiguration einer zustandsorientierten externen IP-Adresse hinzu, die auf die Adressreservierung file-server-ip verweist.
  2. Die Konfiguration des zustandsorientierten Datenlaufwerks bleibt unverändert.

Die Konfigurationsaktualisierung wurde noch nicht auf die VM-Instanz file-server angewendet. Die MIG wendet die Konfigurationsaktualisierung an, wenn Sie die Instanz später neu erstellen oder die Aktualisierung darauf anwenden.

Rufen Sie die Methode regionInstanceGroupManagers.applyUpdatesToInstances für die Instanz auf, um die aktualisierte instanzspezifische Konfiguration auf die VM-Instanz file-server anzuwenden:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/gs-group/applyUpdatesToInstances

{
  "instances": ["/zones/us-east1-b/instances/file-server"]
}

Die Methode weist der verwalteten Instanz die konfigurierte statische externe IP-Adresse aus der Reservierung file-server-ip zu. Die Methode aktualisiert die Instanz file-server, um eine externe IP-Adresse zuzuweisen.

Da autoDelete in der zustandsorientierten IP-Konfiguration auf NEVER gesetzt ist, bleibt die IP-Adresse reserviert, wenn Sie die Instanz später löschen.

Verknüpfung statischer IP-Adressen mit einer vorhandenen VM in einer MIG aufheben

Möglicherweise müssen Sie die Verknüpfung einer statischen IP-Adresse mit einer vorhandenen VM aufheben, um die Netzwerkschnittstelle für die VM sitzungsspezifisch zu machen. Das ist in folgenden Szenarien nützlich:

  • Sie gestalten Ihre Anwendung so um, dass sie nicht mehr auf statische IP-Adressen angewiesen ist.
  • Sie haben die IP-Adresse versehentlich als zustandsorientiert konfiguriert und möchten das rückgängig machen.

Sie können die Verknüpfung einer statischen IP-Adresse mit einer vorhandenen VM in einer MIG aufheben und die IP-Adresse für eine einzelne VM sitzungsspezifisch machen. Dazu entfernen Sie die zustandsorientierte Konfiguration der IP-Adresse aus der zugehörigen instanzspezifischen Konfiguration oder löschen die gesamte instanzspezifische Konfiguration, wenn sie keinen anderen Zustand enthält. Das Anwenden der Änderung hat folgende Auswirkungen:

  • Die IP-Adresse bleibt auf der Instanz aktiv, ist aber nicht mehr zustandsorientiert.
  • Wenn Sie die Instanz neu erstellen oder aktualisieren oder die Instanz automatisch repariert wird, hebt die MIG die Reservierung der zugehörigen statischen IP-Adresse auf und weist sie eine sitzungsspezifische Adresse automatisch zu.
  • Nachdem die Zuweisung aufgehoben wurde, bleibt die statische IP-Adresse reserviert.

Wenn Sie eine zustandsorientierte IP-Konfiguration aus einer instanzspezifischen Konfiguration entfernen, werden laufende VM-Instanzen nur dann unterbrochen, wenn Sie dies explizit veranlassen.

Weitere Informationen finden Sie in folgenden Dokumenten:

gcloud

Verwenden Sie den Befehl gcloud compute instance-groups managed instance-configs update mit den Flags --remove-stateful-internal-ips oder --remove-stateful-external-ips, um die zustandsorientierte IP-Konfiguration aus der zugehörigen instanzspezifischen Konfiguration zu entfernen:

gcloud compute instance-groups managed instance-configs update INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --remove-stateful-internal-ips NI_NAME[,NI_NAME,...] \
    --remove-stateful-external-ips NI_NAME[,NI_NAME,...]
    [--no-update-instance | --update-instance] \
    [--instance-update-minimal-action MINIMAL_ACTION]

Dabei gilt:

  • INSTANCE_GROUP_NAME: Name der MIG.
  • INSTANCE_NAME: (Pflichtfeld) Name der Instanz, für die die Konfiguration zustandsorientierter IP-Adressen entfernt werden soll.
  • NI_NAME: (Pflichtfeld) Name der Netzwerkschnittstelle. Die primäre Netzwerkschnittstelle heißt nic0. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.
  • --update-instance: (Optional, Standardeinstellung) Wenden Sie die Änderungen sofort auf die Instanz an. Wenn Sie das Flag --no-update-instance verwenden, werden die Änderungen erst angewendet, wenn Sie die Instanz neu erstellen oder die Aktualisierung darauf anwenden.
  • MINIMAL_ACTION: (Optional) Beim Anwenden der aktualisierten instanzspezifischen Konfiguration auf die Instanz wird zumindest die angegebene Aktion ausgeführt. Dieses Flag kann nur zusammen mit dem Flag --update-instance verwendet werden. Der Wert muss einer der folgenden sein:

    • none: Keine Aktion.
    • refresh: Aktualisierungen, die ohne das Beenden der VM angewendet werden können, werden angewendet.
    • restart: Die Instanz wird gestoppt und noch einmal gestartet.
    • replace: Die Instanz wird neu erstellt.

    Wenn nichts angegeben ist, wird die Aktion ausgeführt, die für die Aktualisierung erforderlich ist und am wenigsten Störungen verursacht.

Beispiel

Ihre Anwendung wurde Nutzern über bestimmte veröffentlichte statische externe IP-Adressen der VM-Instanzen in einer MIG mit dem Namen example-group bereitgestellt. Sie haben Ihren Dienst umstrukturiert, indem Sie vor der MIG einen Load-Balancer bereitgestellt haben und den Traffic über diese MIG an die verwalteten VMs weiterleiten. Sie müssen die statischen externen IP-Adressen nicht mehr verwalten und möchten die externen IP-Adressen der VMs sitzungsspezifisch machen.

Führen Sie den folgenden Befehl für jede Instanz aus, z. B. für node-1, um die zustandsorientierten externen IP-Adressen der VMs in einer MIG sitzungsspezifisch zu machen:

gcloud compute instance-groups managed instance-configs update example-group \
    --instance node-1 \
    --remove-stateful-external-ips nic0 \
    --update-instance

Der Befehl führt folgende Schritte durch:

  1. Entfernt die zustandsorientierte Konfiguration für die externe IP-Adresse innerhalb der Netzwerkschnittstelle nic0 aus der instanzspezifischen Konfiguration für node-1.
  2. Wendet die Aktualisierung der instanzspezifischen Konfiguration sofort auf die node-1-VM-Instanz an, da das Flag --update-instance enthalten ist. Die VM-Instanz wird nicht unterbrochen und arbeitet weiter über dieselbe IP-Adresse, die nicht mehr zustandsorientiert ist. Die MIG entfernt den Verweis auf die Reservierung der statischen IP-Adresse aus der preservedStateFromConfig der verwalteten Instanz und behandelt die externe IP-Adresse als sitzungsspezifisch. Die MIG weist eine externe IP-Adresse bei nachfolgenden Neuerstellungs-, Aktualisierungs- oder automatischen Reparaturereignissen der Instanz automatisch zu.
  3. Nachdem die Zuweisung aufgehoben wurde, bleibt die ursprüngliche statische IP-Adresse reserviert. Sie können die IP-Adresse freigeben, wenn Sie sie nicht mehr benötigen.

REST

Verwenden Sie die Methode instanceGroupManagers.patchPerInstanceConfigs oder regionInstanceGroupManagers.patchPerInstanceConfigs, um die zustandsorientierte IP-Konfiguration aus der zugehörigen instanzspezifischen Konfiguration zu entfernen:

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

{
  "perInstanceConfigs": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : null
        },
        "externalIPs": {
          "NI_NAME" : null
        }
      },
      "fingerprint: "FINGERPRINT"
    },
    ...
  ]
}

Dabei gilt:

  • PROJECT_ID: Projekt-ID für die Anfrage.
  • NAME: Name der MIG.
  • REGION: Bei regionalen MIGs die Region, in der sich die Gruppe befindet. Ersetzen Sie bei zonalen MIGs regions/REGION durch zones/ZONE und geben Sie die Zone an, in der sich die MIG befindet.
  • INSTANCE_NAME: (Pflichtfeld) Name der Instanz, für die die Konfiguration zustandsorientierter IP-Adressen entfernt werden soll.
  • NI_NAME: (Pflichtfeld) Name der Netzwerkschnittstelle. Die primäre Netzwerkschnittstelle heißt nic0. Wenn Sie mehrere Netzwerkschnittstellen haben, können Sie mehrere NI_NAMES angeben.
  • FINGERPRINT: (Optional) Der Fingerabdruck für die angegebene Konfiguration, falls er bereits vorhanden ist. Wird für optimistisches Sperren verwendet. Der Vorgang schlägt fehl, wenn sich der Fingerabdruck vom angegebenen Fingerabdruck unterscheidet, da dies darauf hinweist, dass die instanzspezifische Konfiguration seit dem letzten Lesen geändert wurde. Den neuesten Fingerabdruck finden Sie in der Ausgabe der Methode listPerInstanceConfigs für eine regionale oder zonale MIG. Wenn fingerprint weggelassen wird, wird der Vorgang ohne Fingerabdruckvergleich fortgesetzt.

Die Methode patchPerInstanceConfigs aktualisiert die angegebenen instanzspezifischen Konfigurationen, wendet die Konfigurationsaktualisierungen jedoch nicht auf die zugehörigen verwalteten Instanzen an. Die Änderungen werden auf eine Instanz angewendet, wenn die MIG angewiesen wird, die Instanz neu zu erstellen oder zu aktualisieren. Sie können die Aktualisierung manuell anwenden, um die Änderungen auf eine Instanz anzuwenden.

Beispiel

Ihre Anwendung wurde Nutzern über bestimmte veröffentlichte statische externe IP-Adressen der VM-Instanzen in einer MIG mit dem Namen example-group bereitgestellt. Sie haben Ihren Dienst umstrukturiert, indem Sie vor der MIG einen Load-Balancer bereitgestellt haben und den Traffic über diese MIG an die verwalteten VMs weiterleiten. Sie müssen die statischen externen IP-Adressen nicht mehr verwalten und möchten die externen IP-Adressen der VMs sitzungsspezifisch machen.

Wenn Sie die zustandsorientierten externen IP-Adressen der VMs in einer MIG sitzungsspezifisch machen möchten, führen Sie für jede Instanz die folgende Methode aus: z. B. für node-1, und geben Sie für die zustandsorientierte Konfiguration der Netzwerkschnittstelle den Wert null an:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group/patchPerInstanceConfigs

{
  "perInstanceConfigs": [
    {
      "name": "node-1",
      "preservedState" : {
        "externalIPs": {
          "nic0" : null
        }
      }
    }
  ]
}

Die Methode entfernt die Konfiguration für die zustandsorientierte IP-Adresse in der Netzwerkschnittstelle nic0 aus der instanzspezifischen Konfiguration für node-1. Die Konfigurationsaktualisierung wurde noch nicht auf die VM-Instanz node-1 angewendet. Die MIG wendet die Konfigurationsaktualisierung bei der nächsten Neuerstellung oder Aktualisierung der Instanz an.

Rufen Sie die Methode regionInstanceGroupManagers.applyUpdatesToInstances für die Instanz auf, um die aktualisierte instanzspezifische Konfiguration auf die VM-Instanz node-1 anzuwenden:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group/applyUpdatesToInstances

{
  "instances": ["/zones/us-east1-c/instances/node-1"]
}

Die MIG entfernt den Verweis auf die Reservierung der statischen IP-Adresse aus dem Feld preservedStateFromConfig für die Instanz node-1 und behandelt die IP-Adresse als sitzungsspezifisch. Die MIG weist eine externe IP-Adresse bei nachfolgenden Neuerstellungs-, Aktualisierungs- oder automatischen Reparaturereignissen der Instanz automatisch zu.

Nachdem die Zuweisung aufgehoben wurde, bleibt die ursprüngliche statische IP-Adresse reserviert. Sie können die IP-Adresse freigeben, wenn Sie sie nicht mehr benötigen.

Zustandsorientierte Konfiguration entfernen

Informationen zum Entfernen der Konfiguration aus einer zustandsorientierten Richtlinie für alle VMs in einer MIG finden Sie in den folgenden Dokumenten:

Informationen zum Entfernen der Konfiguration aus einer instanzspezifischen Konfiguration für eine bestimmte VM in einer MIG finden Sie in den folgenden Dokumenten:

Nicht verwendete statische IP-Adressen bereinigen

Wenn Sie eine zustandsorientierte IP-Adresse für verwaltete Instanzen in einer Gruppe konfigurieren, können Sie auswählen, ob die zugehörigen Reservierungen statischer IP-Adressen manuell oder automatisch freigegeben werden sollen, wenn eine Instanz endgültig gelöscht wird:

  • Wenn Sie Reservierungen statischer IP-Adressen beim endgültigen Löschen von Instanzen automatisch freigeben möchten, setzen Sie den Parameter autoDelete auf ON_PERMANENT_INSTANCE_DELETION.
  • Wenn Sie Reservierungen statischer IP-Adressen manuell freigeben möchten, setzen Sie den Parameter autoDelete auf NEVER. Informationen zum Bereinigen nicht verwendeter Reservierungen statischer IP-Adressen, um beispielsweise unnötige Gebühren zu vermeiden, finden Sie in den folgenden Dokumenten:

Wenn Sie die MIG angewiesen haben, die zugehörigen Reservierungen von IP-Adressen nie zu löschen, bleiben die statischen IP-Adressen reserviert, wenn die entsprechenden Instanzen oder die MIG nicht mehr existieren.

Feedback

Wir möchten mehr über Ihre Anwendungsfälle und Herausforderungen erfahren und freuen uns über Feedback zu zustandsorientierten MIGs. Senden Sie Ihr Feedback an unser Team unter mig-discuss@google.com.

Nächste Schritte