Funktionsweise von Cloud Shell

Cloud Shell stellt eine virtuelle Compute Engine-Maschine zur temporären Nutzung bereit, auf der ein Debian-basiertes Linux-Betriebssystem ausgeführt wird. Diese virtuelle Maschine gehört Google Cloud und wird von dieser verwaltet. Daher wird sie in keinem Ihrer Google Cloud-Projekte angezeigt.

Cloud Shell-Instanzen werden pro Nutzer und Sitzung bereitgestellt. Die Instanz bleibt bestehen, während Ihre Cloud Shell-Sitzung aktiv ist. Nach einer Stunde Inaktivität wird Ihre Sitzung beendet und die zugehörige VM verworfen. Weitere Informationen zu Nutzungskontingenten finden Sie im Leitfaden zu Einschränkungen.

Mit der Standard-Cloud-Shell-Umgebung wird Ihnen eine sitzungsspezifische, vorkonfigurierte VM zugewiesen und die Umgebung, mit der Sie arbeiten, ist ein Docker-Container, der auf dieser VM ausgeführt wird. Sie können Ihre Umgebung auch beim VM-Start automatisch anpassen, um zu gewährleisten, dass Ihre Cloud Shell-Instanz Ihre bevorzugten Tools enthält.

Persistenter Festplattenspeicher

Cloud Shell bietet 5 GB kostenlosen nichtflüchtigen Speicher, der im Verzeichnis $HOME der VM-Instanz bereitgestellt wird. Dieser Speicherplatz wird pro Nutzer bereitgestellt und ist projektübergreifend verfügbar. Anders als bei der Instanz selbst kommt es nicht zur Zeitüberschreitung durch Inaktivität. Alle Dateien, die Sie in Ihrem Basisverzeichnis speichern, z. B. installierte Software, Skripte und Konfigurationsdateien, wie .bashrc und .vimrc, bleiben auch nach der Sitzung erhalten. Ihr $HOME-Verzeichnis ist privat und kann nicht von anderen Benutzern aufgerufen werden.

Wenn Sie Cloud Shell verwenden, können Sie den Speicherplatz auf dem nichtflüchtigen Speicher nicht erweitern. Wenn Sie mehr Kontrolle über die Speicherpersistenz haben und mehr Speicherplatz benötigen, können Sie Cloud Workstations verwenden.

Cloud Shell bietet auch den flüchtigen Modus. Dieser ist die Cloud Shell-Umgebung ohne nichtflüchtigen Festplattenspeicher. Mit dem flüchtigen Modus beschleunigen Sie die Startzeiten, aber alle in Ihrer Sitzung erstellten Dateien gehen am Ende der Sitzung verloren.

Autorisierung

Wenn Sie zum ersten Mal mit Cloud Shell einen Google Cloud API-Aufruf ausführen oder ein Befehlszeilentool verwenden, für das Anmeldedaten erforderlich sind (z. B. die Google Cloud CLI), werden Sie von Cloud Shell zur Autorisierung aufgefordert. Klicken Sie auf Autorisieren, damit das Tool Ihre Anmeldedaten zum Aufrufen von Anrufen verwenden kann.

Weitere Informationen finden Sie unter Mit Cloud Shell autorisieren.

Vorkonfigurierte Umgebungsvariablen

Wenn Cloud Shell gestartet wird, wird das aktive Projekt in der Google Cloud Console zur sofortigen Verwendung an Ihre gcloud-Konfiguration in Cloud Shell weitergegeben. GOOGLE_CLOUD_PROJECT, die Umgebungsvariable, die von der Unterstützung der Bibliothek für Standardanmeldedaten für Anwendungen zum Definieren der Projekt-ID verwendet wird, ist auch so eingestellt, dass sie auf das aktive Projekt in der Google Cloud Console verweist. Die Umgebungsvariable WEB_HOST verweist auf den Hostnamen Ihrer Cloud Shell-VM, mit dem Sie HTTPS-Anfragen an die Umgebung senden können.

Zonenauswahl

Cloud Shell ist global auf mehrere Google Cloud Platform-Regionen verteilt. Beim ersten Verbindungsaufbau zu Cloud Shell wird Ihnen automatisch die nächstgelegene verfügbare Region zugewiesen. Sie können Ihre eigene Region nicht auswählen. Wenn Cloud Shell nicht die nächstgelegene Region auswählt, versucht Cloud Shell, Ihre Cloud Shell-VM in eine Region zu migrieren, wenn Ihre Cloud Shell-VM nicht in Verwendung ist.

Führen Sie den folgenden Befehl in einer Cloud Shell-Sitzung aus, um Ihre aktuelle Region anzeigen zu lassen:

curl metadata/computeMetadata/v1/instance/zone

Image-Einführung

Das Container-Image von Cloud Shell wird wöchentlich aktualisiert, um vorgefertigte Tools auf dem neuesten Stand zu halten. Das bedeutet, dass Cloud Shell immer die neuesten Versionen der gcloud CLI, Docker und anderer Dienstprogramme enthält.

Root-Nutzer

Wenn Sie eine Cloud Shell-Sitzung einrichten, erhalten Sie ein reguläres Unix-Nutzerkonto mit einem Nutzernamen, der auf Ihrer E-Mail-Adresse basiert. Mit diesem Zugriff haben Sie vollständige Root-Berechtigungen für die zugewiesene VM und können bei Bedarf sogar sudo-Befehle ausführen.

Verfügbare Tools

Die folgenden Tools sind in der VM-Instanz von Cloud Shell vorinstalliert:

Typ Tool
Linux Shell-Interpreter bash
sh
Linux-Dienstprogramme Debian-basierte Standard-Systemdienstprogramme
gcloud CLI und Tools App Engine SDK
Google Cloud CLI mit der gcloud CLI
gsutil für Cloud Storage
Texteditoren Emacs
Vim
Nano
Build-Tools und Tools für Pakete Gradle
Helm
Make
Maven
Bazel
npm
nvm
pip
Composer
Tools zur Versionsverwaltung Git
Mercurial
Weitere Tools Docker
iPython
MySQL-Client
gRPC-Compiler
TensorFlow
Terraform

Sie können zusätzliche Softwarepakete auf der Instanz der virtuellen Maschine installieren, die Installation wird jedoch nach dem Beenden der Instanz nicht fortgesetzt, es sei denn, Sie installieren die Software in Ihrem $HOME-Verzeichnis oder erstellen eine benutzerdefinierte Umgebung.

Sprachunterstützung

Auf der VM-Instanz von Cloud Shell ist die Unterstützung der folgenden Sprachen vorinstalliert:

Sprache Version
Java JRE/JDK 17.0.6 (OpenJDK)
Einfach loslegen (Go) 1.20.4
Python 3.9.2
Node.js v18.12.1
Ruby 2.7.8
PHP 7.4.33
.NET Core SDKs 2.1, 3.1, 5.0 und 6.0
Core-Laufzeiten 2.1.30, 3.1.32, 5.0.17 und 6.0.16

Die Standardversion der Java-Umgebung ist Version 11. Wenn Sie die aktuelle Cloud Shell-Sitzung auf JRE und JDK der Version 1.8 umstellen möchten, geben Sie an der Cloud Shell-Eingabeaufforderung den folgenden Befehl ein:

sudo update-java-alternatives -s java-1.8.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

So wechseln Sie zurück zu Version 11:

sudo update-java-alternatives -s java-1.11.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/jre

Abgesicherter Modus

Wenn in den Dateien .bashrc oder .tmux.conf ein Problem auftritt, wird Cloud Shell nach dem Herstellen der Verbindung sofort geschlossen. Im abgesicherten Modus wird Ihre Cloud Shell-Instanz neu gestartet und Sie werden als Root angemeldet, sodass Sie Probleme in den Dateien beheben können.

So öffnen Sie Cloud Shell im abgesicherten Modus:

  • Hängen Sie cloudshellsafemode=true an die URL an.
  • Klicken Sie in Cloud Shell auf , dann auf Abgesicherter Modus und anschließend auf Neu starten.

Wenn Sie alle Dateien in Ihrem Basisverzeichnis dauerhaft löschen und Ihr Cloud Shell-Home-Verzeichnis in einem sauberen Zustand wiederherstellen möchten, können Sie Ihre Cloud Shell-VM zurücksetzen