Important
この機能は ベータ版です。 ワークスペースでこの機能プレビューを有効にするには、ワークスペースプレビューページの Databricksサンドボックス 設定に切り替えてください。 Manage Azure Databricks プレビューを参照してください。
Databricks Sandboxは、Databricks REST API、SDK、またはDatabricks CLIを通じて、信頼できないコードを孤立した環境で実行できるようにします。 サンドボックスは、コードを動的に実行するためのサーバーレスのオンデマンド計算を提供します。
各サンドボックスには永続的なホームディレクトリが含まれています。 サンドボックスはいつでも停止・開始でき、ホームディレクトリ内のデータはそのまま残ります。
サンドボックスは以下の用途に理想的です:
- エージェントハーネスを運用しています。
- ユーザー作成またはAI作成のコードを実行します。
- バックグラウンド タスクやワーカーの実行。
- インタラクティブなIDEまたはSSHセッションの起動。
前提条件
ワークスペースは、サポートされているリージョンに存在する必要があります。 「利用可能なリージョンに制限がある機能」を参照してください。
SDKを使うにはPython 3.10以上が必要です。
SSH経由でDatabricks CLIを使用するには、 Databricks CLIをインストールし 、以下の方法で認証してください
databricks auth login:databricks auth login # authenticate to a Databricks workspace
概要
サンドボックスを作成しコードを実行するには、 Databricksサンドボックスのクイックスタートをご覧ください。 クイックスタートはサンドボックスの各使用方法をカバーしています:
- Agent Bricks CLIで構築したエージェント向けのサンドボックスツールです。
- Python用のDatabricks SDK、コードからサンドボックスを扱うための推奨手段
- SSH経由でサンドボックスに接続するための Databricks CLI
コンピューティング サイズ
Databricks Sandboxは4つのvCPUと8GBのRAMを搭載しています。 このサイズは設定できません。
Storage
Warning
ベータ期間終了時に、Databricksはサンドボックスに保存されたデータの一度きりの一回限りの整理を行うかもしれません。 失う余裕のないものは保管しないでください。
Databricks Sandboxにはネットワーク接続ストレージが付属しています。
- ホームディレクトリ(
/home/sandbox-agent)のデータはDatabricksサンドボックスの寿命中永続します。 Databricks Sandboxを停止しても、次のセッション開始時にホームディレクトリ内のデータは利用可能です。 - ホームディレクトリは最大100GBまで保存可能です。 現時点では、これを変更することはできません。
- ホームディレクトリの外で最大10GBまで保存できますが、サンドボックスを停止するとこのデータは削除されます。
ネットワーク
サンドボックスからのネットワーク出口には制限がなく、出口の設定もできません。
Databricksの認証情報
サンドボックス内のコードがAzure Databricks APIを呼び出すために、各サンドボックスにはそのサンドボックスを作成したユーザーとして認証されるAzure Databricksの認証情報が割り当てられています。 認証情報内の各トークンは1時間有効で、期限切れ前に自動的に更新されます。 更新は最大24時間続き、その後資格情報は失効します。 認証情報はサインインセッションに依存しないので、サインアウトしてもあなたのトークンが切れても有効に動作し続けます。
認証情報はDEFAULTに~/.databrickscfgプロファイルとして保存されるため、Databricks SDKやサンドボックス内のDatabricks CLIはそれを自動的に使用します。
カスタム イメージ
Artifact Registryに保存した自分のコンテナイメージからサンドボックスを作成できるので、すべてのサンドボックスはパッケージ、ツール、設定が既にインストールされている状態で始まります。 「カスタム イメージからサンドボックスを作成」を参照してください。
使用コスト
Databricksは現在、この機能の使用に対して料金を請求していません。 ただし、ベータ版の機能のコストや価格は変更される場合があります。
請求使用量の詳細については、Databricks の価格設定をご覧ください。 Databricksは以下の請求サンドボックス利用を予想しています:
- ランタイム計算:Databricksサンドボックスが稼働中は時間単位で請求されます。
- 永続的ストレージ:Databricksサンドボックスが削除されるまで、ホームディレクトリに保存されたデータに対して請求されます。 Databricksサンドボックスインスタンスが存在する限り、ストレージは請求されます。 ストレージ料金を支払うのをやめるには、サンドボックスを削除する必要があります。
- データ転送
Limitations
- クオータ制が施行されています。 デフォルトでは、ユーザーあたり最大200個のアクティブなサンドボックス(すべての状態で合計800個)まで、ワークスペースは最大400個のアクティブなサンドボックス(合計2,000個)までしか持てません。 増額を申請するには、Azure Databricksのアカウントチームにお問い合わせください。 リソース制限に関するページを参照してください。
- Databricks SDKで作成したサンドボックスにはSSH経由で接続できません。 SSHで接続するには、Databricks CLIでサンドボックスを作成してください。 「Databricks CLIを使ってサンドボックスを作成する」を参照してください。
- Databricks Sandboxはコード実行のための計算プリミティブであり、汎用的なSparkランタイムではありません。 Sparkワークロードについては、 Connectを使ってサーバーレスコンピュートを活用してください。
- Databricksサンドボックスの公開IPアドレスはいつでも変更される可能性があります。 サンドボックスのデフォルトのイングレスはすべてのトラフィックに対して閉鎖されており、これを変更することはできません。
- ホームディレクトリ外の変更はサンドボックスを停止した後に持続しません。 すべてのサンドボックスを同じパッケージと設定で起動するには、カスタムイメージを使いましょう。 「カスタム イメージからサンドボックスを作成」を参照してください。 同じサンドボックスのセッション間でファイルを再利用するには、ホームディレクトリに保存してください。