Exécuter des commandes d’interpréteur de commandes dans un terminal web Azure Databricks

Le terminal web Azure Databricks constitue un moyen pratique et hautement interactif d’exécuter des commandes shell dans une interface de ligne de commande (CLI), y compris les commandes de l’interface CLI Databricks, pour effectuer des actions sur des objets Databricks par programmation. Il est particulièrement utile pour les cas d’utilisation avancés, tels que les opérations par lots sur plusieurs fichiers, que les interfaces utilisateur existantes peuvent ne pas prendre entièrement en charge.

Plusieurs utilisateurs peuvent utiliser le terminal web sur un calcul.

Vous pouvez recourir au terminal web pour effectuer les opérations suivantes :

  • Apporter des modifications rapides aux fichiers à l’aide de Vim ou Emacs.
  • Surveiller l’utilisation des ressources avec des commandes telles que htop (utilisation du cluster) ou nvidia-smi (utilisation du GPU).
  • Exécuter des scripts Python non Spark.
  • Exécuter des opérations de fichier avec des commandes shell telles que mv et mkdir.
  • Installez et gérez des bibliothèques sur le calcul.
  • Utilisez l’interface CLI Databricks pour automatiser différents aspects d’Azure Databricks.

Spécifications

Avertissement

Azure Databricks proxyse le service de terminal web à partir du port 7681 sur le pilote Spark du calcul. Ce proxy web est destiné à être utilisé uniquement avec le terminal web. Si le port est occupé au démarrage du calcul ou en cas de conflit, il est possible que le terminal web fonctionne pas comme prévu. Si d’autres services web sont lancés sur le port 7681, les utilisateurs du calcul peuvent être exposés à des codes malveillants exploitant une faille de sécurité éventuels. Ni Databricks ni Microsoft ne sont responsables des problèmes résultant de l’installation de logiciels non pris en charge sur un calcul.

  • Le terminal web est désactivé par défaut pour tous les utilisateurs de l’espace de travail. Pour l’activer, consultez l’article Activer le terminal web.
  • Autorisation PEUT ATTACHER À sur un calcul.
  • Le calcul doit utiliser le mode d’accès Utilisateur unique ou Aucune isolation partagée.

Lancer le terminal web

Vous pouvez lancer le terminal web à partir de la page de détails d’un calcul ou d’un notebook.

À partir d’un notebook

Pour lancer le terminal web à partir d’un notebook :

  1. Connectez le notebook au calcul.
  2. Dans le bas de la barre latérale droite du notebook, cliquez sur l’icône Ouvrir le panneau inférieur Ouvrir le panneau inférieur du notebook.
  3. Vous pouvez également cliquer sur la liste déroulante du calcul attaché, pointer sur le calcul attaché, puis cliquer sur Terminal web.

Le terminal web s’ouvre dans un panneau en bas de l’écran. Les boutons situés dans le coin supérieur droit du panneau vous permettent d’effectuer les opérations suivantes :

  • Ouvrir une nouvelle session de terminal dans un nouvel ongletouvre une nouvelle session de terminal.
  • Recharger une session de terminalrecharge une session de terminal.
  • Fermer le panneau inférieurferme le panneau inférieur. Pour rouvrir le panneau, cliquez surrouvrir le panneau inférieur en bas de la barre latérale droite.

À partir de la page des détails du calcul

Pour lancer le terminal web à partir de la page de détails du calcul :

  1. Dans la barre latérale de l’espace de travail, cliquez sur Calcul.
  2. Sous l’onglet Calcul à usage unique, cliquez sur le nom du calcul.
  3. Cliquez sur Démarrer pour démarrer le calcul.
  4. Sous l’onglet Applications, cliquez sur Terminal web.

Un nouvel onglet s’ouvre avec l’interface utilisateur du terminal web et l’invite Bash.

Utiliser le terminal web

Dans le terminal web, vous pouvez exécuter des commandes à partir de la racine à l’intérieur du conteneur du nœud de pilote de calcul.

Chaque utilisateur peut avoir jusqu’à 100 sessions de terminal web actives (onglets) ouvertes. Les sessions de terminal web inactives peuvent expirer et l’application web du terminal web se reconnectera, ce qui entraînera un nouveau processus d’interpréteur de commandes. Si vous souhaitez conserver votre session Bash, Databricks recommande d’utiliser tmux.

Exécuter des commandes CLI Databricks

Vous pouvez également utiliser le terminal web pour exécuter des commandes CLI Databricks. L’interface CLI disponible est toujours la dernière version, et l’authentification est basée sur l’utilisateur actuel. Le calcul doit répondre aux exigences suivantes :

  • La version 15.0 ou ultérieure de Databricks Runtime doit être installée sur le cluster.
  • L’espace de travail ne doit pas être activé pour Private Link.

Lancez le terminal web et exécutez la commande suivante pour générer des informations sur l’utilisateur actuel :

   databricks current-user me

Des commandes de regroupement sont également disponibles, ce qui vous permet de créer et de gérer vos packs de ressources Databricks directement à partir du terminal web dans l’espace de travail Databricks. Par exemple, pour créer, déployer et exécuter un pack simple à l’aide du modèle par défaut :

  1. À partir de la racine du terminal web, accédez à la page d’accueil de votre espace de travail, puis exécutez bundle init :

    cd /Workspace/Users/someone@example.com
    databricks bundle init
    
  2. Acceptez les invites de modèle par défaut, puis accédez au répertoire du pack et déployez-le :

    cd my_project
    databricks bundle deploy
    

    Vous pouvez afficher le pack my_project déployé dans l’interface utilisateur de l’espace de travail Databricks.

  3. Enfin, exécutez le travail par défaut dans le pack :

    databricks bundle run my_project_job
    

    Accédez à Exécutions de travaux pour afficher le travail en cours d’exécution.

Limites

  • Azure Databricks ne prend pas en charge l’exécution de travaux Spark à partir du terminal web.

  • Le terminal web Azure Databricks n’est pas disponible dans les types de calcul suivants :

    • Calcul de travaux
    • Calcul serverless
    • Calculs lancés avec la variable d’environnement DISABLE_WEB_TERMINAL=true définie.
    • Calculs lancés avec le mode d’accès défini sur Partagé.
    • Calculs lancés avec la configuration Spark spark.databricks.pyspark.enableProcessIsolation définie sur true.
  • Une limite stricte de 12 heures est imposée à compter du chargement initial de la page, après quoi toute connexion, même si elle est active, est arrêtée. Vous pouvez actualiser le terminal web pour vous reconnecter. Databricks recommande d’utiliser tmux pour conserver votre session shell.

  • Les ressources de calcul ARM ne peuvent pas utiliser de terminaux web pour accéder aux fichiers d’espace de travail, y compris les fichiers dans les dossiers Git.

  • L’activation de Docker Container Services désactive le terminal web.