Web terminal | Databricks on AWS [2023/3/16時点]の翻訳です。
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
DatabricksのWebターミナルは、Sparkドライバーノードでシェルコマンドを実行したり、VimやEmacsのようなエディタを使用できる便利で高度にインタラクティブな手段を提供します。SSHの使用とは異なり、Webターミナルは、一つのクラスターで多数のユーザーによって使用でき、キーのセットアップは不要です。Webターミナルの使用例には、リソース使用量の監視やLinuxパッケージのインストールが含まれます。
Webターミナルはデフォルトではすべてのユーザーに対して無効化されています。
Dockerコンテナサービスを有効化すると、Webターミナルを無効化します。
警告!
DatabricksはクラスターSparkドライバーのポート7681からWebターミナルサービスをプロキシーします。このWebプロキシーは、Webターミナルのみに使用されることを意図しています。クラスター起動時に占有されている、あるいは他の競合がある際には、Webターミナルは期待通りに動作しません。他のWebサービスがポート7681で起動されると、クラスターのユーザーは潜在的なセキュリティの悪用の影響を受ける可能性があります。Databricksでは、クラスターでサポートされていないソフトウェアのインストールによって生じるいかなる問題にも責任は持ちません。
要件
- クラスターに対するCan Attach To権限。
- DatabricksワークスペースでWebターミナルが有効化されている必要があります。
Webターミナルの起動
Webターミナルを起動するには、以下のいずれかを行います:
- クラスター詳細ページで、AppsタブをクリックしてLaunch Web Terminalをクリックします。
- ノートブックで、ドロップダウンからアタッチされているクラスターを栗串、アタッチされているクラスターをクリックし、Terminalをクリックします。
新規タブでWebターミナルUIとBashプロンプトが開きます。ここで、クラスタードライバーノードのコンテナ内のrootとしてコマンドを実行することができます。
それぞれのユーザーは最大100のアクティブなWebターミナルのセッション(タブ)を開くことができます。アイドル状態のWebターミナルセッションはタイムアウトすることがあり、WebターミナルのWebアプリケーションは再接続して新たなシェルプロセスを起動します。Bashセッションを維持したい場合にはtmuxを使うことをお勧めします。
制限
- DatabricksではWebターミナルからのSparkジョブの実行をサポートしていません。さらに、DatabricksのWebターミナルは以下のクラスタータイプでは利用できません:
- ジョブクラスター
- 環境変数で
DISABLE_WEB_TERMINAL=true
が設定されて起動されたクラスター - アクセスモードがSharedに設定されて起動されたクラスター
- Spark設定
spark.databricks.pyspark.enableProcessIsolation
がtrue
に設定されて起動されたクラスター
- 最初のページがロードされて、いかなる接続があり、アクティブだったとしても12時間後には停止されるハードリミットがあります。再接続するためにWebターミナルをリフレッシュすることができます。シェルのセッションを維持するためにはtmuxを使うことをお勧めします。
- Dockerコンテナサービスを有効化すると、Webターミナルを無効化します。