Cloud Shell

Oracle Cloud Infrastructure (OCI) Cloud Shell es un terminal basado en explorador accesible desde la consola de Oracle Cloud. Cloud Shell puede utilizarse de forma gratuita (dentro de los límites mensuales del arrendamiento) y proporciona acceso a un shell de Linux con una CLI de Oracle Cloud Infrastructure autenticada previamente, una instalación de Ansible autenticada previamente y otras herramientas útiles para los siguientes tutoriales y laboratorios de servicio de Oracle Cloud Infrastructure. Cloud Shell es una función que está disponible para todos los usuarios de OCI, a la que se puede acceder desde la consola. Su instancia de Cloud Shell aparecerá en la consola de Oracle Cloud como un marco persistente de la consola que permanecerá activo mientras se desplaza a distintas páginas de la consola.

Cloud Shell proporciona:

  • Una máquina efímera que se utilizará como host para un shell de Linux, preconfigurada con la versión más reciente de la interfaz de línea de comandos (CLI) de OCI y una serie de herramientas útiles.

  • 5 GB de almacenamiento para el directorio raíz

  • Un marco persistente de la consola que permanece activo mientras se desplaza a distintas páginas de la consola.

Funcionamiento de Cloud Shell

La máquina de Cloud Shell es una máquina virtual pequeña que ejecuta un shell Bash al que accede a través de la consola de OCI. Cloud Shell incluye una CLI de OCI autenticada previamente, configurada con la región de la página inicial de arrendamiento de la consola, así como herramientas y utilidades actualizadas.

Cloud Shell incluye 5 GB de almacenamiento persistente para el directorio raíz a fin de que pueda realizar cambios locales en el directorio raíz y, a continuación, seguir trabajando en el proyecto cuando vuelva a Cloud Shell.

Cloud Shell puede utilizarse de forma gratuita (dentro de los límites mensuales del arrendamiento) y no necesita ninguna configuración ni otros requisitos excepto una política de IAM que otorgue acceso a Cloud Shell. Cloud Shell incluye una VM aprovisionada para usted que se ejecuta en su propio arrendamiento (por lo que no utiliza ninguno de los recursos de su arrendamiento) y aloja el shell en un sistema operativo de Oracle Linux mientras utiliza Cloud Shell de forma activa.

Qué se incluye en Cloud Shell

Además de la CLI de OCI, la VM de Cloud Shell incluye versiones actuales de muchas utilidades y herramientas útiles preinstaladas, incluidas las siguientes:

  • Git
  • Java
  • Python (2 y 3)
  • GraalVM Enterprise JDK 17 e imagen nativa
  • SQL Plus
  • kubectl
  • helm
  • maven
  • gradle
  • terraform
  • ansible
  • node.js
  • iputils
  • jqmake
  • tmux
  • vim
  • NPM
  • wget
  • zip/unzip
  • nano
  • emacs
  • pip
  • bash
  • sh
  • tar
  • nvm
  • mysql-community-client
  • Motor de Docker
  • ipython
  • oci-powershell-modules
  • GoldenGate Admin client
  • La mayoría de los SDK de OCI, incluidos:
    • Java
    • Python
    • Go
    • TypeScript y JavaScript
    • Ruby

Política de IAM necesaria

Para empezar a utilizar Cloud Shell, necesitará otorgar acceso de usuario a Cloud Shell mediante una política de IAM. Todos los servicios de Oracle Cloud Infrastructure se integran con IAM con fines de autenticación y autorización de todas las interfaces (la consola, el SDK o la CLI y la API de REST).

Para utilizar Oracle Cloud Infrastructure, se le debe proporcionar el tipo de acceso necesario en una política escrita por un administrador en el compartimento raíz del arrendamiento, tanto si está utilizando la consola como si utiliza la API de REST con un SDK, una CLI u otra herramienta. Si intenta realizar una acción y obtiene un mensaje indicando que no tiene permiso o que no está autorizado, confirme con el administrador que se le ha otorgado acceso.

Nota

Cloud Shell no soporta políticas en el nivel de compartimento, solo en el nivel de arrendamiento.
El nombre de recurso para Cloud Shell es `cloud-shell`. A continuación se muestra una política de ejemplo para otorgar acceso a Cloud Shell:
allow group <GROUP-NAME> to use cloud-shell in tenancy
En esta política de ejemplo se muestra cómo permitir que un grupo dentro de un dominio utilice Cloud Shell:
allow group <DOMAIN-NAME>/<GROUP-NAME> to use cloud-shell in tenancy

Si es la primera vez que trabaja con políticas, consulte Introducción a las políticas y Políticas comunes.

Limitaciones de Cloud Shell

Tenga en cuenta las siguientes limitaciones al utilizar Cloud Shell:

  • Cloud Shell incluye 5 GB de almacenamiento para el directorio raíz de la VM. Este almacenamiento es persistente de una sesión a otra, pero después de 6 meses sin utilizarlo, el administrador de arrendamiento recibirá una notificación en la que se indica que el almacenamiento se eliminará en 60 días. Al iniciar una sesión de Cloud Shell, se restablece el temporizador de eliminación de almacenamiento.
  • Cloud Shell no soporta el montaje de almacenamiento adicional.
  • Cloud Shell no escanea los archivos de usuario para detectar malware o virus.
  • Las sesiones de Cloud Shell no permiten conexiones entrantes y no hay ninguna dirección IP pública disponible.
  • El acceso privado a Cloud Shell no soporta la resolución de DNS para instancias dentro de una VCN privada. Acceda a instancias privadas mediante una dirección IP al utilizar el acceso privado. Se admite la resolución de DNS pública.
  • La CLI de OCI ejecutará comandos con la región seleccionada en el menú de selección Región de la consola cuando se inició Cloud Shell. Si cambia la selección de región en la consola, no se cambiará la región de las instancias existentes de Cloud Shell; deberá abrir una nueva instancia de Cloud Shell para cambiar las regiones.
  • Las sesiones de Cloud Shell tienen una duración máxima de 24 horas y un timeout después de 20 minutos de inactividad.
  • Cloud Shell utiliza websockets para comunicarse entre el explorador y el servicio. Si el explorador tiene los websockets desactivados o utiliza un proxy corporativo que tiene los websockets desactivados, verá un mensaje de error ("Se ha producido un error inesperado") al intentar iniciar Cloud Shell desde la consola.

  • Cloud Shell se ha diseñado para el uso interactivo con los recursos de Oracle Cloud Infrastructure. Se recomienda a los usuarios que necesiten almacenamiento adicional para Cloud Shell o que deseen ejecutar tareas de larga ejecución no interactivas utilizar los recursos de almacenamiento y Compute en su arrendamiento.
  • Para obtener la máxima compatibilidad, Cloud Shell incluye Python versión 2 y Python versión 3. Python 2 es la versión por defecto que se ejecutará al introducir 'python' en la línea de comandos. Para ejecutar Python 3, introduzca 'python3' en la línea de comandos.
  • Las siguientes palabras reservadas no se pueden utilizar como el nombre usuario para un usuario de Cloud Shell: oci, root, bin, daemon, adm, lp, sync, shutdown, halt, mai, operator, games, ftp, nobody, oci, systemd-network, dbus, polkitd, tss y apache. Si intenta crear una sesión de Cloud Shell cuando se conecte con un nombre de usuario (o la parte del nombre que aparece antes del signo @, si el nombre de usuario es una dirección de correo electrónico) que sea una de estas palabras reservadas, aparecerá un mensaje de error del tipo "Error inesperado".
  • Los nombres de usuario numéricos en su totalidad (por ejemplo, "1234") no están soportados por Cloud Shell.
  • La zona horaria de la sesión de Cloud Shell es UTC y no se puede cambiar.
  • Cloud Shell no permite el acceso raíz ni el uso de sudo, por lo que no es posible instalar los paquetes que requieren acceso raíz para la instalación. Muchos paquetes están disponibles en versiones que no requieren la raíz para la instalación; puede desempaquetarlos e instalarlos en el directorio raíz.
  • Cloud Shell no permite el uso de ping, ya que ping requiere acceso raíz.
  • Cloud Shell se inicia en modo FIPS, lo que puede afectar el comportamiento de algunos comandos.
  • Cloud Shell no puede generar claves PKCS#1 al utilizar el comando openssl, porque Cloud Shell se inicia en modo FIPS. El modo FIPS requiere que Cloud Shell genere claves PKCS#8.
  • Para obtener más información sobre los límites de Cloud Shell, consulte la sección Cloud Shell de Límites de servicio.

Acceso a Cloud Shell y otras restricciones

Puede acceder a los recursos de OCI desde Cloud Shell de acuerdo con las políticas otorgadas por el administrador de arrendamiento. No hay acceso adicional porque está utilizando Cloud Shell, que no proporciona acceso adicional al arrendamiento ni a los recursos privados en sus VCN de arrendamiento.
Nota

Cloud Shell utiliza websockets para comunicarse entre el explorador y el servicio. Si el explorador tiene los websockets desactivados o utiliza un proxy corporativo que tiene los websockets desactivados, verá un mensaje de error ("Se ha producido un error inesperado") al intentar iniciar Cloud Shell desde la consola.

Aunque Cloud Shell proporciona acceso a Internet, no se produce ninguna entrada del mundo exterior a Cloud Shell (por ejemplo, no puede utilizar ssh para acceder a Cloud Shell). Si el administrador de arrendamiento no desea permitir el acceso a Internet desde OCI, no debe otorgar acceso a Cloud Shell mediante una política de IAM.

Propiedad y ubicación de recursos de Cloud Shell

Cuando inicia Cloud Shell por primera vez, el servicio crea un volumen de almacenamiento de bloques persistente (5 GB) para el directorio raíz. El volumen del directorio raíz se encuentra en la región principal del arrendamiento. La máquina que ejecuta la sesión de Cloud Shell también está ubicada en la región principal del arrendamiento.

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.

El cambio de la selección de región de la consola o la conexión a la consola mediante una URL regional diferente no afectarán a la ubicación de la máquina de Cloud Shell y el volumen del directorio raíz. Para confirmar la región principal de arrendamiento, consulte la página Detalles de arrendamiento en la consola.

Nota

Los recursos de Cloud Shell (incluida la máquina virtual utilizada para la sesión de Cloud Shell) son propiedad del servicio Cloud Shell y no existen en su arrendamiento. Por este motivo, no puede agregar la máquina virtual de Cloud Shell que está utilizando a un grupo dinámico de su arrendamiento, ni utilizar el principio de instancia de la instancia utilizada para la sesión de Cloud Shell.

Cloud Shell y regiones

Al iniciar Cloud Shell, el servicio configura la sesión de Cloud Shell con la región seleccionada actualmente en la consola para que la CLI de OCI interactúe con la región de consola seleccionada.

En la petición de datos bash por defecto en Cloud Shell, la región con la que interactúa la CLI de OCI se repite en la petición de datos de la línea de comandos de Cloud Shell:

Petición de datos de Cloud Shell con información de región

Cualquier cambio en la región seleccionada de la consola después de iniciar la sesión de Cloud Shell no tendrá ningún efecto en la sesión de Cloud Shell activa. Si desea cambiar la región con la que interactúa la CLI de OCI, en Cloud Shell, puede:

  • Salir de la sesión actual de Cloud Shell, cambiar la región seleccionada en la consola y, a continuación, iniciar una nueva sesión de Cloud Shell.
  • Modificar el perfil de CLI de OCI seleccionado actualmente mediante la variable de entorno OCI_CLI_PROFILE.

Para obtener más información, consulte la sección "Gestión de regiones" en Uso de Cloud Shell.

Acceso privado de Cloud Shell

El acceso privado de Cloud Shell permite conectar una sesión de Cloud Shell a una red privada para que pueda acceder a los recursos de su red privada sin tener el flujo de tráfico de red a través de redes públicas. Entre los ejemplos de dónde puede ser útil el acceso privado, se incluyen su uso en SSH en instancias informáticas dentro de una red privada o la gestión de un cluster de OKE privado.

Nota

Una instancia de Cloud Shell es una instancia privada y funciona como una instancia privada para la configuración de red. El uso de solo un gateway de Internet no permitirá la salida a Internet desde una subred privada. Mediante un gateway de servicio o un gateway de NAT, lo hará. Para obtener más información, consulte la documentación de gateway de Internet.
Importante

El acceso privado no soporta la resolución de DNS para instancias dentro de una VCN privada. Acceda a instancias privadas mediante una dirección IP al utilizar el acceso privado. Se admite la resolución de DNS pública.

Requisitos y política de IAM

Para utilizar el acceso privado, usted (o un administrador) deberá especificar las siguientes políticas:

  • allow group <group> to use subnets in compartment <compartment>
  • allow group <group> to use vnics in compartment <compartment>
  • allow group <group> to use network-security-groups in compartment <compartment>
  • allow group <group> to inspect vcns in compartment <compartment>

Si es la primera vez que trabaja con políticas, consulte Introducción a las políticas y Políticas comunes.

También tendrá que crear subredes y subredes privadas en los compartimentos adecuados. Para obtener más información, consulte las VCN y subredes en la documentación de redes.

Introducción al acceso privado

Para cambiar la red que está utilizando la sesión de Cloud Shell, utilice el menú desplegable Red en la parte superior de la ventana de terminal de Cloud Shell:Ubicación del menú de red de Cloud Shell

Seleccione la opción de menú Configuración de red privada:

Opción de menú de configuración de red privada.

Si selecciona esta opción, se abrirá el panel Configuración de red privada. Este panel permite seleccionar detalles para la red privada que desea utilizar:

Seleccione el compartimento que desea utilizar y, a continuación, seleccione la VCN y la subred que desea utilizar en los cuadros de lista desplegable. También puede seleccionar uno o más grupos de seguridad de red que utilizar.
Nota

Solo están disponibles las VCN y las subredes de la región principal. Si necesita acceder a una subred de una región que no es su región principal, puede utilizar el intercambio de tráfico desde la subred utilizada por el acceso privado para acceder a ella. Para obtener más información, consulte Intercambio de tráfico entre regiones de la VCN.

Por ejemplo:

Ejemplo de cuadro de diálogo de configuración de red privada de Cloud Shell finalizado

Haga clic en el botón Conectar a esta red para cambiar la conexión de red de Cloud Shell.

La sesión de Cloud Shell ahora está conectada a su red privada, como se indica en la lista desplegable Red en la parte superior de la sesión de terminal de Cloud Shell:

Lista desplegable de redes de Cloud Shell

Puede ver detalles sobre su conexión de red privada haciendo clic en el enlace Detalles:

Vista de detalles de red privada de Cloud Shell