Cómo funciona Cloud Shell

Cuando inicias Cloud Shell, aprovisiona una máquina virtual de Compute Engine que ejecuta un sistema operativo Linux basado en Debian. Las instancias de Cloud Shell se aprovisionan por usuario y por sesión. La instancia persiste mientras tu sesión de Cloud Shell esté activa. después de una hora de inactividad, la sesión finaliza y su VM se descarta. Para obtener más información sobre las cuotas de uso, consulte la guía de limitaciones.

Con la experiencia predeterminada de Cloud Shell, se te asignará una VM efímera y ya configurada y el entorno con el que trabajas es un contenedor de Docker que se ejecuta en esa VM. También puedes personalizar tu entorno de forma automática cuando se inicia la VM a fin de asegurarte de que la instancia de Cloud Shell incluya tus herramientas preferidas.

Almacenamiento en discos persistentes

Cloud Shell proporciona 5 GB de almacenamiento en disco persistente gratuito activado como su directorio $HOME en la instancia de máquina virtual. Este almacenamiento es por usuario y está disponible en todos los proyectos. A diferencia de la instancia en sí, con este almacenamiento no se agota el tiempo de espera en inactividad. Todos los archivos que almacena en su directorio principal, incluidos el software instalado, las secuencias de comandos y los archivos de configuración de usuario como .bashrc y .vimrc, persisten entre sesiones. Su directorio $HOME es privado, por lo que otros usuarios no pueden acceder a él.

Cloud Shell también ofrece el modo efímero, que es la experiencia de Cloud Shell sin almacenamiento en disco persistente. Con el modo efímero, tendrás tiempos de inicio más rápidos, pero todos los archivos que crees en la sesión se perderán cuando termine la sesión.

Autorización

Cuando realizas una llamada a la API de Google Cloud o usas una herramienta de línea de comandos que requiere credenciales (como la herramienta de línea de comandos de gcloud) con Cloud Shell por primera vez, Cloud Shell te lo solicita. el cuadro de diálogo "Autorizar Cloud Shell" Haz clic en Autorizar para permitir que la herramienta use tus credenciales a fin de realizar llamadas.

Consulta Autoriza con Cloud Shell para obtener más detalles.

Variables de entorno preconfiguradas

Cuando se inicia Cloud Shell, el proyecto activo en la consola se propaga a su configuración de gcloud dentro de Cloud Shell para su uso inmediato. GOOGLE_CLOUD_PROJECT, la variable de entorno usada por la asistencia de la biblioteca de credenciales predeterminadas de la aplicación a fin de definir el ID del proyecto, también se configura para apuntar a los proyectos activos en Console.

Selección de la zona

Cloud Shell se distribuye de forma global en varias regiones de Google Cloud. Cuando te conectes a Cloud Shell por primera vez, se te asignará automáticamente la región geográfica disponible más cercana. No puedes elegir tu propia región y, en el caso de que Cloud Shell no elija la región más óptima, intentará migrar tu VM de Cloud Shell a una región más cercana cuando no esté en uso.

Para ver tu región actual, ejecuta el siguiente comando desde una sesión de Cloud Shell:

curl metadata/computeMetadata/v1/instance/zone

Lanzamiento de imagen

La imagen del contenedor de Cloud Shell se actualiza semanalmente para garantizar que las herramientas ya preparadas se mantengan actualizadas. Esto significa que Cloud Shell siempre viene con las últimas versiones del SDK de Cloud, Docker y todas sus otras herramientas.

Usuario raíz

Cuando configuras una sesión de Cloud Shell, obtienes una cuenta de usuario Unix normal con un nombre de usuario basado en tu dirección de correo electrónico. Con este acceso, tienes privilegios de raíz completos en la VM asignada y, además, puedes ejecutar comandos sudo, si es necesario.

Herramientas disponibles

La instancia de máquina virtual de Cloud Shell tiene preinstaladas las siguientes herramientas:

Tipo Herramienta
Intérpretes de shell de Linux bash
sh
Herramientas de Linux Utilidades estándar del sistema Debian
SDK y herramientas de Google SDK de App Engine
SDK de Cloud, incluida la herramienta de gcloud
gsutil para Cloud Storage
Editores de texto Emacs
Vim
Nano
Herramientas de empaquetado y compilación Gradle
Helm
Make
Maven
Bazel
npm
nvm
pip
Composer
Herramientas de control de código fuente Git
Mercurial
Herramientas adicionales Docker
Python
Cliente MySQL
Compilador de gRPC
TensorFlow
Terraform

Puede instalar paquetes de software adicionales en la instancia de máquina virtual, pero la instalación no continuará después de que la instancia finalice a menos que instale el software en su directorio $HOME o cree un entorno personalizado.

Idiomas admitidos

La instancia de máquina virtual de Cloud Shell proporciona compatibilidad con lenguajes preinstalados para lo siguiente:

Idioma Versión
Java JRE/JDK 1.8 y 11
Comienza a usarlo 1.13
Python 2.7.13
Node.js v10.14.2
Ruby 2.6.0
PHP 7.0.33
.NET Core SDK 2.0.0 y 2.1.502
Entornos de ejecución de Core 2.0.0 y 2.1.6

La versión predeterminada del entorno de Java es 11. Para cambiar la sesión de Cloud Shell actual, a fin de usar la versión 1.8 de JRE y JDK, ingresa el siguiente comando en el símbolo de sistema de Cloud Shell:

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

Para cambiar a la versión 11, haz lo siguiente:

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

Modo seguro

Cloud Shell se cerrará de inmediato después de la conexión si hay un problema en tus archivos .bashrc o .tmux.conf. A fin de resolver esto, abre Cloud Shell en modo seguro anexando cloudshellsafemode=true a la URL. Esto reiniciará Cloud Shell y te permitirá acceder como raíz, lo que te permitirá corregir cualquier problema en los archivos.

Si prefieres borrar todos los archivos en tu directorio principal de forma permanente y restablecer el directorio principal de Cloud Shell a un estado limpio, puedes restablecer tu VM de Cloud Shell.