Поделиться через


Выполнение команд оболочки в веб-терминале Azure Databricks

Веб-терминал Azure Databricks предоставляет удобный и высоко интерактивный способ выполнения команд оболочки в интерфейсе командной строки (CLI), включая команды CLI Databricks, для выполнения действий над объектами Databricks программным способом. Это особенно полезно для расширенных вариантов использования, таких как пакетные операции с несколькими файлами, которые существующие пользовательские интерфейсы (UIs) могут не полностью поддерживаться.

Несколько пользователей могут использовать веб-терминал на одном вычислении.

Для выполнения следующих действий можно использовать веб-терминал:

  • Внесите быстрые изменения в файл с помощью Vim или Emacs.
  • Мониторинг использования ресурсов с помощью таких команд, как htop (использование кластера) или nvidia-smi (использование GPU).
  • Запустите скрипты Python, отличные от Spark.
  • Выполнение операций с файлами с помощью команд оболочки, таких как mv и mkdir.
  • Установка библиотек и управление ими на вычислительных ресурсах.
  • Используйте интерфейс командной строки Databricks для автоматизации различных аспектов Azure Databricks.

Требования

Предупреждение

Azure Databricks прокси-сервер веб-терминала из порта 7681 на драйвере Spark для вычислений. Этот веб-прокси предназначен только для веб-терминала. Если порт занят при запуске вычислений или имеется какой-то конфликт, веб-терминал может не работать должным образом. Если другие веб-службы запускаются через порт 7681, пользователи вычислений могут быть подвержены потенциальным эксплойтам безопасности. Ни Databricks, ни Корпорация Майкрософт не несет ответственности за любые проблемы, возникающие при установке неподдерживаемого программного обеспечения на вычислительных ресурсах.

Запуск веб-терминала

Вы можете запустить веб-терминал на странице сведений о вычислениях или из записной книжки.

Из записной книжки

Чтобы запустить веб-терминал из записной книжки, выполните следующие действия.

  1. Подключите записную книжку к вычислительным ресурсам.
  2. В нижней части правой боковой панели записной книжки щелкните значок Открытие нижней панели в записной книжкеоткрытой нижней панели.
  3. Кроме того, щелкните раскрывающийся список подключенных вычислений, наведите указатель мыши на подключенные вычислительные ресурсы, а затем выберите веб-терминал.

Веб-терминал откроется на панели в нижней части экрана. Кнопки в правом верхнем углу панели позволяют:

  • Откройте новый сеанс терминала на новой вкладке открытие нового сеанса терминала.
  • Перезагрузите сеанс перезагрузить сеанс терминалатерминала.
  • Закройте нижнюю панель закрыть нижнюю панель. Чтобы открыть панель, щелкните Повторное открытие нижней панели внизу правой боковой панели.

На странице сведений о вычислениях

Чтобы запустить веб-терминал на странице сведений о вычислениях, выполните следующие действия.

  1. На боковой панели рабочей области щелкните " Вычисления".
  2. На вкладке "Все назначения вычислений " щелкните имя вычисления.
  3. Нажмите кнопку " Пуск" , чтобы запустить вычисление.
  4. На вкладке "Приложения" щелкните веб-терминал.

Откроется новая вкладка с пользовательским интерфейсом веб-терминала и запросом Bash.

Использование веб-терминала

В веб-терминале можно выполнять команды из корневого каталога в контейнере узла вычислительного драйвера.

У каждого пользователя может быть открыто до 100 активных сеансов веб-терминала (вкладок). При простое сеансов веб-терминала время ожидания может быть превышено, и тогда веб-приложение веб-терминала будет подключено заново, что приведет к новому процессу оболочки. Databricks рекомендует использовать tmux для сохранения сеанса Bash.

Выполнение команд CLI Databricks

Вы также можете использовать веб-терминал для выполнения команд ИНТЕРФЕЙСА командной строки Databricks. Доступный интерфейс командной строки всегда является последней версией, а проверка подлинности основана на текущем пользователе. Вычислительные ресурсы должны соответствовать следующим требованиям:

  • Кластер должен установить Databricks Runtime 15.0 или более поздней версии.
  • Рабочая область не должна быть включена для Приватный канал.

Запустите веб-терминал и выполните следующую команду, чтобы вывести сведения о текущем пользователе:

   databricks current-user me

Кроме того, доступны команды пакета, которые позволяют создавать пакеты ресурсов Databricks и управлять ими непосредственно из веб-терминала в рабочей области Databricks. Например, чтобы создать, развернуть и запустить простой пакет с помощью шаблона по умолчанию:

  1. В корневом каталоге веб-терминала перейдите к домашней рабочей области и выполните следующую команду bundle init:

    cd /Workspace/Users/someone@example.com
    databricks bundle init
    
  2. Примите запросы шаблона по умолчанию, а затем перейдите в каталог пакета и разверните его:

    cd my_project
    databricks bundle deploy
    

    Развернутый my_project пакет можно просмотреть в пользовательском интерфейсе рабочей области Databricks.

  3. Наконец, запустите задание по умолчанию в пакете:

    databricks bundle run my_project_job
    

    Перейдите к запуску заданий, чтобы просмотреть выполняемую работу.

Ограничения

  • Azure Databricks не поддерживает выполнение заданий Spark из веб-терминала.

  • Веб-терминал Azure Databricks недоступен в следующих типах вычислений:

    • Вычисление задания
    • Бессерверные вычисления
    • Вычисления, запущенные с набором DISABLE_WEB_TERMINAL=true переменных среды.
    • Вычислительные ресурсы, запущенные с режимом доступа, равным Shared.
    • Вычисления, запущенные с набором конфигурации spark.databricks.pyspark.enableProcessIsolation Spark, равным true.
  • С момента начальной загрузки страницы действует жесткое ограничение в 12 часов, после чего любое подключение (даже если активно) будет прекращено. Вы можете обновить веб-терминал для повторного подключения. Databricks рекомендует использовать tmux для сохранения сеанса оболочки.

  • Вычислительные ресурсы ARM не могут использовать веб-терминалы для доступа к файлам рабочей области, включая файлы в папках Git.

  • При включении служб контейнеров Docker веб-терминал отключается.