Uso de Cloud Shell

Introducción a Cloud Shell

Puede acceder a Cloud Shell de dos formas:

  • Mediante la consola de OCI
  • A través del botón 'Try It' (Probar) que aparece en muchos ejemplos de código y líneas de comandos a lo largo de la documentación
Nota

Cloud Shell utiliza el OCID de su usuario para crear el directorio raíz. Si tiene varias cuentas en un arrendamiento (por ejemplo, tiene una cuenta de usuario federada y no federada), obtendrá un directorio raíz de Cloud Shell independiente y único para cada cuenta.

Para acceder a Cloud Shell mediante la consola:

  1. Conéctese a la consola.
  2. Haga clic en el icono de Cloud Shell en la cabecera de la consola. Tenga en cuenta que la CLI de OCI que se ejecuta en Cloud Shell ejecutará comandos con la región seleccionada en el menú de selección Región de la consola cuando se inició Cloud Shell.

Icono de inicio de Cloud Shell

Esto muestra Cloud Shell en un "cajón" en la parte inferior de la consola:

Ejemplo de cajón de Cloud Shell

Puede utilizar los iconos de la esquina superior derecha de la ventana de Cloud Shell para minimizar, maximizar, reiniciar y cerrar la sesión de Cloud Shell.

Nota

Para las operaciones del portapapeles, los usuarios de Windows pueden utilizar Ctrl-C o Ctrl-Insertar para copiar y Mayús-Insertar o Ctrl-V para pegar. Para los usuarios de Mac OS, utilice Cmd-C para copiar y Cmd-V para pegar.

Para acceder a Cloud Shell a través del botón Try It:

Muchos ejemplos de código y comandos de la documentación de OCI incluyen un botón Try It. Este botón copiará el ejemplo en el portapapeles y abrirá una sesión de Cloud Shell para que pueda probarlo.

Cloud Shell incluye la CLI de OCI autenticada previamente, por lo que no es necesario realizar ninguna configuración antes de empezar a utilizarla.

Inténtelo con los comandos siguientes:

oci os ns get
oci iam compartment list

Interacción con un cluster de OKE desde Cloud Shell

Siga las instrucciones de Configuración del acceso de Cloud Shell a los clusters para lo siguiente:

  1. Configure un archivo kubeconfig de OKE para utilizarlo con Cloud Shell:
    1. Seleccione un cluster.
    2. Haga clic en el botón Acceder al cluster.
    3. Haga clic en Acceso a Cloud Shell.
    4. Haga clic en Iniciar Cloud Shell para mostrar la ventana de Cloud Shell.
    5. En la ventana de Cloud Shell, ejecute el comando de la CLI de Oracle Cloud Infrastructure para configurar el archivo kubeconfig y guardarlo en una ubicación accesible para kubectl. Por ejemplo:

      $ oci ce cluster create-kubeconfig --cluster-id ocid1.cluster.oc1.phx.aaaaaaaaae... --file $HOME/.kube/config  --region us-phoenix-1 --token-version 2.0.0
  2. Verifique que kubectl está disponible y que se puede conectar al cluster desde la ventana de Cloud Shell introduciendo el siguiente comando en esta ventana:

    $ kubectl get nodes

Transferencia de archivos

Puede transferir archivos desde y hacia Cloud Shell con las siguientes limitaciones:
  • Solo puede seleccionar un archivo al mismo tiempo para transferirlo con el cuadro de diálogo Transferencia de archivos, pero puede seleccionar varios archivos para transferirlos mediante la función de arrastrar y soltar.
  • No puede transferir directorios.
  • El tamaño máximo de archivo es de 4 GB.
  • Los permisos de archivo no se conservan en los archivos transferidos.
  • Se registran los nombres de los archivos. No utilice información de identificación personal (PII) en los nombres de archivo.
Para cargar un archivo en Cloud Shell mediante la función de arrastrar y soltar:
  1. Arrastre uno o más archivos a la ventana de Cloud Shell.

Para cargar un archivo en Cloud Shell mediante el menú:

  1. Haga clic en el menú de Cloud Shell en la parte superior izquierda de la ventana de Cloud Shell y seleccione Cargar. Aparecerá el cuadro de diálogo Carga de archivos.
  2. Arrastre y suelte un archivo o haga clic en seleccionar desde su equipo.
    Nota

    El cuadro de diálogo Transferencia de archivos solo soporta la selección de un archivo al mismo tiempo para la transferencia.
  3. Haga clic en el botón Cargar.
  4. Aparecerá el cuadro de diálogo Transferencia de archivos.
    1. Las transferencias de archivos en curso se muestran con una barra de progreso
    2. Puede cancelar una transferencia de archivo en curso haciendo clic en la X situada junto a la barra de progreso del archivo.
    3. Las transferencias de archivos completadas se muestran con una marca de selección verde
    4. Puede ocultar el cuadro de diálogo Transferencia de archivos haciendo clic en Ocultar.
    5. Puede ver el cuadro de diálogo Transferencia de archivos en cualquier momento seleccionando Transferencias de archivos en el menú de Cloud Shell

Para descargar un archivo desde Cloud Shell:

  1. Haga clic en el menú de Cloud Shell situado en la parte superior izquierda de la ventana de Cloud Shell y seleccione Descargar. Aparecerá el cuadro de diálogo Descarga de archivo:
  2. Introduzca el nombre del archivo de su directorio raíz que desea descargar.
    Nota

    Solo puede descargar archivos del directorio raíz.
  3. Haga clic en el botón Descargar.
  4. Aparecerá el cuadro de diálogo Transferencia de archivos.
    1. Las transferencias de archivos en curso se muestran con una barra de progreso
    2. Puede cancelar una transferencia de archivo en curso haciendo clic en la X situada junto a la barra de progreso del archivo.
    3. Las transferencias de archivos completadas se muestran con una marca de selección verde
    4. Puede ocultar el cuadro de diálogo Transferencia de archivos haciendo clic en Ocultar.
    5. Puede ver el cuadro de diálogo Transferencia de archivos en cualquier momento seleccionando Transferencias de archivos en el menú de Cloud Shell

Personalización de la configuración de la CLI de OCI de Cloud Shell

Cloud Shell incluye una CLI de OCI autenticada previamente, que se refresca y aprovisiona para el usuario cuando abre una nueva instancia de Cloud Shell. La ubicación y el token de configuración de OCI están fuera del directorio raíz del usuario, en /etc/oci. Por ejemplo:


            example_user@cloudshell:~ (us-ashburn-1)$ ll /etc/oci
            total 20K
            drwxrwx---. 1 root oci 44 Oct 12 00:07 ./
            drwxr-xr-x. 1 root root 4.0K Oct 12 00:07 ../
            -rw-------. 1 jonathan_s oci 1.9K Jan 1 1970 config
            -rw-------. 1 jonathan_s oci 1.3K Jan 1 1970 delegation_token
            example_user@cloudshell:~ (us-ashburn-1)$

La ubicación del archivo de configuración, el tipo de autenticación de la CLI de OCI y la opción de perfil se especifican con variables de entorno:

OCI_CLI_AUTH=instance_obo_user
            OCI_CLI_CONFIG_FILE=/etc/oci/config
            OCI_CLI_PROFILE=us-ashburn-1

Para personalizar la CLI de OCI, puede crear un archivo RC de CLI de OCI y colocarlo en el directorio local .oci:

$ oci setup oci-cli-rc --file path/to/target/file

Para obtener más información sobre la configuración de la CLI de OCI, consulte Configuración de la CLI.

Gestión de regiones de Cloud Shell

Cloud Shell utiliza el archivo de configuración de la CLI y variables ENV para determinar con qué región interactúa la CLI de OCI. El archivo de configuración de la CLI de OCI (especificado por la variable de entorno OCI_CLI_CONFIG_FILE) contiene los perfiles de CLI para Cloud Shell. Cada región es su propio perfil de CLI, y el perfil actual se especifica mediante la variable de entorno OCI_CLI_PROFILE.

Por ejemplo, si abre Cloud Shell desde la consola con "Este de EE. UU. (Ashburn)" seleccionado en la lista desplegable de la región de la consola, Cloud Shell se abrirá con OCI_CLI_PROFILE definido en us-ashburn-1.

Nota

No hay ningún valor de perfil [DEFAULT] en Cloud Shell porque la región seleccionada cambia según la configuración de la consola cuando se abre Cloud Shell.

Si desea personalizar la configuración de la CLI de OCI en Cloud Shell, puede utilizar un archivo de configuración de CLI de OCI. Por ejemplo, para definir un compartimento por defecto en el archivo de configuración bajo el perfil de región adecuado en el archivo RC. Para nuestro ejemplo "us-ashburn-1", puede agregar un valor de compartimento por defecto como el siguiente:

[COMPARTMENT DEFAULTS]
[us-ashburn-1]
compartment-id = ocid1.compartment.oc1..xxxxxxxx

Restablecimiento del entorno de Cloud Shell

Puede utilizar la herramienta csreset para restablecer el entorno de Cloud Shell a su estado por defecto. Puede restablecer la configuración del perfil bash y emacs, o puede suprimir todos los datos en el directorio raíz y restablecer la configuración de bash y emacs.

Para restablecer los archivos bash

Puede utilizar la opción --bashfiles (o -b) para restablecer los archivos $ HOME/.bashrc, $ HOME/.bash_profile, $ HOME/.bash_logout y $ HOME/.emacs a sus valores por defecto:

csreset --bashfiles

o

csreset -b

Para restablecer todo

Puede utilizar la opción --all (o -a) para borrar todos los datos del directorio $HOME y restablecer los archivos $HOME/.bashrc, $HOME/.bash_profile, $HOME/.bash_logout y $HOME/.emacs a sus valores por defecto:

csreset --all

o

csreset -a

Mostrar la ayuda

Para mostrar las opciones de sintaxis, utilice la opción --help o -h:

csreset -h

o

csreset --help

Utilización de las versiones de Python

Para obtener la máxima compatibilidad, Cloud Shell incluye las versiones 2 y 3 de Python. Python 2 es la versión por defecto que se ejecutará al introducir 'python' en la línea de comandos.
python
Para ejecutar Python 3, introduzca 'python3' en la línea de comandos.
python3

Trabajar con versiones de kubectl

Cloud Shell se proporciona preinstalado con cada versión de Kubernetes soportada actualmente por OKE. Estas versiones se instalan en /usr/local/bin/kubectl-{version} (por ejemplo: /usr/local/bin/kubectl-v1.17.13) y la ruta de acceso al binario se incluye en la variable de entorno PATH.

Por defecto, la ejecución de kubectl en la sesión de Cloud Shell llamará a la segunda versión más reciente instalada de kubectl. Lo hacemos para optimizar la compatibilidad en función de la política de sesgo de versión de Kubernetes.

Si desea utilizar una versión de kubectl distinta a la versión por defecto, puede llamar al binario específico de la versión.

Por ejemplo:
kubectl-v1.17.13 get services
Otra opción es crear un alias para apuntar kubectl hacia una versión específica.
Por ejemplo:
alias kubectl=kubectl-v1.17.13
Nota

Si desea que el alias se mantenga entre sesiones de Cloud Shell, agregue la definición de alias al archivo ~/.bashrc.

Gestión de tiempos de ejecución de lenguaje

Puede utilizar el comando csruntimectl para ver y gestionar los entornos de ejecución de lenguaje que utiliza Cloud Shell para la ejecución de programas.
Nota

El comando csruntimectl actualmente solo soporta Java.
Para ver qué versiones de un tiempo de ejecución están soportadas actualmente en Cloud Shell, utilice la opción list. Por ejemplo:
csruntimectl java list
Puede utilizar la opción set para especificar qué versión de ejecución utiliza Cloud Shell. Por ejemplo, para definir el tiempo de ejecución de Java:
csruntimectl java set openjdk-11.0.14.1

Tenga en cuenta que esta configuración se mantiene en las sesiones de Cloud Shell.

Utilice la opción help para mostrar una lista de las opciones soportadas actualmente:
csruntimectl help

Obtención de la dirección IP pública de una sesión de Cloud Shell

Puede determinar la dirección IP pública de la sesión de Cloud Shell. Esta información puede resultar útil en una serie de escenarios, incluida la configuración del acceso a recursos externos desde la sesión de Cloud Shell.
Nota

La dirección IP pública de Cloud Shell es dinámica. No cambiará durante una sesión de Cloud Shell, pero puede cambiar al iniciar una nueva sesión.
Puede determinar la dirección IP pública de la sesión de Cloud Shell ejecutando el siguiente comando:
curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'