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.
Vorbereitung
- 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 bei Compute Engine authentifizieren. Wählen Sie dazu eine der folgenden Optionen aus:
Select the tab for how you plan to use the samples on this page:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Terraform
Wenn Sie die Terraform-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.
Weitere Informationen unter Set up authentication for a local development environment.
REST
Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.
-
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 sitzungsspezifische interne 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.
Erforderliche Berechtigungen für diese Aufgabe
Zum Ausführen dieser Aufgabe benötigen Sie die folgenden Berechtigungen:
- Für zonale MIGs benötigen Sie alle Berechtigungen, um die Methode
instanceGroupManagers.insert
aufzurufen. - Bei regionalen MIGs benötigen Sie alle Berechtigungen, die zum Aufrufen der Methode
regionInstanceGroupManagers.insert
erforderlich sind.
Eine MIG verwendet das Dienstkonto Google APIs-Dienst-Agent, um ihre Instanzen zu verwalten. Dieses Dienstkonto hat standardmäßig die Rolle Bearbeiter, die alle erforderlichen Berechtigungen zum Verwalten von zustandsorientierten IP-Adressen enthält.
Wenn Sie eine benutzerdefinierte Rolle erstellen müssen, sind die folgenden Berechtigungen zum Verwalten von zustandsorientierten Netzwerkschnittstellen erforderlich:
compute.addresses.create
zum Erstellen statischer externer IP-Adressencompute.addresses.createInternal
zum Erstellen statischer interner IP-Adressencompute.addresses.use
zum Zuweisen einer statischen externen IP-Adresse zu einer Instanzcompute.addresses.useInternal
zum Zuweisen einer statischen internen IP-Adresse zu einer Instanzcompute.addresses.delete
zum Löschen statischer IP-Adressen beim endgültigen Löschen von Instanzencompute.subnetworks.use
zum Erstellen statischer externer IP-Adressencompute.subnetworks.useInternal
zum Erstellen statischer interner IP-Adressen- Die Rolle Netzwerknutzer (
roles/compute.networkUser
) entweder für das gesamte Hostprojekt oder für ausgewählte Subnetze seiner freigegebenen VPC-Netzwerke, um VM-Instanzen mit statischen IP-Adressen in freigegebenen VPC-Netzwerken oder Subnetzen zu erstellen, die zum Hostprojekt gehören
Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.
Wählen Sie Ihr Projekt aus und klicken Sie auf Weiter.
Klicken Sie auf Instanzgruppe erstellen.
Wählen Sie Neue verwaltete Instanzgruppe (zustandsorientiert) aus.
Geben Sie einen Namen für die Instanzgruppe an.
Wählen Sie eine Instanzvorlage aus.
Geben Sie unter Anzahl der Instanzen an, wie viele Instanzen die verwaltete Instanzgruppe umfassen soll.
Erweitern Sie unter Zustandsorientierte Konfiguration die externe IP-Adresse und die interne IP-Adresse, die Sie als zustandsorientiert festlegen möchten.
- Wählen Sie unter Zustandsorientiert die Option Ja aus.
- 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: (Standardeinstellung) 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.
- Klicken Sie nach Fertigstellung der zustandsorientierten Konfiguration auf Fertig.
Klicken Sie auf Erstellen.
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 createINSTANCE_GROUP_NAME \ --templateINSTANCE_TEMPLATE \ --sizeSIZE \ --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 ]
Ersetzen Sie dabei Folgendes:
- 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 Namennic0
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 in etwa 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.
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
Geben Sie beim Erstellen einer MIG an, welche IP-Adressen innerhalb der Netzwerkschnittstellen aus der Instanzvorlage zustandsorientiert sein sollen. Verwenden Sie dafür einen oder mehrere der folgenden Blöcke:
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.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
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" } }
Ersetzen Sie dabei Folgendes:
- 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
durchzones/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 Namennic0
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.
Erforderliche Berechtigungen für diese Aufgabe
Zum Ausführen dieser Aufgabe benötigen Sie die folgenden Berechtigungen:
- Für zonale MIGs benötigen Sie alle Berechtigungen, um die Methode
instanceGroupManagers.patch
aufzurufen. - Bei regionalen MIGs benötigen Sie alle Berechtigungen, die zum Aufrufen der Methode
regionInstanceGroupManagers.patch
erforderlich sind.
Eine MIG verwendet das Dienstkonto Google APIs-Dienst-Agent, um ihre Instanzen zu verwalten. Dieses Dienstkonto hat standardmäßig die Rolle Bearbeiter, die alle erforderlichen Berechtigungen zum Verwalten von zustandsorientierten IP-Adressen enthält.
Wenn Sie eine benutzerdefinierte Rolle erstellen müssen, sind die folgenden Berechtigungen zum Verwalten von zustandsorientierten Netzwerkschnittstellen erforderlich:
compute.addresses.create
zum Erstellen statischer externer IP-Adressencompute.addresses.createInternal
zum Erstellen statischer interner IP-Adressencompute.addresses.use
zum Zuweisen einer statischen externen IP-Adresse zu einer Instanzcompute.addresses.useInternal
zum Zuweisen einer statischen internen IP-Adresse zu einer Instanzcompute.addresses.delete
zum Löschen statischer IP-Adressen beim endgültigen Löschen von Instanzencompute.subnetworks.use
zum Erstellen statischer externer IP-Adressencompute.subnetworks.useInternal
zum Erstellen statischer interner IP-Adressen- Die Rolle Netzwerknutzer (
roles/compute.networkUser
) entweder für das gesamte Hostprojekt oder für ausgewählte Subnetze seiner freigegebenen VPC-Netzwerke, um VM-Instanzen mit statischen IP-Adressen in freigegebenen VPC-Netzwerken oder Subnetzen zu erstellen, die zum Hostprojekt gehören
Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.
Klicken Sie auf den Namen der Instanzgruppe, für die Sie zustandsorientierte IP-Adressen angeben möchten.
Klicken Sie auf Bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.
Erweitern Sie unter Zustandsorientierte Konfiguration die externe IP-Adresse und die interne IP-Adresse, die Sie als zustandsorientiert festlegen möchten.
- Wählen Sie unter Zustandsorientiert die Option Ja aus.
- 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: (Standardeinstellung) 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.
- Klicken Sie nach dem Aktualisieren der zustandsorientierten Konfiguration auf Fertig.
- Klicken Sie auf Speichern, um die Aktualisierung abzuschließen.
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 updateINSTANCE_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 ]
Ersetzen Sie dabei Folgendes:
- 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 Namennic0
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.
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 " } } } } }
Ersetzen Sie dabei Folgendes:
- 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
durchzones/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:
- Wie sich das Entfernen einer Ressource aus einer zustandsorientierten Richtlinie auf den beibehaltenen Status auswirkt
- Aktualisierungen der zustandsorientierten Richtlinie anwenden
Erforderliche Berechtigungen für diese Aufgabe
Zum Ausführen dieser Aufgabe benötigen Sie die folgenden Berechtigungen:
- Für zonale MIGs benötigen Sie alle Berechtigungen, um die Methode
instanceGroupManagers.patch
aufzurufen. - Bei regionalen MIGs benötigen Sie alle Berechtigungen, die zum Aufrufen der Methode
regionInstanceGroupManagers.patch
erforderlich sind.
Eine MIG verwendet das Dienstkonto Google APIs-Dienst-Agent, um ihre Instanzen zu verwalten. Dieses Dienstkonto hat standardmäßig die Rolle Bearbeiter, die alle erforderlichen Berechtigungen zum Verwalten von zustandsorientierten IP-Adressen enthält.
Wenn Sie eine benutzerdefinierte Rolle erstellen müssen, sind die folgenden Berechtigungen zum Verwalten von zustandsorientierten Netzwerkschnittstellen erforderlich:
compute.addresses.create
zum Erstellen statischer externer IP-Adressencompute.addresses.createInternal
zum Erstellen statischer interner IP-Adressencompute.addresses.use
zum Zuweisen einer statischen externen IP-Adresse zu einer Instanzcompute.addresses.useInternal
zum Zuweisen einer statischen internen IP-Adresse zu einer Instanzcompute.addresses.delete
zum Löschen statischer IP-Adressen beim endgültigen Löschen von Instanzencompute.subnetworks.use
zum Erstellen statischer externer IP-Adressencompute.subnetworks.useInternal
zum Erstellen statischer interner IP-Adressen- Die Rolle Netzwerknutzer (
roles/compute.networkUser
) entweder für das gesamte Hostprojekt oder für ausgewählte Subnetze seiner freigegebenen VPC-Netzwerke, um VM-Instanzen mit statischen IP-Adressen in freigegebenen VPC-Netzwerken oder Subnetzen zu erstellen, die zum Hostprojekt gehören
Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.
Klicken Sie auf den Namen der Instanzgruppe, aus der Sie die zustandsorientierte Konfiguration für IP-Adressen entfernen möchten.
Klicken Sie auf Bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.
Erweitern Sie unter Zustandsorientierte Konfiguration die externe IP-Adresse und die interne IP-Adresse, die Sie zustandslos festlegen möchten.
- Ändern Sie die Option Zustandsorientiert in Nein.
- Klicken Sie auf Fertig.
Nachdem Sie die gewünschten Änderungen vorgenommen haben, klicken Sie auf Speichern.
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 updateINSTANCE_GROUP_NAME \ --remove-stateful-internal-ipsNI_NAME [,NI_NAME ,...] \ --remove-stateful-external-ipsNI_NAME [,NI_NAME ,...]
Ersetzen Sie dabei Folgendes:
- 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 updateINSTANCE_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.
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 } } } }
Ersetzen Sie dabei Folgendes:
- 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
durchzones/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:
- Erstellt eine statische interne oder externe IP-Adressreservierung für die bereitgestellten IP-Adressen, sofern noch nicht vorhanden.
- Erstellt eine Instanz aus der Instanzvorlage mit dem angegebenen Instanznamen und den IP-Adressen.
- Erstellt eine instanzspezifische Konfiguration mit der angegebenen zustandsorientierten Konfiguration für die IP-Adressen.
Erforderliche Berechtigungen für diese Aufgabe
Zum Ausführen dieser Aufgabe benötigen Sie die folgenden Berechtigungen:
- Für zonale MIGs benötigen Sie alle Berechtigungen, um die Methode
instanceGroupManagers.createInstances
aufzurufen. - Bei regionalen MIGs benötigen Sie alle Berechtigungen, die zum Aufrufen der Methode
regionInstanceGroupManagers.createInstances
erforderlich sind.
Eine MIG verwendet das Dienstkonto Google APIs-Dienst-Agent, um ihre Instanzen zu verwalten. Dieses Dienstkonto hat standardmäßig die Rolle Bearbeiter, die alle erforderlichen Berechtigungen zum Verwalten von zustandsorientierten IP-Adressen enthält.
Wenn Sie eine benutzerdefinierte Rolle erstellen müssen, sind die folgenden Berechtigungen zum Verwalten von zustandsorientierten Netzwerkschnittstellen erforderlich:
compute.addresses.create
zum Erstellen statischer externer IP-Adressencompute.addresses.createInternal
zum Erstellen statischer interner IP-Adressencompute.addresses.use
zum Zuweisen einer statischen externen IP-Adresse zu einer Instanzcompute.addresses.useInternal
zum Zuweisen einer statischen internen IP-Adresse zu einer Instanzcompute.addresses.delete
zum Löschen statischer IP-Adressen beim endgültigen Löschen von Instanzencompute.subnetworks.use
zum Erstellen statischer externer IP-Adressencompute.subnetworks.useInternal
zum Erstellen statischer interner IP-Adressen- Die Rolle Netzwerknutzer (
roles/compute.networkUser
) entweder für das gesamte Hostprojekt oder für ausgewählte Subnetze seiner freigegebenen VPC-Netzwerke, um VM-Instanzen mit statischen IP-Adressen in freigegebenen VPC-Netzwerken oder Subnetzen zu erstellen, die zum Hostprojekt gehören
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-instanceINSTANCE_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 ]
Ersetzen Sie dabei Folgendes:
- 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.
- Adresse. URL einer statischen IP-Adressreservierung, z. B.
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.
Verwenden Sie zum Erstellen einer VM mit einer vordefinierten statischen IP-Adresse einen oder mehrere der folgenden Blöcke:
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 einer 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
.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
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 " }, ... }, ... } }, ... ] }
Ersetzen Sie dabei Folgendes:
- 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
durchzones/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, entwederaddress
oderliteral
, 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, entwederaddress
oderliteral
, 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" } ]
Erforderliche Berechtigungen für diese Aufgabe
Zum Ausführen dieser Aufgabe benötigen Sie die folgenden Berechtigungen:
- Für zonale MIGs benötigen Sie alle Berechtigungen, um die Methode
instanceGroupManagers.updatePerInstanceConfigs
aufzurufen. - Bei regionalen MIGs benötigen Sie alle Berechtigungen, die zum Aufrufen der Methode
regionInstanceGroupManagers.updatePerInstanceConfigs
erforderlich sind.
Eine MIG verwendet das Dienstkonto Google APIs-Dienst-Agent, um ihre Instanzen zu verwalten. Dieses Dienstkonto hat standardmäßig die Rolle Bearbeiter, die alle erforderlichen Berechtigungen zum Verwalten von zustandsorientierten IP-Adressen enthält.
Wenn Sie eine benutzerdefinierte Rolle erstellen müssen, sind die folgenden Berechtigungen zum Verwalten von zustandsorientierten Netzwerkschnittstellen erforderlich:
compute.addresses.create
zum Erstellen statischer externer IP-Adressencompute.addresses.createInternal
zum Erstellen statischer interner IP-Adressencompute.addresses.use
zum Zuweisen einer statischen externen IP-Adresse zu einer Instanzcompute.addresses.useInternal
zum Zuweisen einer statischen internen IP-Adresse zu einer Instanzcompute.addresses.delete
zum Löschen statischer IP-Adressen beim endgültigen Löschen von Instanzencompute.subnetworks.use
zum Erstellen statischer externer IP-Adressencompute.subnetworks.useInternal
zum Erstellen statischer interner IP-Adressen- Die Rolle Netzwerknutzer (
roles/compute.networkUser
) entweder für das gesamte Hostprojekt oder für ausgewählte Subnetze seiner freigegebenen VPC-Netzwerke, um VM-Instanzen mit statischen IP-Adressen in freigegebenen VPC-Netzwerken oder Subnetzen zu erstellen, die zum Hostprojekt gehören
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 createINSTANCE_GROUP_NAME \ --instanceINSTANCE_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-actionMINIMAL_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 updateINSTANCE_GROUP_NAME \ --instanceINSTANCE_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-actionMINIMAL_ACTION ]
Ersetzen Sie dabei Folgendes:
- 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.
- Adresse. URL einer statischen IP-Adressreservierung, z. B.
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:
- Aktualisiert die instanzspezifische Konfiguration für die Instanz
file-server
:- Fügt eine Konfiguration einer zustandsorientierten externen IP-Adresse hinzu, die auf die Adressreservierung
file-server-ip
verweist. - Die Konfiguration des zustandsorientierten Datenlaufwerks bleibt unverändert.
- Fügt eine Konfiguration einer zustandsorientierten externen IP-Adresse hinzu, die auf die Adressreservierung
- 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 derfile-server-ip
-Reservierung zu.
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 " }, ... ] }
Ersetzen Sie dabei Folgendes:
- 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
durchzones/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. Wennfingerprint
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:
- Fügt eine Konfiguration einer zustandsorientierten externen IP-Adresse hinzu, die auf die Adressreservierung
file-server-ip
verweist. - 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:
- Auswirkungen des Entfernens einer zustandsorientierten Laufwerkskonfiguration aus instanzspezifischen Konfigurationen auf den beibehaltenen Status.
- Aktualisierungen von instanzspezifischen Konfigurationen anwenden
Erforderliche Berechtigungen für diese Aufgabe
Zum Ausführen dieser Aufgabe benötigen Sie die folgenden Berechtigungen:
- Für zonale MIGs benötigen Sie alle Berechtigungen, um die Methode
instanceGroupManagers.patchPerInstanceConfigs
aufzurufen. - Bei regionalen MIGs benötigen Sie alle Berechtigungen, die zum Aufrufen der Methode
regionInstanceGroupManagers.patchPerInstanceConfigs
erforderlich sind.
Eine MIG verwendet das Dienstkonto Google APIs-Dienst-Agent, um ihre Instanzen zu verwalten. Dieses Dienstkonto hat standardmäßig die Rolle Bearbeiter, die alle erforderlichen Berechtigungen zum Verwalten von zustandsorientierten IP-Adressen enthält.
Wenn Sie eine benutzerdefinierte Rolle erstellen müssen, sind die folgenden Berechtigungen zum Verwalten von zustandsorientierten Netzwerkschnittstellen erforderlich:
compute.addresses.create
zum Erstellen statischer externer IP-Adressencompute.addresses.createInternal
zum Erstellen statischer interner IP-Adressencompute.addresses.use
zum Zuweisen einer statischen externen IP-Adresse zu einer Instanzcompute.addresses.useInternal
zum Zuweisen einer statischen internen IP-Adresse zu einer Instanzcompute.addresses.delete
zum Löschen statischer IP-Adressen beim endgültigen Löschen von Instanzencompute.subnetworks.use
zum Erstellen statischer externer IP-Adressencompute.subnetworks.useInternal
zum Erstellen statischer interner IP-Adressen- Die Rolle Netzwerknutzer (
roles/compute.networkUser
) entweder für das gesamte Hostprojekt oder für ausgewählte Subnetze seiner freigegebenen VPC-Netzwerke, um VM-Instanzen mit statischen IP-Adressen in freigegebenen VPC-Netzwerken oder Subnetzen zu erstellen, die zum Hostprojekt gehören
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 updateINSTANCE_GROUP_NAME \ --instanceINSTANCE_NAME \ --remove-stateful-internal-ipsNI_NAME [,NI_NAME ,...] \ --remove-stateful-external-ipsNI_NAME [,NI_NAME ,...] [--no-update-instance | --update-instance] \ [--instance-update-minimal-actionMINIMAL_ACTION ]
Ersetzen Sie dabei Folgendes:
- 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:
- Entfernt die zustandsorientierte Konfiguration für die externe IP-Adresse innerhalb der Netzwerkschnittstelle
nic0
aus der instanzspezifischen Konfiguration fürnode-1
. - 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 derpreservedStateFromConfig
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. - 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.
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 " }, ... ] }
Ersetzen Sie dabei Folgendes:
- 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
durchzones/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. Wennfingerprint
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:
- Wie Sie nur zustandsorientierte IP-Adressen entfernen, erfahren Sie unter Zustandsorientierte IP-Adressen als zustandslos deklarieren.
- Informationen zum Entfernen der gesamten zustandsorientierten Konfiguration aus einer zustandsorientierten Richtlinie finden Sie unter Zustandsorientierte Richtlinie entfernen.
Informationen zum Entfernen der Konfiguration aus einer instanzspezifischen Konfiguration für eine bestimmte VM in einer MIG finden Sie in den folgenden Dokumenten:
- Informationen zum Entfernen von zustandsorientierten IP-Adressen finden Sie unter Verknüpfung einer statischen IP-Adresse mit einer vorhandenen VM in einer MIG aufheben.
- Informationen zum Entfernen der gesamten zustandsorientierten Konfiguration aus einer instanzspezifischen Konfiguration finden Sie unter Zustandsorientierte Konfiguration für eine bestimmte VM entfernen.
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
aufON_PERMANENT_INSTANCE_DELETION
. - Wenn Sie Reservierungen statischer IP-Adressen manuell freigeben möchten, setzen Sie den Parameter
autoDelete
aufNEVER
. 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
- Zustandsorientierte Konfigurationen anwenden, aufrufen und entfernen
- Informationen zu MIGs und verwalteten Instanzen abrufen
- Mit verwalteten Instanzen arbeiten