Jeder Metadateneintrag wird auf dem Metadatenserver als Schlüssel/Wert-Paare gespeichert. Bei Metadatenschlüsseln wird zwischen Groß- und Kleinschreibung unterschieden. Ihre Schlüssel können entweder vordefinierte oder benutzerdefinierte Metadatenschlüssel sein.
Mit benutzerdefinierten Metadaten können Sie eigene Metadaten-Schlüssel/Wert-Paare auf einer einzelnen VM oder in einem Projekt erstellen und verwenden. Sie können neue benutzerdefinierte Metadatenschlüssel hinzufügen, die Werte vorhandener Schlüssel aktualisieren und benutzerdefinierte Metadateneinträge entfernen, wenn Sie diese nicht mehr benötigen. Das Festlegen benutzerdefinierter Metadaten ist nützlich, um beliebige Werte an VMs in einem Projekt zu übergeben. Es ist auch nützlich zum Erstellen von Startscripts und Shutdown-Scripts.
Dieses Dokument enthält Informationen zu folgenden Themen:
- Benutzerdefinierte Metadaten auf VMs hinzufügen oder aktualisieren
- Benutzerdefinierte Metadaten aus VMs entfernen
Hinweise
- Sehen Sie sich die Grundlagen dazu an, wie Sie VM-Metadaten für Compute Engine definieren, kategorisieren und anordnen können. Weitere Informationen finden Sie unter Informationen zu VM-Metadaten.
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft.
Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.
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
-
Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:
gcloud init
- Legen Sie eine Standardregion und -zone fest.
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
-
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Festlegen oder Entfernen benutzerdefinierter Metadaten auf VMs benötigen:
-
Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1
) für die VM oder das Projekt -
Wenn Ihre VMs Dienstkonten verwenden: Service Account User (
roles/iam.serviceAccountUser
) für das Dienstkonto oder Projekt
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Festlegen oder Entfernen benutzerdefinierter Metadaten auf VMs erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um benutzerdefinierte Metadaten auf VMs festzulegen oder zu entfernen:
-
Wenn Ihre VMs Dienstkonten verwenden:
iam.serviceAccounts.actAs
-
So können Sie benutzerdefinierte projektweite Metadaten hinzufügen, aktualisieren oder entfernen:
-
compute.projects.get
compute.projects.setCommonInstanceMetadata
-
-
So können Sie benutzerdefinierte projektzonale Metadaten hinzufügen, aktualisieren oder entfernen:
-
compute.instanceSettings.get
-
compute.instanceSettings.update
-
-
So können Sie benutzerdefinierte Instanzmetadaten hinzufügen, aktualisieren oder entfernen:
-
compute.instances.get
-
compute.instances.setMetadata
-
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Beschränkungen
Compute Engine erzwingt insgesamt ein Limit von 512 KB für alle Metadateneinträge. Auch die Größe jedes einzelnen key
und value
ist nach oben hin begrenzt:
- Jeder Metadaten-
key
darf maximal 128 Byte groß sein. Bei jedem Metadaten-
key
wird zwischen Groß- und Kleinschreibung unterschieden.Für projektzonale Metadaten können Sie in Compute Engine nicht zwei separate Metadatenschlüssel mit demselben String erstellen, selbst wenn sich die Groß-/Kleinschreibung unterscheidet. Wenn Sie beispielsweise bereits einen projektzonalen Metadatenschlüssel namens
project-zonal-metadata-key
haben, können Sie keine neuen projektzonalen Metadatenschlüssel wieProject-Zonal-Metadata-Key
,PROJECT-ZONAL-METADATA-KEY
oder andere Varianten des Strings erstellen.Für jeden Metadaten-
value
gilt ein Höchstwert von 256 KB.Bei allen Metadaten-
value
wird die Groß- und Kleinschreibung berücksichtigt, mit Ausnahme von booleschen Werten.
SSH-Schlüssel werden beispielsweise als benutzerdefinierte Metadaten unter dem Schlüssel ssh-keys
gespeichert. Wenn Ihr Metadateninhalt oder value
für diesen Schlüssel die Grenze von 256 KB überschreitet, können Sie keine weiteren SSH-Schlüssel hinzufügen. Sollten Sie Probleme mit dieser Einschränkung haben, können Sie ungenutzte Schlüssel entfernen, um Platz für neue zu schaffen.
Wenn Sie den Inhalt des Start- oder Shutdown-Skripts direkt angeben, wird dieser Inhalt möglicherweise auch als benutzerdefinierte Metadaten gespeichert und auf diese Größenbeschränkung angerechnet. Dies können Sie vermeiden, indem Sie Ihre Startskripts oder Shutdown-Skripts als Datei speichern, die an einem externen Speicherort wie Cloud Storage gehostet wird. Geben Sie beim Erstellen einer VM dann die Startskript-URL an. Auf diese Weise werden diese Dateien auf die VM heruntergeladen und nicht auf dem Metadatenserver gespeichert.
Boolesche Werte
Für Felder, die die booleschen Werte TRUE
oder FALSE
annehmen, können die folgenden Werte verwendet werden:
Status | Alternative Werte |
---|---|
TRUE |
Y , Yes , 1 |
FALSE |
N , No , 0 |
Bei booleschen Werten wird nicht zwischen Groß- und Kleinschreibung unterschieden. Sie können z. B. False
, false
oder FALSE
verwenden, um ein Feature zu deaktivieren.
Benutzerdefinierte Metadaten auf VMs festlegen
In diesem Abschnitt finden Sie Informationen zum Hinzufügen neuer benutzerdefinierter Metadaten und zum Aktualisieren vorhandener benutzerdefinierter Metadatenwerte für Ihre Compute Engine-VMs auf eine der folgenden Arten:
- Benutzerdefinierte projektweite Metadaten festlegen, um benutzerdefinierte Projektmetadaten für alle VMs in Ihrem Projekt hinzuzufügen oder zu aktualisieren.
- Benutzerdefinierte projektzonale Metadaten festlegen (Vorschau), um benutzerdefinierte Projektmetadaten mit einem zonalen Bereich für VMs innerhalb des Projekts hinzuzufügen oder zu aktualisieren.
- Benutzerdefinierte Instanzmetadaten festlegen, um benutzerdefinierte Instanzmetadaten für eine bestimmte VM hinzuzufügen oder zu aktualisieren.
Benutzerdefinierte projektweite Metadaten festlegen
Sie können die benutzerdefinierten Metadaten für alle Instanzen in einem Projekt hinzufügen oder aktualisieren. Verwenden Sie dazu die Google Cloud Console, die Google Cloud CLI oder REST.
Folgen Sie dieser Anleitung, um Metadateneinstellungen auf alle VMs im Projekt anzuwenden.
Wenn Sie beispielsweise ein projektweites Metadatenpaar für baz=bat
definieren, wird es automatisch auf alle VMs im Projekt angewendet.
Console
- Rufen Sie in der Google Cloud Console die Seite Metadaten auf.
- Klicken Sie auf Bearbeiten.
- Fügen Sie einen Eintrag hinzu oder bearbeiten Sie ihn.
- Speichern Sie die Änderungen.
gcloud
Führen Sie den Befehl project-info add-metadata
aus.
gcloud compute project-info add-metadata \ --metadata=KEY=VALUE
Dabei gilt:
KEY
: der Name Ihres MetadatenschlüsselsVALUE
: der für diesen Schlüssel gespeicherte Wert
Beispiel
Wenn Sie beispielsweise zwei neue Einträge foo=bar
und baz=bat
für ein Projekt festlegen möchten, führen Sie den folgenden Befehl aus:
gcloud compute project-info add-metadata \ --metadata=foo=bar,baz=bat
Sie können mit dem Flag --metadata-from-file
optional eine oder mehrere Dateien angeben, aus denen Metadaten gelesen werden sollen.
REST
Optional. Für ein optimistisches Sperrverfahren können Sie optional einen Fingerabdruck angeben.
Ein Fingerabdruck ist eine Reihe zufälliger Zeichen, die von Compute Engine erstellt wird. Dieser Fingerabdruck ändert sich nach jeder Anfrage. Geben Sie einen falschen an, wird Ihre Anfrage abgelehnt.
Wenn Sie keinen Fingerabdruck angeben, wird keine Konsistenzprüfung durchgeführt. Die
projects().setCommonInstanceMetadata
-Anfrage ist dann erfolgreich. Dieses Verhalten unterscheidet sich von den Methodeninstances().setMetadata
undinstanceSettings().patch
, bei denen immer ein Fingerabdruck erforderlich ist.Rufen Sie die Methode
project().get
auf, um den aktuellen Fingerabdruck eines Projekts abzurufen.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
Die Ausgabe sieht etwa so aus:
{ "name": "myproject", "commonInstanceMetadata": { "kind": "compute#metadata", "fingerprint": "FikclA7UBC0=", ... } }
Senden Sie eine Anfrage an die Methode
projects().setCommonInstanceMetadata
und legen Sie die benutzerdefinierten Metadaten-Schlüssel/Wert-Paare fest.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/setCommonInstanceMetadata { "fingerprint": "FikclA7UBC0=", "items": [ { "key": "foo", "value": "bar" } ] }
Ersetzen Sie PROJECT_ID
durch Ihre Projekt-ID.
Benutzerdefinierte projektzonale Metadaten festlegen
Sie können die projektzonale Metadateneinträge für Ihre VMs auf eine der folgenden Arten hinzufügen oder aktualisieren:
- Sie können neue benutzerdefinierte Metadatenschlüssel auf projektzonaler Ebene hinzufügen und die Metadatenwerte für alle VMs festlegen, die sich in einer bestimmten Zone in einem Projekt befinden.
- Sie können die Werte vorhandener benutzerdefinierter projektzonaler Metadatenschlüssel für alle VMs aktualisieren, die sich in einer bestimmten Zone in einem Projekt befinden.
- Bei Projektmetadatenschlüsseln, die bereits projektweite Werte haben, können Sie diese projektweiten Werte für alle VMs in einer bestimmten Zone überschreiben und festlegen, dass diese VMs stattdessen projektzonale Werte verwenden sollen.
Wichtige Hinweise vor dem Festlegen von benutzerdefinierten projektzonalen Metadaten
Projekt- und projektzonale Metadateneinträge werden im selben Verzeichnis project/
gespeichert. Wenn Sie verschiedene Werte für dieselben benutzerdefinierten Metadatenschlüssel für VMs auf Projektebene und auf projektzonaler Ebene festlegen, haben die projektzonalen Metadatenwerte für diese Schlüssel Vorrang vor den projektweiten Metadatenwerten in den entsprechenden Zonen.
- Wenn Sie einen projektzonalen Wert für einen Metadatenschlüssel hinzufügen, der bereits einen projektweiten Wert hat, überschreibt Compute Engine den projektweiten Wert für die VMs in der angegebenen Zone und aktualisiert das Verzeichnis
/project
mit dem projektzonalen Wert. - Wenn Sie einen neuen projektweiten Metadatenwert für einen Metadatenschlüssel hinzufügen, der bereits einen projektzonalen Wert hat, ändert sich nichts. Compute Engine behält den projektzonalen Wert im Verzeichnis
/project
der jeweiligen Zone bei. - Wenn Sie keinen projektzonalen Wert für einen benutzerdefinierten Metadatenschlüssel in einer bestimmten Zone angeben, der Schlüssel jedoch einen projektweiten Wert hat, haben Ihre VMs in diesen Zonen weiterhin die projektweiten Werte.
Prozedur
Sie können die benutzerdefinierten Metadaten für alle VM-Instanzen in einer bestimmten Zone in einem Projekt über die Google Cloud CLI oder REST hinzufügen oder aktualisieren.
gcloud
Mit dem Befehl
gcloud beta compute project-zonal-metadata add
können Sie benutzerdefinierte projektzonale Metadaten hinzufügen oder aktualisieren.gcloud beta compute project-zonal-metadata add \ --zone=ZONE \ --project=PROJECT_ID \ --metadata=KEY1=VALUE1,KEY2=VALUE2,...
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
: die Zone, in der Sie projektzonale Metadaten hinzufügen oder aktualisieren möchten.KEY1
,KEY2
, ...: die benutzerdefinierten projektzonalen Metadatenschlüssel, für die Sie Werte hinzufügen oder aktualisieren möchten.VALUE1
,VALUE2
, ...: die projektzonalen Metadatenwerte, die Sie für Ihre vorhandenen und neuen projektzonalen Metadatenschlüssel festlegen möchten. Je nach benutzerdefiniertem Metadatenschlüssel und -wert wird eine der folgenden Aktionen ausgeführt:Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein projektweiter Schlüssel ist, überschreibt Compute Engine den projektweiten Metadatenwert und verwendet den projektzonalen Wert für alle VMs in der angegebenen Zone. Alle VMs in der angegebenen Zone übernehmen den projektzonalen Wert. Wenn Sie zukünftige Änderungen am projektweiten Wert für denselben Schlüssel vornehmen, wirken sich diese Aktualisierungen nicht auf den projektzonalen Wert aus und die VMs in dieser Zone haben weiterhin den projektzonalen Wert als Projektmetadaten.
Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein vorhandener projektzonaler Metadatenschlüssel ist und der angegebene Metadatenwert ein neuer Wert ist, aktualisiert Compute Engine den projektzonalen Wert des vorhandenen Schlüssels.
Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein neuer Schlüssel ist, der nicht Teil der vorhandenen projektweiten oder projektzonalen Metadaten ist, erstellt Compute Engine den projektzonalen Metadatenschlüssel und fügt diesen Metadatenwert hinzu.
Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein vorhandener projektzonaler Metadatenschlüssel ist und der angegebene Metadatenwert mit dem vorhandenen Wert übereinstimmt, bleibt der projektzonale Metadateneintrag unverändert.
Beispiel: Neuen benutzerdefinierten projektzonalen Metadateneintrag hinzufügen
Angenommen, Sie haben ein Projekt namens my-project
mit den folgenden benutzerdefinierten Metadaten:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"value-1"
und"key-2":"value-2"
Führen Sie den folgenden Befehl aus, um "key-4":"value-4"
als neues benutzerdefiniertes projektzonales Metadatenpaar in der Zone us-central1-a
hinzuzufügen:
gcloud beta compute project-zonal-metadata add \ --metadata=key-4=value-4 \ --project=my-project \ --zone=us-central1-a
Beispiel: Werte eines vorhandenen benutzerdefinierten projektzonalen Metadateneintrags aktualisieren
Betrachten Sie dasselbe Beispielprojekt my-project
, das jetzt die folgenden benutzerdefinierten Metadaten enthält:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"value-1"
,"key-2":"value-2"
und"key-4":"value-4"
Führen Sie den folgenden Befehl aus, um die projektzonalen Metadatenwerte von key-1
und key-4
in der Zone us-cerntral1-a
mit neuen Werten zu aktualisieren.
gcloud beta compute project-zonal-metadata add \ --metadata=key-1=new-value-1,key-4=new-value-4 \ --project=my-project \ --zone=us-central1-a
Beispiel: Projektweiten Wert für einen Metadatenschlüssel überschreiben und projektzonalen Wert verwenden
Betrachten Sie dasselbe Beispielprojekt my-project
, das jetzt die folgenden benutzerdefinierten Metadaten enthält:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"new-value-1"
,"key-2":"value-2"
und"key-4":"new-value-4"
In diesem Beispielprojekt wird key-3
verwendet, das den projektweiten Metadatenwert value-c
hat. Angenommen, Sie möchten einen projektzonalen Metadatenwert value-3
für diesen Schlüssel für alle VMs in der Zone us-central1-a
festlegen. Wenn Sie den Vorgang ausführen, überschreibt Compute Engine für alle VMs in der Zone us-central1-a
die projektweiten Werte und verwendet die projektzonalen Werte. VMs in allen anderen Zonen des Projekts behalten ihre geltenden projektweiten oder projektzonalen Metadatenwerte für key-3
bei.
Führen Sie den folgenden Befehl aus, um den projektweiten Wert für key-3
zu überschreiben und einen projektzonalen Wert festzulegen:
gcloud beta compute project-zonal-metadata add \ --metadata=key-3=value-3 \ --project=my-project \ --zone=us-central1-a
REST
Rufen Sie den aktuellen Fingerabdruck ab und rufen Sie alle vorhandenen Schlüssel/Wert-Paare für das Projekt in dieser Zone auf.
Für ein optimistisches Sperrverfahren müssen Sie einen Fingerabdruck angeben. Ein Fingerabdruck ist eine Reihe zufälliger Zeichen, die von Compute Engine erstellt wird. Dieser Fingerabdruck ändert sich jedes Mal, wenn Sie eine Anfrage zum Hinzufügen, Aktualisieren oder Entfernen von projektzonalen Metadaten stellen. Wenn Sie einen nicht übereinstimmenden Fingerabdruck angeben, lehnt Compute Engine Ihre Anfrage ab.
Wenn Sie keinen Fingerabdruck angeben, wird eine Konsistenzprüfung durchgeführt. Ihre Aktualisierungsanfrage ist dann nicht erfolgreich. Das führt dazu, dass nur jeweils eine Anfrage auf einmal durchgeführt wird und Konflikte vermieden werden. Dieses Verhalten entspricht
instances().setMetadata
, wobei immer ein Fingerabdruck erforderlich ist.Führen Sie eine
GET
-Anfrage an die MethodeinstanceSettings().get
aus, um den aktuellen Fingerabdruck der projektzonalen Metadaten abzurufen.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceSettings
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
: die Zone, in der Sie die projektzonalen Metadaten festlegen möchten.
Das folgende Beispiel zeigt eine Ausgabe für diese Anfrage:
{ "fingerprint": "VlRIl8dx9vk=", "metadata": { ... } }
Wenn Sie die projektzonalen Metadaten hinzufügen oder aktualisieren möchten, stellen Sie eine
PATCH
-Anfrage an die MethodeinstanceSettings().patch
. Sie müssen in Ihrer Anfrage Folgendes angeben:Eine Aktualisierungsmaske Verwenden Sie den Abfrageparameter
update_mask
. Die Aktualisierungsmaske muss die Metadatenschlüssel für Folgendes enthalten:- Die neuen benutzerdefinierten projektzonalen Metadaten, die Sie hinzufügen möchten
- Die vorhandenen benutzerdefinierten projektzonalen Metadaten, für die Sie Werte aktualisieren möchten
Sie müssen den String
metadata.items.
als Präfix für jeden Schlüssel hinzufügen, z. B.metadata.items.key1,metadata.items.key3
.Geben Sie im Anfragetext Folgendes an:
- Die Metadatenschlüssel und -werte für die neuen benutzerdefinierten projektzonalen Metadaten, die Sie hinzufügen möchten
- Die Metadatenschlüssel und -werte der vorhandenen benutzerdefinierten projektzonalen Metadaten, die Sie aktualisieren möchten
- Den aktuellen Fingerabdruckwert
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceSettings?update_mask=PREFIXED_METADATA_KEYS { "fingerprint": "FINGER_PRINT", "metadata": { "items": { "KEY1": "VALUE1", "KEY2": "VALUE2", ... } } }
Ersetzen Sie Folgendes:
PROJECT_ID
: die ID des Projekts.ZONE
: die Zone, in der Sie die projektzonalen Metadaten festlegen möchten.PREFIXED_METADATA_KEYS
: die Liste der Metadatenschlüssel für Folgendes, wobei jedem Schlüssel der Stringmetadata.items.
vorangestellt ist:- Die neuen benutzerdefinierten projektzonalen Metadaten, die Sie hinzufügen möchten
- Die vorhandenen benutzerdefinierten projektzonalen Metadaten, für die Sie Werte aktualisieren möchten
Angenommen, Ihre aktuellen projektzonalen Metadatenschlüssel für das Projekt sind
key-1
undkey-2
. Wenn Sie einen neuen Metadatenschlüsselkey-3
hinzufügen und auch einen der aktuellen Metadatenschlüssel,key-1
, aktualisieren möchten, muss die Aktualisierungsmaske den folgenden String haben:metadata.items.key1,metadata.items.key3
FINGER_PRINT
: der aktuelle Fingerabdruckwert.KEY1
,KEY2
, ...: die benutzerdefinierten projektzonalen Metadatenschlüssel, für die Sie Werte hinzufügen oder aktualisieren möchten. Geben Sie alle benutzerdefinierten projektzonalen Metadatenschlüssel an, die Sie in der Aktualisierungsmaske angegeben haben.VALUE1
,VALUE2
, ...: die projektzonalen Metadatenwerte, die Sie für Ihre vorhandenen und neuen projektzonalen Metadatenschlüssel festlegen möchten. Je nach benutzerdefiniertem Metadatenschlüssel und -wert wird eine der folgenden Aktionen ausgeführt:- Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein projektweiter Schlüssel ist, überschreibt Compute Engine den projektweiten Metadatenwert und verwendet den projektzonalen Wert für alle VMs in der angegebenen Zone. Alle VMs in der angegebenen Zone übernehmen den projektzonalen Wert. Wenn Sie zukünftige Änderungen am projektweiten Wert für denselben Schlüssel vornehmen, wirken sich diese Aktualisierungen nicht auf den projektzonalen Wert aus und die VMs in dieser Zone haben weiterhin den projektzonalen Wert als Projektmetadaten.
- Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein vorhandener projektzonaler Metadatenschlüssel ist und der angegebene Metadatenwert ein neuer Wert ist, aktualisiert Compute Engine den projektzonalen Wert des vorhandenen Schlüssels.
- Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein neuer Schlüssel ist, der nicht Teil der vorhandenen projektweiten oder projektzonalen Metadaten ist, erstellt Compute Engine den projektzonalen Metadatenschlüssel und fügt diesen Metadatenwert hinzu.
- Wenn der entsprechende benutzerdefinierte Metadatenschlüssel ein vorhandener projektzonaler Metadatenschlüssel ist und der angegebene Metadatenwert mit dem vorhandenen Wert übereinstimmt, bleibt der projektzonale Metadateneintrag unverändert.
Beispiel: Neuen benutzerdefinierten projektzonalen Metadateneintrag hinzufügen
Angenommen, Sie haben ein Projekt namens my-project
mit den folgenden benutzerdefinierten Metadaten:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"value-1"
und"key-2":"value-2"
Wenn Sie "key-4":"value-4"
als neues benutzerdefiniertes projektzonales Metadatenpaar in der Zone us-central1-a
hinzufügen möchten, stellen Sie folgende PATCH
-Anfrage:
PATCH https://compute.googleapis.com/compute/beta/projects/my-project/zones/us-central1-a/instanceSettings?update_mask=metadata.items.key-4 { "fingerprint": "VlRIl8dx9vk=", "metadata": { "items": { "key-4": "value-4" } } }
Beispiel: Werte eines vorhandenen benutzerdefinierten projektzonalen Metadateneintrags aktualisieren
Betrachten Sie dasselbe Beispielprojekt my-project
, das jetzt die folgenden benutzerdefinierten Metadaten enthält:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"value-1"
,"key-2":"value-2"
und"key-4":"value-4"
Wenn Sie die projektzonalen Metadatenwerte von key-1
und key-4
in der Zone us-cerntral1-a
mit neuen Werten aktualisieren möchten, stellen Sie folgende PATCH
-Anfrage:
PATCH https://compute.googleapis.com/compute/beta/projects/my-project/zones/us-central1-a/instanceSettings?update_mask=metadata.items.key-1,metadata.items.key-4 { "fingerprint": "VlRIl8dx9vk=", "metadata": { "items": { "key-1": "new-value-1", "key-4": "new-value-4" } } }
Beispiel: Projektweiten Wert für einen Metadatenschlüssel überschreiben und projektzonalen Wert verwenden
Betrachten Sie dasselbe Beispielprojekt my-project
, das jetzt die folgenden benutzerdefinierten Metadaten enthält:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"new-value-1"
,"key-2":"value-2"
und"key-4":"new-value-4"
In diesem Beispielprojekt wird key-3
verwendet, das den projektweiten Metadatenwert value-c
hat. Angenommen, Sie möchten einen projektzonalen Metadatenwert value-3
für diesen Schlüssel für alle VMs in der Zone us-central1-a
festlegen. Wenn Sie den Vorgang ausführen, überschreibt Compute Engine für alle VMs in der Zone us-central1-a
die projektweiten Werte und verwendet die projektzonalen Werte. VMs in allen anderen Zonen des Projekts behalten ihre geltenden projektweiten oder projektzonalen Metadatenwerte für key-3
bei.
Wenn Sie den projektweiten Metadatenwert für key-3
überschreiben und stattdessen den benutzerdefinierten projektzonalen Wert value-3
verwenden möchten, stellen Sie folgende PATCH
-Anfrage:
PATCH https://compute.googleapis.com/compute/beta/projects/my-project/zones/us-central1-a/instanceSettings?update_mask=metadata.items.key-3 { "fingerprint": "VlRIl8dx9vk=", "metadata": { "items": { "key-3": "value-3" } } }
Benutzerdefinierte Instanzmetadaten festlegen
Sie können die benutzerdefinierten Metadaten für eine einzelne VM-Instanz mithilfe der Google Cloud Console, der Google Cloud CLI oder REST hinzufügen oder aktualisieren.
Sie können benutzerdefinierte Instanzmetadaten auf eine der folgenden Arten festlegen:
- Bei neuen VMs können Sie benutzerdefinierte Metadaten beim Erstellen der VM hinzufügen.
- Bei vorhandenen VMs können Sie benutzerdefinierte Metadaten hinzufügen oder aktualisieren, wenn die VM ausgeführt wird.
Benutzerdefinierte Instanzmetadaten bei der VM-Erstellung hinzufügen
Folgen Sie dieser Anleitung, um Metadaten auf einer bestimmten VM-Instanz zum Zeitpunkt der Erstellung hinzuzufügen.
Console
Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.
Geben Sie die VM-Details an
Maximieren Sie den Abschnitt Erweiterte Optionen und tun Sie Folgendes:
- Maximieren Sie den Bereich Verwaltung.
- Klicken Sie im Abschnitt Metadaten auf Element hinzufügen, um mehrere Schlüssel/Wert-Paare für Ihre benutzerdefinierten Metadaten hinzuzufügen.
Klicken Sie auf Erstellen, um die VM zu erstellen.
gcloud
Verwenden Sie zum Festlegen benutzerdefinierter Metadaten den Befehl gcloud compute instances create
mit dem Flag --metadata
.
gcloud compute instances create VM_NAME \ --metadata=KEY=VALUE
Dabei gilt:
VM_NAME
: der Name Ihrer VMKEY
: der Name Ihres MetadatenschlüsselsVALUE
: der für diesen Schlüssel gespeicherte Wert
Beispiel
Mit dem folgenden Befehl legen Sie beispielsweise auf einer VM mit dem Namen example-instance
einen neuen Schlüssel foo
mit dem Wert bar
fest:
gcloud compute instances create example-instance \ --metadata=foo=bar
REST
Verwenden Sie die Methode instances.insert
und geben Sie die benutzerdefinierten Metadaten als Teil des Attributs metadata
in Ihrer Anfrage an:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/zones/ZONE
/instances { "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name": "VM_NAME
", "...": [ { } ], "metadata": { "items": [ { "key": "KEY", "value": "VALUE" } ] }, .. }
Dabei gilt:
PROJECT_ID
: Ihre Projekt-IDZONE
ist die Zone, in der die VM erstellt werden soll.MACHINE_TYPE
legt einen vordefinierten oder benutzerdefinierten Maschinentyp für die neue VM fest.VM_NAME
ist der Name der neuen VM.KEY
: der Name Ihres MetadatenschlüsselsVALUE
: der für diesen Schlüssel gespeicherte Wert
Benutzerdefinierte Instanzmetadaten auf einer vorhandenen VM hinzufügen oder aktualisieren
Folgen Sie dieser Anleitung, um Metadaten auf einer bestimmten VM-Instanz zu aktualisieren, die bereits vorhanden ist.
Console
- Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
- Klicken Sie auf die Instanz, deren Metadaten Sie aktualisieren möchten.
- Klicken Sie oben auf der Seite auf Bearbeiten.
- Klicken Sie unter Benutzerdefinierte Metadaten auf Element hinzufügen oder bearbeiten Sie vorhandene Metadaten.
- Speichern Sie die Änderungen.
gcloud
Wenn Sie VM-Metadaten mit der gcloud CLI aktualisieren, fügen Sie neue Daten hinzu. Geben Sie nur die Metadatenschlüssel an, die Sie hinzufügen oder ändern möchten. Wenn ein Schlüssel bereits existiert, wird der Wert des Schlüssels mit dem neuen Wert aktualisiert.
Führen Sie den Befehl instances add-metadata
aus:
gcloud compute instances add-metadata VM_NAME \ --metadata=KEY=VALUE,KEY=VALUE
Dabei gilt:
VM_NAME
: der Name Ihrer VMKEY
: der Name Ihres MetadatenschlüsselsVALUE
: der für diesen Schlüssel gespeicherte Wert
Beispiele
Wenn Sie den Eintrag foo=bar
hinzufügen möchten, verwenden Sie Folgendes:
gcloud compute instances add-metadata VM_NAME \ --metadata=foo=bar
Wenn Sie den Eintrag foo=bar
in foo=bat
ändern möchten, verwenden Sie Folgendes:
gcloud compute instances add-metadata VM_NAME \ --metadata=foo=bat
REST
Rufen Sie den aktuellen Fingerabdruck ab und rufen Sie alle vorhandenen Schlüssel/Wert-Paare für die VM auf. Rufen Sie dazu die Methode
instances().get
auf.Ein Fingerabdruck ist eine Reihe zufälliger Zeichen, die von Compute Engine erstellt und für ein optimistisches Sperrverfahren genutzt werden. Zum Aktualisieren der VM müssen Sie den entsprechenden Fingerabdruckwert angeben. Dieser Fingerabdruck ändert sich nach jeder Anfrage. Geben Sie einen falschen an, wird Ihre Anfrage abgelehnt. Das führt dazu, dass nur jeweils eine Aktualisierung auf einmal durchgeführt wird und Konflikte vermieden werden.
GET https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances/VM_NAMEErsetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-IDZONE
: Zone, in der sich Ihre VM befindetVM_NAME
: Name Ihrer VM
Die Ausgabe sieht in etwa so aus:
{ ... "name": "example-instance", "metadata": { "kind": "compute#metadata", "fingerprint": "zhma6O1w2l8=" "items": [ { "key": "foo", "value": "bar" } ] }, ... }
Stellen Sie eine Anfrage an die Methode
instances().setMetadata
. Geben Sie eine Liste der neuen Metadatenwerte und des aktuellen Wertsfingerprint
an.Wenn die VM bereits Schlüssel/Wert-Paare hat, die Sie behalten möchten, müssen Sie sie der Anfrage mit den neuen Schlüssel/Wert-Paaren hinzufügen:
Beispiel
POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances/VM_NAME/setMetadata { "fingerprint": "zhma6O1w2l8=", "items": [ { "key": "foo", "value": "bar" }, { "key": "baz", "value": "bat" } ] }Dabei gilt:
PROJECT_ID
: Ihre Projekt-IDZONE
: Zone, in der sich Ihre VM befindetVM_NAME
: Name Ihrer VM
Benutzerdefinierte Metadaten aus VMs entfernen
Sie haben folgende Möglichkeiten, um benutzerdefinierte Metadaten aus Ihren Compute Engine-VMs zu entfernen:
- Benutzerdefinierte projektweite Metadaten entfernen, um Projektmetadaten zu entfernen, die mit einem Projektbereich festgelegt wurden.
- Benutzerdefinierte projektzonale Metadaten entfernen (Vorschau), um Projektmetadaten zu entfernen, die mit einem zonalen Bereich innerhalb dieses Projekts festgelegt wurden.
- Benutzerdefinierte Instanzmetadaten entfernen, um VM-Metadaten zu entfernen, die für eine bestimmte VM festgelegt wurden.
Benutzerdefinierte projektweite Metadaten entfernen
Sie können benutzerdefinierte projektweite Metadaten mithilfe der Google Cloud Console oder der Google Cloud CLI entfernen.
Console
- Rufen Sie in der Google Cloud Console die Seite Metadaten auf.
- Klicken Sie oben auf der Seite auf Bearbeiten.
- Klicken Sie im Abschnitt Metadaten für jeden Metadateneintrag, den Sie entfernen möchten, auf Löschen.
- Klicken Sie auf Speichern, um Ihre Änderungen zu bestätigen und die benutzerdefinierten projektweiten Metadaten zu entfernen.
gcloud
Verwenden Sie zum Entfernen benutzerdefinierter projektweiter Metadaten den Befehl gcloud compute project-info remove-metadata
.
- Wenn Sie die benutzerdefinierten Metadateneinträge für bestimmte Schlüssel entfernen möchten, geben Sie diese Schlüssel mit dem Flag
--keys
an und schließen die Werte dieser Schlüssel aus.
gcloud compute project-info remove-metadata \ --keys=KEY1,KEY2,...
- Wenn Sie alle benutzerdefinierten Metadaten für die VM entfernen möchten, geben Sie das Flag
--all
an.
gcloud compute project-info remove-metadata \ --all
Ersetzen Sie Folgendes:
KEY1
,KEY2
, ...: die benutzerdefinierten Instanzmetadatenschlüssel, die Sie entfernen möchten.
Benutzerdefinierte projektzonale Metadaten entfernen
Sie können benutzerdefinierte projektzonale Metadaten mit der Google Cloud CLI oder der Compute Engine API entfernen.
gcloud
Verwenden Sie zum Entfernen von benutzerdefinierten projektzonalen Metadaten den Befehl gcloud beta compute project-zonal-metadata remove
und geben Sie alle Metadatenschlüssel, die Sie entfernen möchten, mit dem Flag --keys
an.
gcloud beta compute project-zonal-metadata remove \ --project=PROJECT_ID \ --zone=ZONE \ --keys=KEY1,KEY2,...
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
: die Zone, in der Sie die projektzonalen Metadaten festlegen möchten.KEY1
,KEY2
...: die benutzerdefinierten projektzonalen Metadatenschlüssel, die Sie entfernen möchten.
Wenn nach der Ausführung des Befehls einer der angegebenen Schlüssel projektweite Metadatenwerte hat, übernehmen die VMs in der angegebenen Zone diese projektweiten Werte. Wenn der Metadatenschlüssel nur auf projektzonaler Ebene festgelegt wurde und kein entsprechender projektweiter Schlüssel vorhanden ist, verlieren diese VMs die Metadateninformationen.
Beispiel:
Nehmen wir als Beispiel das Projekt my-project
mit den folgenden benutzerdefinierten Projektmetadaten:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"new-value-1"
,"key-2":"value-2"
,"key-3":"value-3"
und"key-4":"new-value-4"
Führen Sie den folgenden Befehl aus, um alle projektzonalen Metadaten für die Zone us-central1-a
zu entfernen.
gcloud beta compute project-zonal-metadata remove \ --metadata=key-1,key-2,key-3,key-4 \ --project=my-project \ --zone=us-central1-a
Nachdem Sie den Befehl ausgeführt haben, haben VMs in der Zone us-central1-a
die folgenden benutzerdefinierten Projektmetadaten:
"key-1":"value-a"
"key-2":"value-b"
"key-3":"value-c"
REST
Rufen Sie den aktuellen Fingerabdruck ab und rufen Sie alle vorhandenen Schlüssel/Wert-Paare für das Projekt in dieser Zone auf.
Für ein optimistisches Sperrverfahren müssen Sie einen Fingerabdruck angeben. Ein Fingerabdruck ist eine Reihe zufälliger Zeichen, die von Compute Engine erstellt wird. Dieser Fingerabdruck ändert sich jedes Mal, wenn Sie eine Anfrage zum Hinzufügen, Aktualisieren oder Entfernen von projektzonalen Metadaten stellen. Wenn Sie einen nicht übereinstimmenden Fingerabdruck angeben, lehnt Compute Engine Ihre Anfrage ab.
Wenn Sie keinen Fingerabdruck angeben, wird eine Konsistenzprüfung durchgeführt. Ihre Löschanfrage ist dann nicht erfolgreich. Das führt dazu, dass nur jeweils eine Anfrage auf einmal durchgeführt wird und Konflikte vermieden werden. Dieses Verhalten entspricht
instances().setMetadata
, wobei immer ein Fingerabdruck erforderlich ist.Rufen Sie die Methode
instanceSettings().get
auf, um den aktuellen Fingerabdruck eines Projekts abzurufen.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceSettings
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
: die Zone, in der Sie die projektzonalen Metadaten entfernen möchten.
Das folgende Beispiel zeigt eine Ausgabe für diese Anfrage:
{ "fingerprint": "FikclA7UBC0=", "metadata": { ... } }
Wenn Sie benutzerdefinierte projektzonale Metadaten entfernen möchten, stellen Sie eine
PATCH
-Anfrage an dieinstanceSettings().patch
Methode, wobei Sie die Metadatenschlüssel, für die Sie die projektzonalen Metadaten entfernen möchten, aus dem Anfragetext ausschließen. Sie müssen in Ihrer Anfrage Folgendes angeben:- Eine Aktualisierungsmaske Verwenden Sie den Abfrageparameter
update_mask
. Die Aktualisierungsmaske muss alle vorhandenen benutzerdefinierten projektzonalen Metadatenschlüssel enthalten, für die Sie die Metadaten entfernen möchten. Sie müssen den Stringmetadata.items.
als Präfix für jeden Schlüssel hinzufügen, z. B.metadata.items.key1,metadata.items.key3
. - Geben Sie im Anfragetext nur den aktuellen Fingerabdruckwert an. Schließen Sie alle Metadatenschlüssel aus, die Sie in der Aktualisierungsmaske angegeben haben. Wenn Sie einen der Metadatenschlüssel sowohl in die Aktualisierungsmaske als auch in den Anfragetext einfügen, entfernt Compute Engine die projektzonalen Metadaten für diese Schlüssel nicht.
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceSettings?update_mask=PREFIXED_METADATA_KEYS { "fingerprint": "FINGER_PRINT", "metadata": { "items": { } } }
Ersetzen Sie Folgendes:
PROJECT_ID
: die ID des Projekts.ZONE
: die Zone, in der Sie die projektzonalen Metadaten entfernen möchten.PREFIXED_METADATA_KEYS
: die Liste aller vorhandenen benutzerdefinierten projektzonalen Metadatenschlüssel, die Sie entfernen möchten, wobei jedem Schlüssel der Stringmetadata.items.
vorangestellt ist. Schließen Sie diese Metadatenschlüssel aus dem Anfragetext aus, damit Ihre Löschanfrage erfolgreich ist. Wenn Sie einen der Metadatenschlüssel sowohl in die Aktualisierungsmaske als auch in den Anfragetext einfügen, entfernt Compute Engine die projektzonalen Metadaten für diese Schlüssel nicht.Angenommen, Ihre aktuellen projektzonalen Metadatenschlüssel sind
key-1
,key-2
,key-3
undkey-4
und Sie möchten die projektzonalen Metadateneinträge fürkey-1
undkey-2
entfernen. Ihre Aktualisierungsmaske muss dann den folgenden String haben:metadata.items.key1,metadata.items.key2
FINGER_PRINT
: der aktuelle Fingerabdruckwert.
- Eine Aktualisierungsmaske Verwenden Sie den Abfrageparameter
Wenn nach dem Stellen der Anfrage einer der angegebenen Schlüssel projektweite Metadatenwerte hat, übernehmen die VMs in der angegebenen Zone diese projektweiten Werte. Wenn der Metadatenschlüssel nur auf projektzonaler Ebene festgelegt wurde und kein entsprechender projektweiter Schlüssel vorhanden ist, verlieren diese VMs die Metadateninformationen.
Beispiel:
Nehmen wir als Beispiel das Projekt my-project
mit den folgenden benutzerdefinierten Projektmetadaten:
- Projektweite Metadaten:
"key-1":"value-a"
,"key-2":"value-b"
und"key-3":"value-c"
- Projektzonale Metadaten in der Zone
us-central1-a
:"key-1":"new-value-1"
,"key-2":"value-2"
,"key-3":"value-3"
und"key-4":"new-value-4"
Stellen Sie die folgende PATCH
-Anfrage, um die projektzonalen Metadaten für key-1
und key-2
in der Zone us-central1-a
zu entfernen.
PATCH https://compute.googleapis.com/compute/beta/projects/my-project/zones/us-central1-a/instanceSettings?update_mask=metadata.items.key-1,metadata.items.key-2 { "fingerprint": "FikclA7UBC0=", "metadata": { "items": { } } }
Nachdem diese Anfrage verarbeitet wurde, haben VMs in der Zone us-central1-a
die folgenden benutzerdefinierten Projektmetadaten. VMs übernehmen die projektweiten Metadatenwerte für key-1
und key-2
, behalten aber den projektzonalen Wert für key-3
bei.
"key-1":"value-a"
"key-2":"value-b"
"key-3":"value-3"
Benutzerdefinierte Instanzmetadaten entfernen
Sie können benutzerdefinierte Instanzmetadaten mithilfe der Google Cloud Console, der Google Cloud CLI oder REST entfernen.
Console
- Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
- Klicken Sie in der Spalte Name auf den Namen der VM, für die Sie Metadaten entfernen möchten.
- Klicken Sie oben auf der Seite auf Bearbeiten.
- Klicken Sie im Abschnitt Metadaten für jeden Metadateneintrag, den Sie entfernen möchten, auf Löschen.
- Klicken Sie auf Speichern, um die Änderungen zu bestätigen und die benutzerdefinierten Instanzmetadaten zu entfernen.
gcloud
Verwenden Sie zum Entfernen benutzerdefinierter Instanzmetadaten den Befehl gcloud compute instances remove-metadata
.
- Wenn Sie die benutzerdefinierten Metadateneinträge für bestimmte Schlüssel entfernen möchten, geben Sie diese Schlüssel mit dem Flag
--keys
an und schließen die Werte dieser Schlüssel aus.
gcloud compute instances remove-metadata VM_NAME \ --zone=ZONE \ --keys=KEY1,KEY2,...
- Wenn Sie alle benutzerdefinierten Metadaten für die VM entfernen möchten, geben Sie das Flag
--all
an.
gcloud compute instances remove-metadata VM_NAME \ --zone=ZONE \ --all
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
: die Zone Ihrer VM.VM_NAME
: Name Ihrer VMKEY1
,KEY2
, ...: die benutzerdefinierten Instanzmetadatenschlüssel, die Sie entfernen möchten.
REST
Rufen Sie den aktuellen Fingerabdruck ab und rufen Sie alle vorhandenen Schlüssel/Wert-Paare für die VM auf. Rufen Sie dazu die Methode
instances().get
auf.Ein Fingerabdruck ist eine Reihe zufälliger Zeichen, die von Compute Engine erstellt und für ein optimistisches Sperrverfahren genutzt werden. Zum Aktualisieren der VM müssen Sie den entsprechenden Fingerabdruckwert angeben. Dieser Fingerabdruck ändert sich nach jeder Anfrage. Geben Sie einen falschen an, wird Ihre Anfrage abgelehnt. Das führt dazu, dass nur jeweils eine Aktualisierung auf einmal durchgeführt wird und Konflikte vermieden werden.
GET https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances/VM_NAMEErsetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
: die Zone Ihrer VM.VM_NAME
: Name Ihrer VM
Die Ausgabe sieht in etwa so aus:
{ ... "name": "example-instance", "metadata": { "kind": "compute#metadata", "fingerprint": "zhma6O1w2l8=" "items": [ { "key": "key-1", "value": "value-1" } { "key": "key-2", "value": "value-2" } ] }, ... }
Stellen Sie eine Anfrage an die Methode
instances().setMetadata
. Sie müssen den aktuellen Metadaten-Fingerabdruckwert angeben, damit Ihre Anfrage erfolgreich ist.Wenn Sie alle benutzerdefinierten Metadaten-Schlüssel/Wert-Paare von einer VM entfernen möchten, schließen Sie im Attribut
items
die Metadatenschlüssel aus, für die Sie Metadatenwerte entfernen möchten.POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances/VM_NAME/setMetadata { "fingerprint": "FINGER_PRINT" "items": [ { "key": "KEY1" "value": "VALUE1" } { "key": "KEY2" "value": "VALUE2" } ... ] }Wenn Sie alle benutzerdefinierten Instanzmetadaten auf der VM entfernen möchten, schließen Sie das Attribut
items
vollständig aus.POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances/VM_NAME/setMetadata { "fingerprint": FINGER_PRINT }
Ersetzen Sie Folgendes:
PROJECT_ID
: Ihre Projekt-ID.ZONE
: die Zone Ihrer VM.VM_NAME
: Name Ihrer VMFINGER_PRINT
: der aktuelle Fingerabdruckwert.KEY1
,KEY2
, ...: die benutzerdefinierten Instanzmetadatenschlüssel, die Sie entfernen möchten.VALUE1
,VALUE2
, ...: die Werte der benutzerdefinierten Instanzmetadatenschlüssel, die Sie entfernen möchten.
Nächste Schritte
- Mehr über VM-Metadaten erfahren
- VM-Metadaten aufrufen und abfragen
- Auf dem Metadatenserver Startskripts oder Shutdown-Skripts ausführen