Diese Seite enthält Tipps, die hilfreich sein könnten, wenn Sie das gcloud
-Befehlszeilentool zum Verwalten Ihrer Compute Engine-Ressourcen verwenden. Eine vollständige Liste aller verfügbaren Flags und Befehle für gcloud compute
finden Sie in der integrierten Hilfe (--help
), in der veröffentlichten Referenzdokumentation oder in der Dokumentation zu gcloud core.
Hinweise
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft.
Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich wie folgt bei Compute Engine authentifizieren.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Informationen zu Ressourcen abrufen
Informationen zu Compute Engine-Ressourcen können Sie auf zwei Arten abrufen: Mit dem Befehl list
, um eine Liste von Ressourcen zurückzugeben, und mit dem Befehl describe
, um Details zu einer bestimmten Ressource zurückzugeben.
Ressourcen mit list
-Befehlen abrufen
Mit den list
-Befehlen lässt sich eine für Menschen lesbare Tabelle der relevantesten Daten für die angeforderten Ressourcen abrufen. Die Ergebnisse lassen sich optional filtern, um eine kürzere Liste mit relevanteren Ergebnissen anzuzeigen.
- Mit regulären Ausdrücken nach Namen filtern
- Mit der RE2-Syntax können Sie Ressourcennamen wie beispielsweise Instanz- oder Laufwerknamen abgleichen. Weitere Informationen finden Sie im Abschnitt zum Befehl
gcloud compute instances list
. - Befehlsflags
--limit
Die maximale Anzahl von zurückzugebenden Ergebnissen. Dieses Flag ist speziell in Kombination mit dem Flag
--sort-by
nützlich, das im Abschnitt Ressourcen mit describe-Befehlen abrufen beschrieben wird.--sort-by SORT_BY
Ein Feld, nach dem gegebenenfalls sortiert werden soll. Wenn in absteigender Reihenfolge sortiert werden soll, stellen Sie dem Wert eine Tilde ("~") voran. Dieses Flag interagiert mit anderen Flags, die in dieser Reihenfolge angewendet werden:
--flatten
,--sort-by
,--filter
,--limit
.
Ressourcen mit describe
-Befehlen abrufen
Über die describe
-Befehle erhalten Sie Daten zu einer einzelnen Ressource. Den Namen der Ressource müssen Sie im Befehl describe
angeben. Wenn Sie den Ressourcennamen nicht mehr wissen, können Sie mit dem Befehl list
eine Liste der Ressourcen abrufen. Mit den beiden folgenden Befehlen können Sie z. B. Images auflisten, um einen Image-Namen und das zugehörige Projekt abzurufen, damit Sie sie in einem describe
-Befehl angeben können:
gcloud compute images list
NAME PROJECT FAMILY DEPRECATED STATUS ... centos-7-v20170620 centos-cloud centos-7 READY ... debian-9-stretch-v20170619 debian-cloud debian-9 READY ...
gcloud compute images describe debian-9-stretch-v20170619 --project debian-cloud
Die Standardausgabe von describe
-Befehlen hat das YAML-Format. Wenn Sie jedoch das --format
-Flag verwenden, ist es möglich, zwischen JSON, YAML und Text als Ausgabeformat zu wählen.
Eine Ausgabe im JSON-Format ist insbesondere dann nützlich, wenn die Ausgabe geparst wird, während bei der Ausgabe im Textformat jede Eigenschaft in einer separaten Zeile steht.
gcloud compute regions describe us-central1 --format json
{ "creationTimestamp": "2013-09-06T10:36:54.847-07:00", "description": "us-central1", "id": "6837843067389011605", "kind": "compute#region", "name": "us-central1", ... "status": "UP", "zones": [ "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a", "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-b", "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f" ] }
Beispiele
Beispiele für list
-Befehle
Beim Auflisten von Ressourcen erhalten Sie eine übersichtliche Tabelle mit zusammengefassten Daten. Verwenden Sie z. B. den Befehl instances list
, um Übersichtsdaten zu Instanzen im Projekt abzurufen:
gcloud compute instances list
NAME ZONE MACHINE_TYPE INTERNAL_IP EXTERNAL_IP STATUS example-instance asia-east1-b e2-standard-2 10.240.95.199 107.167.182.44 RUNNING example-instance2 us-central1-a e2-standard-2 10.240.173.254 23.251.148.121 RUNNING test-instance us-central1-a e2-standard-2 10.240.118.207 23.251.153.172 RUNNING
Sie können Ergebnisse der list
-Befehle mit regulären Ausdrücken filtern, wenn Sie das Flag --filter
mit dem Operator key ~ value
einbeziehen. Filtern Sie z. B. die Liste mit Instanzen, sodass nur die Instanzen mit "test" im Instanznamen einbezogen werden:
gcloud compute instances list --filter="name ~ .*test.*"
NAME ZONE MACHINE_TYPE INTERNAL_IP EXTERNAL_IP STATUS test-instance us-central1-a e2-standard-2 10.240.118.207 23.251.153.172 RUNNING
Wenn Sie eine Liste der Zonenvorgänge abrufen möchten, die DONE
als status
und nicht 200
als httpStatus
haben, wenden Sie den Filter zone
auf den Befehl operations list
an. Wenden Sie anschließend auf das Ergebnis grep
an:
gcloud compute operations list --filter="zone:(us-central1-a)" | grep DONE | grep -v 200
NAME HTTP_STATUS TYPE TARGET STATUS operation-1397752585735-4f73fa25b4b58-f0920fd5-254d709f 400 delete us-central1-a/disks/example-instance DONE operation-1398357613036-4f7cc80cb41e0-765bcba6-34bbd040 409 insert us-central1-a/instances/i-1 DONE operation-1398615481237-4f8088aefbe08-cc300dfa-2ce113cf 409 insert us-central1-a/instances/i-2 DONE
Wenn Sie eine Liste mit Laufwerken in us-central1-a
abrufen möchten, die in absteigender Reihenfolge nach dem Namen sortiert sind (--sort-by ~NAME
), verwenden Sie den Befehl disks list
:
gcloud compute disks list --sort-by ~NAME --filter="zone:(us-central1-a)"
Manchmal benötigen Sie den vollständigen URI-Link zur Ressource, z. B. bei Anfragen, bei denen Sie die Ausgabe eines list
-Befehls an einen anderen Befehl oder eine andere Anwendung übergeben, der oder die eine Liste mit Ressourcenlinks übernimmt.
Verwenden Sie zum Anzeigen der vollständigen URI-Ressourcenlinks das Flag --uri
mit einem list
-Befehl.
gcloud compute instances list --uri --filter="name~'^example-.*'"
https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance1 https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance2
So verwenden Sie die vorangegangene Ausgabe des Befehls list
mit einem Befehl, der Instanzen löscht:
gcloud compute instances delete $(gcloud compute instances list --uri --filter="name~'^example-.*'")
Beispiele für describe
-Befehle
Um Details zu nur einer Instanz abzurufen, geben Sie die Instanz einschließlich Zone an.
Wenn Sie z. B. Informationen zur Instanz "example-instance" in der Zone "asia-east1-b" abrufen möchten, können Sie den Befehl instances describe
verwenden:
gcloud compute instances describe example-instance --zone asia-east1-b
Standardmäßig erfolgt die Ausgabe im YAML-Format. Um die Ausgabe in das JSON- oder Textformat (eine Eigenschaft pro Zeile) zu ändern, verwenden Sie das Flag --format
. Um das Ergebnis für dieselbe Instanz im Textformat auszugeben, verwenden Sie Folgendes:
gcloud compute instances describe example-instance --zone asia-east1-b --format text
--- canIpForward: False creationTimestamp: 2014-04-19T06:43:04.087-07:00 disks[0].autoDelete: False disks[0].boot: True disks[0].deviceName: example-instance ...
Wenn Sie Details zu einem bestimmten Vorgang abrufen möchten, verwenden Sie den Befehl operations list
. Damit können Sie den vollqualifizierten URI des Vorgangs ermitteln:
gcloud compute operations list --filter="zone:(us-central1-a)"
NAME TYPE TARGET HTTP_STATUS STATUS operation-1406155165815-4fee4032850d9-7b78077c-a170c5c0 delete us-central1-a/instances/example-instance 200 DONE operation-1406155180632-4fee4040a67c1-bf581ed8-ab5af2b8 delete us-central1-a/instances/example-instance-2 200 DONE ...
Verwenden Sie den URI anschließend im Befehl operations describe
:
gcloud compute operations describe \
operation-1406155165815-4fee4032850d9-7b78077c-a170c5c0 --zone us-central1-a
endTime: '2014-07-23T15:40:02.463-07:00' id: '31755455923038965' insertTime: '2014-07-23T15:39:25.910-07:00' kind: compute#operation name: operation-1406155165815-4fee4032850d9-7b78077c-a170c5c0 operationType: delete progress: 100 ...
Mit dem folgenden Befehl werden die Instanzeinstellungen im JSON-Format (--format json
) abgerufen.
gcloud compute instances describe example-instance \
--zone us-central1-a
--format json
{ ... "name": "example-instance", "networkInterfaces": [ { "accessConfigs": [ { "kind": "compute#accessConfig", "name": "external-nat", "natIP": "107.167.187.66", "type": "ONE_TO_ONE_NAT" } ], "name": "nic0", "network": "https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default", "networkIP": "10.240.111.51" } ], ... "status": "RUNNING" ... }
Nutzerautorisierung prüfen
Mit dem folgenden Befehl ermitteln Sie, über welche Autorisierung Ihr Konto verfügt:
gcloud auth list
Aktualisierungstoken widerrufen
So widerrufen Sie die Anmeldedaten für ein Konto auf dem Computer, auf dem Sie die Google Cloud CLI verwenden:
gcloud auth revoke
Dadurch werden Sie zu einer erneuten Authentifizierung mit gcloud init
gezwungen.
Sie können auch die Berechtigung der gcloud CLI für den Zugriff auf die Ressourcen widerrufen. Dies kann beispielsweise erforderlich sein, wenn Unbefugte in Besitz Ihres Aktualisierungstokens gelangt sind. So widerrufen Sie die Berechtigung für die gcloud CLI:
- Melden Sie sich auf der Seite für das Google-Konto an.
- Klicken Sie auf Sicherheit. Klicken Sie dann im Abschnitt Kontoberechtigungen auf Alle anzeigen.
- Wählen Sie Google Cloud SDK aus und klicken Sie auf Zugriff entziehen.
Instanz neu starten
Wenn Sie eine Instanz mit dem Namen "example-instance" in der Zone "us-central1-a" zurücksetzen möchten, verwenden Sie den Befehl instances reset
:
gcloud compute instances reset example-instance --zone us-central1-a
Informationen zu den Auswirkungen einer Zurücksetzung finden Sie in der Dokumentation Instanz zurücksetzen.