Databricks アセットバンドルで Lakebase を管理する
このガイドは、Databricks Asset Bundle を使い始めて、インフラストラクチャをコードとして使用して Lakebase リソースを管理するのに役立ちます。Lakebase プロジェクトを作成し、開発ブランチとエンドポイントを追加し、これらのリソースを宣言的に管理する方法を学習します。これは、開発環境とテスト環境で Databricks リソースをプログラムで管理するための一般的なワークフローです。
バンドル リソースの完全なリファレンスと利用可能なすべての構成オプションについては、 「バンドル リソース」を参照してください。
前提条件
始める前に、次のものが必要です。
- Databricks CLI バージョン 0.287.0 以上。インストールされているバージョンを確認するには、
databricks -vを実行します。Databricks CLI をインストールするには、 「Databricks CLI のインストールまたは更新」を参照してください。 - Databricks ワークスペース用に構成された認証。このガイドでは、OAuth ユーザー対マシン (U2M) 認証を使用します。Databricks CLI チュートリアルの「ワークスペースへのアクセスの構成」を参照してください。
- Lakebase プロジェクトの権限CAN MANAGE 。 「プロジェクト権限の管理」を参照してください。
リソース階層
Lakebase リソースは親子階層に従います。つまり、子リソースの前に親リソースを作成します。完全なリソース モデル (プロジェクト、ブランチ、コンピュート、データベースなど) については、 「プロジェクトの編成方法」を参照してください。
このガイドの操作順序: プロジェクト → ブランチ → エンドポイント
1. バンドル構成を作成する
デフォルトの最小限のテンプレートを使用してバンドルを初期化します。これにより、 databricks.ymlを含むバンドル フォルダーが作成され、CLI 構成 (ワークスペース ホストを含む) が取得されます。
databricks bundle init default-minimal
プロンプトが表示されたら、バンドル プロジェクトの名前を入力します (例: lakebase-bundle )。CLI はその名前のディレクトリを作成します。バンドル ディレクトリに切り替えます。
cd lakebase-bundle
databricks.ymlファイルを変更して、Lakebase プロジェクト、ブランチ、エンドポイントを定義します。resourcesセクション (および必要に応じてバンドル名) を追加または更新します。例えば:
bundle:
name: lakebase-app
resources:
postgres_projects:
my_app:
project_id: 'my-app'
display_name: 'My Application'
pg_version: 17
postgres_branches:
dev_branch:
parent: ${resources.postgres_projects.my_app.id}
branch_id: 'dev'
no_expiry: true
postgres_endpoints:
dev_endpoint:
parent: ${resources.postgres_branches.dev_branch.id}
endpoint_id: 'primary'
endpoint_type: 'ENDPOINT_TYPE_READ_WRITE'
autoscaling_limit_min_cu: 0.5
autoscaling_limit_max_cu: 2
エンドポイントについて : Lakebase プロジェクトを作成すると、 Databricks読み取り/書き込みエンドポイントを使用して実質本番運用ブランチを自動的にプロビジョニングします。 ただし、作成する追加のブランチ (上記の dev ブランチなど) では、バンドル構成でエンドポイントを明示的に定義する必要があります。
project_id 、 branch_id 、およびendpoint_id値は、リソースの命名規則(1 ~ 63 文字、小文字、数字、ハイフンなど) に従う必要があります。
2. バンドルを検証する
バンドル構成が有効かどうかを確認します。
databricks bundle validate
バンドル構成の概要が返された場合、検証は成功しています。エラーが返された場合は、エラーを修正してこのステップを繰り返します。 「databricks bundle validate」を参照してください。
3. バンドルを展開する
Lakebase プロジェクトを Databricks ワークスペースにデプロイします。
databricks bundle deploy
これにより、次のものが作成されます。
- 「my-app」という名前のLakebaseプロジェクト
- 読み取り/書き込みエンドポイントを備えた本番本番運用ブランチ (自動的に作成される)
- 「dev」という名前の開発ブランチ
- 0.5 から 2 CU のオートスケールを備えた開発ブランチのプライマリ エンドポイント
「databricks バンドル デプロイ」を参照してください。
4. デプロイメントを確認する
リソースが作成されたことを確認します。
- Databricks ワークスペースで、 Lakebase → Projects に移動します。
- [マイアプリケーション] をクリックします。
- 2 つのブランチが表示されていることを確認します。
- 本番運用 (もう) - 1 CU のプライマリ コンピュートで自動的に作成されます
- dev - 0.5-2 CU オートスケール コンピュートのバンドルによって作成されました
5. 設定を更新する
リソースを変更するには、 databricks.ymlファイルを更新して再デプロイします。
databricks bundle validate
databricks bundle deploy
バンドルは変更されたリソースのみを更新します。
6. リソースをクリーンアップする
Lakebase プロジェクトが完了したら、プロジェクトを削除してリソースを解放できます。
バンドル リソースを削除するための標準コマンドは、 databricks bundle destroyです。ただし、読み取り/書き込みエンドポイントを個別に削除できないため、このコマンドは Lakebase プロジェクトでは機能しません。代わりに、Databricks CLI を使用して Lakebase プロジェクトを直接削除します。
databricks postgres delete-project projects/my-app
これにより、すべてのブランチとエンドポイントが自動的に削除されます。
リソースの代替
バンドル構成では、置換を使用してリソースを参照します。
${resources.postgres_projects.my_app.id}- Lakebaseプロジェクトのリソース名を参照します${resources.postgres_branches.dev_branch.id}- ブランチリソース名を参照します
これにより、デプロイメント中に適切な依存関係の順序が保証されます。バンドル置換の詳細については、 「置換」を参照してください。
利用可能なリソース
バンドルでサポートされている Lakebase リソースとその構成オプションの完全なリストについては、バンドル リソース(postgres_projects、postgres_branches、postgres_endpoints) を参照してください。