Compartir a través de


Ejecución de comandos de shell en el terminal web de Azure Databricks

El terminal web de Azure Databricks proporciona una manera cómoda e muy interactiva de ejecutar comandos de shell en una interfaz de línea de comandos (CLI), incluidos los comandos de la CLI de Databricks, para realizar acciones en objetos de Databricks mediante programación. Es especialmente útil para casos de uso avanzados, como las operaciones por lotes en varios archivos, que las interfaces de usuario existentes podrían no admitir completamente.

Muchos usuarios pueden usar el terminal web en un solo proceso.

Puede usar el terminal web para hacer lo siguiente:

  • Realizar modificaciones rápidas de archivos con Vim o Emacs.
  • Supervisar el uso de recursos con comandos como htop (uso del clúster) o nvidia-smi (uso de GPU).
  • Ejecutar scripts de Python que no son de Spark.
  • Ejecutar operaciones de archivo con comandos de shell como mv y mkdir.
  • Instalar y administrar bibliotecas en sistemas informáticos.
  • Use la CLI de Databricks para automatizar varios aspectos de Azure Databricks.

Requisitos

Advertencia

Azure Databricks hace de proxy para el servicio de terminal web a partir del puerto 7681 en el controlador de Spark de la unidad computacional. Este proxy web está pensado para su uso exclusivo con el terminal web. Si el puerto está ocupado cuando se inicia el proceso o si hay otro conflicto, es posible que el terminal web no funcione según lo previsto. Si se inician otros servicios web en el puerto 7681, los usuarios de proceso pueden exponerse a posibles vulnerabilidades de seguridad. Ni Databricks ni Microsoft son responsables de ningún problema resultante de la instalación de software no admitido en un proceso.

  • El terminal web está deshabilitado de manera predeterminada para todos los usuarios del área de trabajo. Para habilitarlo, consulte Habilitación del terminal web.
  • CAN ATTACH TOpermiso en un proceso.
  • El terminal web solo se admite con el modo de acceso estándar (anteriormente modo de acceso compartido) en Databricks Runtime 15.1 y versiones posteriores.

Inicio del terminal web

Puede iniciar el terminal web desde la página de detalles de proceso o desde un cuaderno.

Desde un cuaderno

Para iniciar el terminal web desde un cuaderno:

  1. Conecte el portátil para calcular.
  2. En la parte inferior de la barra lateral derecha del cuaderno, haga clic en el icono Abrir panel inferiorAbrir panel inferior en el cuaderno.
  3. Como alternativa, haga clic en la lista desplegable de computación adjunta, pase el puntero sobre la computación adjunta, y a continuación, haga clic en Terminal web.

El terminal web se abre en un panel en la parte inferior de la pantalla. Los botones situados en la esquina superior derecha del panel le permiten:

  • Abra una nueva sesión de terminal en una nueva pestaña abra una nueva sesión de terminal.
  • Recargue una sesión de terminal recargar una sesión de terminal.
  • Cierre el panel inferior cerrar el panel inferior. Para volver a abrir el panel, haga clic en volver a abrir el panel inferior en la parte inferior de la barra lateral derecha.

En la página de detalles del proceso

Para iniciar el terminal web desde la página de detalles de cómputo:

  1. En la barra lateral del área de trabajo, haga clic en Calcular.
  2. En la pestaña Proceso multiuso, haga clic en el nombre del proceso.
  3. Haga clic en Iniciar para iniciar el proceso.
  4. En la pestaña Aplicaciones, haga clic en Terminal web.

Se abre una nueva pestaña con la interfaz de usuario del terminal web y el símbolo de Bash.

Use una terminal web

En el terminal web, puede ejecutar comandos desde la raíz dentro del contenedor del nodo del controlador de proceso.

Cada usuario puede tener hasta 100 sesiones de terminal web activas (pestañas) abiertas. Las sesiones de terminal web inactivas pueden agotar el tiempo de espera y la aplicación web del terminal web se volverá a conectar, lo que dará lugar a un nuevo proceso de shell. Si desea mantener la sesión de Bash, Databricks recomienda usar tmux.

Ejecución de comandos de la CLI de Databricks

También puede usar el terminal web para ejecutar comandos de la CLI de Databricks. La versión de la CLI disponible siempre es la más reciente y la autenticación se basa en el usuario actual.

Nota:

No se admiten comandos de perfil de configuración al ejecutar comandos de la CLI en el terminal web. Esto se debe a que el terminal web usa variables de entorno para autenticarse en la CLI, que precede a los perfiles de configuración en el orden de autenticación de evaluación.

La computación debe cumplir los siguientes requisitos:

  • El clúster debe tener instalado Databricks Runtime 15.0 o superior.
  • El área de trabajo no debe estar habilitada para Private Link.

Inicie el terminal web y ejecute el siguiente comando para generar información sobre el usuario actual:

   databricks current-user me

Los comandos de agrupación también están disponibles, lo que le permite crear y administrar los conjuntos de recursos de Databricks directamente desde el terminal web dentro del área de trabajo de Databricks. Por ejemplo, para crear, implementar y ejecutar un paquete sencillo mediante la plantilla predeterminada:

  1. Desde la raíz del terminal web, vaya a la página principal del área de trabajo y ejecute bundle init:

    cd /Workspace/Users/someone@example.com
    databricks bundle init
    
  2. Acepte las solicitudes de plantilla predeterminadas y, a continuación, cambie al directorio de agrupación e impleméntela:

    cd my_project
    databricks bundle deploy
    

    Puede ver el paquete de my_project implementado en la interfaz de usuario del área de trabajo de Databricks.

  3. Por último, ejecute el trabajo predeterminado en la agrupación:

    databricks bundle run my_project_job
    

    Vaya a Ejecuciones de trabajos para consultar el trabajo en ejecución.

Configuración del terminal web

Puede establecer configuraciones persistentes para el terminal web mediante archivos de configuración .bashrc.

Databricks origina automáticamente los archivos denominados .bashrc desde la carpeta principal del sistema de archivos del área de trabajo. La configuración de estos archivos se activa automáticamente cada vez que inicia una nueva sesión de terminal.

Si desea obtener cualquier otro archivo (como .zshrc) para la experiencia del terminal web, deséquelos desde el archivo .bashrc para conservar la configuración.

Guarde todos los archivos de configuración en la carpeta del área de trabajo, donde puede configurarlos mediante un editor de texto.

Limitaciones

  • Azure Databricks no admite la ejecución de trabajos de Spark desde el terminal web.

  • El terminal web de Azure Databricks no está disponible en los siguientes tipos de proceso:

    • Cómputo de trabajos
    • Proceso iniciado con el conjunto de variables de entorno DISABLE_WEB_TERMINAL=true.
    • Cómputo iniciado con el modo de acceso establecido en Estándar en Databricks Runtime en versiones anteriores a la 15.1. El terminal web está disponible en computación con el modo de acceso estándar (anteriormente modo de acceso compartido) para Databricks Runtime 15.1 y versiones posteriores.
    • Proceso iniciado con el modo de acceso establecido en Estándar con recursos de proceso de ARM en Databricks Runtime por debajo de la versión 16.4.
    • Entorno de proceso sin servidor versión 1.
    • Proceso iniciado con la configuración de Spark spark.databricks.pyspark.enableProcessIsolation establecida en true.
  • Hay un límite máximo de 12 horas desde que se carga la página inicial, después de lo cual se finalizará cualquier conexión, incluso si está activa. Puede actualizar el terminal web para volver a conectarse. Databricks recomienda usar tmux para conservar la sesión del shell.

  • Los recursos de proceso de ARM en Databricks Runtime por debajo de la versión 16.4 no pueden usar terminales web para acceder a los archivos del área de trabajo, incluidos los archivos de carpetas de Git.