メインコンテンツまでスキップ

Databricks Webターミナルでシェルコマンドを実行する

Databricks Webターミナルは、Databricksのオブジェクトに対するプログラムを用いた操作をするための、コマンドラインインターフェイス(CLI)でDatabricks CLI コマンドを含むシェルコマンドを実行する便利で高度にインタラクティブな方法を提供します。これは、既存のユーザーインターフェース (UI) が完全にサポートしていない可能性のある複数のファイルに対するバッチ操作など、高度なユースケースに特に役立ちます。

SSHと異なり、多くのユーザーがWebターミナルを1つのコンピュートで利用でき、キーの設定も必要ありません。

Webターミナルを使用して、次の操作を実行できます。

  • VimまたはEmacsを使用してファイルをすばやく編集します。
  • htop (クラスターの使用状況) や nvidia-smi (GPU の使用状況) などのコマンドを使用して、リソースの使用状況を監視します。
  • Spark 以外の Python スクリプトを実行します。
  • mvmkdirなどのシェル コマンドを使用してファイル操作を実行します。
  • ライブラリをコンピュートにインストールして管理します。
  • Databricks CLI を使用して、Databricks のさまざまな側面を自動化します。

必要条件

警告

Databricks 、コンピュートの Spark ドライバーのポート7681からWebターミナルサービスをプロキシします。 このWebプロキシは、Webターミナルでの使用のみを目的としています。 コンピュートの起動時にポートが占有されていたり、何らかの競合がある場合、Webターミナルが期待どおりに動作しない可能性があります。 他の Web サービスがポート 7681 で起動されている場合、コンピュート ユーザーは潜在的なセキュリティ悪用にさらされる可能性があります。 Databricks は、サポートされていないソフトウェアをコンピュートにインストールしたことに起因する問題について責任を負いません。

  • Webターミナルは、すべてのワークスペースユーザーに対してデフォルトによって無効になっています。 有効にするには、 Webターミナルを有効にするを参照してください。
  • コンピュートに対するCan Attach To権限。
  • Webターミナルは、 Databricks Runtime 15.1以降の標準アクセスモード(旧共有アクセスモード)でのみサポートされています。

Webターミナルを起動します

Webターミナルは、コンピュートの詳細ページまたはノートブックから起動できます。

ノートブックから

ノートブックからWebターミナルを起動するには:

  1. ノートブックをコンピュートに接続します。
  2. ノートブックの右サイドバーの下部にある [ 下部パネルを開く ] アイコン ノートブックの底板を開くをクリックします。
  3. または、添付のコンピュートドロップダウンをクリックし、添付のコンピュートにカーソルを合わせて、[ Webターミナル ]をクリックします。

Webターミナルは、画面下部のパネルで開きます。 パネルの右上にあるボタンを使用すると、次のことができます。

  • 新しいタブ 新しいターミナルセッションを開くで新しいターミナルセッションを開きます。
  • ターミナル セッション 端末セッションの再読み込みを再読み込みします。
  • 底面パネル ボトムパネルを閉じるを閉じます。 パネルを再度開くには、右側のサイドバーの下部にある [ 底面パネルを再度開く ] をクリックします。

コンピュート詳細ページより

コンピュート詳細ページからWebターミナルを起動するには:

  1. ワークスペースのサイドバーで、[ コンピュート ] をクリックします。
  2. [ All-purpose コンピュート ] タブで、コンピュートの名前をクリックします。
  3. [開始 ]をクリックしてコンピュートを開始します。
  4. 「Apps 」タブで、「 Webターミナル 」をクリックします。

新しいタブが開き、WebターミナルUIとBashプロンプトが表示されます。

Webターミナルを使用する

Webターミナルでは、コンピュートdriverノードのコンテナ内のルートからコマンドを実行することができます。

各ユーザーは、最大100のアクティブなWebターミナルセッション(タブ)を開くことができます。 アイドル状態のWebターミナルセッションがタイムアウトし、WebターミナルWebアプリケーションが再接続され、新しいシェルプロセスが発生する可能性があります。 Bash セッションを保持する場合、Databricks では tmux を使用することをお勧めします。

Databricks CLI コマンドの実行

Webターミナルを使用して Databricks CLI コマンドを実行することもできます。 使用可能な CLI は常に最新バージョンであり、認証は現在のユーザーに基づいて行われます。 コンピュートは、次の要件を満たしている必要があります。

  • クラスターには、 Databricks Runtime 15.0 以降がインストールされている必要があります。
  • ワークスペースで PrivateLink を有効にしないでください。

Webターミナルを起動し、次のコマンドを実行して、現在のユーザーに関する情報を出力します。

Bash
   databricks current-user me

また、Bundle コマンドも用意されており、DatabricksDatabricksワークスペース内のWebターミナルから直接 、 アセットバンドル を作成・管理することができます。たとえば、デフォルトのテンプレートを使用して単純なバンドルを作成、デプロイ、および実行するには、次のようにします。

  1. Webターミナルのルートからワークスペースのホームに移動し、 bundle initを実行します。

    Bash
    cd /Workspace/Users/someone@example.com
    databricks bundle init
  2. デフォルトのテンプレートプロンプトを受け入れ、バンドルディレクトリに移動してデプロイします。

    Bash
    cd my_project
    databricks bundle deploy

    デプロイされた my_project バンドルは、Databricks ワークスペース UI で表示できます。

  3. 最後に、バンドル内のデフォルトジョブを実行します。

    Bash
    databricks bundle run my_project_job

    [ジョブ実行 ] に移動して、実行中のジョブを確認します。

Webターミナルを構成する

.bashrcを使用して、Webターミナルの永続的な構成を設定できます 設定ファイル。

Databricks .bashrc という名前のファイルを自動的にソース ワークスペース ファイル システムのホームフォルダーから。 これらのファイルの設定は、新しいターミナルセッションを開始するたびに自動的にアクティブになります。

他のファイル (.zshrc など) をソースにする場合 あなたのWebターミナル体験のために、あなたの.bashrcからそれらをソース ファイルを使用して構成を永続化します。

すべての設定ファイルをワークスペースフォルダに保存し、テキストエディタを使用して設定できるようにします。

制限

  • Databricks は、Webターミナルからの Spark ジョブの実行をサポートしていません。

  • Databricks Webターミナルは、次のコンピュートタイプでは使用できません。

    • ジョブコンピューティング

    • サーバーレスコンピュート

    • コンピュートは DISABLE_WEB_TERMINAL=true 環境変数を設定して起動しました。

    • コンピュートは、15.1未満のDatabricks Runtimeで アクセスモード を 標準 に設定して起動しました。Webターミナルは、 Databricks Runtime 15.1以上の標準アクセスモード(旧共有アクセスモード)のコンピュートで利用できます。

    • アクセス モードStandard に設定して ARM コンピュート リソースを使用して起動しました。

    • Spark構成で起動したコンピュートspark.databricks.pyspark.enableProcessIsolation``trueに設定されています。

  • 最初のページの読み込みから 12 時間のハード制限があり、その後は、アクティブであってもすべての接続が終了します。 Webターミナルを更新して再接続できます。 Databricks では、 tmux を使用してシェル セッションを保持することをお勧めします。

  • ARM コンピュート リソースは、Webターミナルを使用して、 Git フォルダ内のファイルを含むワークスペース ファイルにアクセスすることはできません。

  • Docker Container Servicesを有効にすると、Webターミナルが無効になります。