🚂

[Databricks]IaCの選択肢(2025年末版)

に公開

この記事は Databricks Advent Calendar 2025 の 21 日目の記事です🎄

要約

はじめに

以前、Databricks各種リソースをPulumiでプロビジョニングするという記事を投稿しました。

当時から状況が変化しており、サポートが終了しアーカイブされたものや、Databricks の公式ドキュメントからアーカイブされてしまったものが存在します。
今回は、2025年末現在の Databricks における IaC の選択肢について整理します。

DatabricksにおけるIaC

公式ドキュメントでは、以下の3つが紹介されています。

  • Terraform
  • CDK for Terraform
  • Databricks Asset Bundles

本記事冒頭で言及した Pulumi は過去この中にラインナップされていたのですが、2025年初頭にドキュメントがアーカイブされているようです。

ただし、Databricks 公式ドキュメントからアーカイブされただけで、Pulumi や Pulumi Databricks Provider は引き続き利用可能ですし、開発が停止するなどのアナウンスがあったわけでもありません。(開発も活発に行われているようです。)
(なぜドキュメントがアーカイブされてしまったのだろう🤔)

一方、ラインナップの中に存在する CDK for Terraform については、2025/12/10 以降、CDK for Terraform 自体の開発・サポートの終了がアナウンスされています。引き続き利用こそできるものの、新機能対応等はされないので別の選択肢を検討する必要があります。

そのため、現在 Databricks における IaC の現実的な選択肢は、以下の2つになります。(前述の通り Pulumi は引き続き利用可能ですが、Databricks 公式ドキュメントのラインナップに存在しないことから除外しています。)

  • Terraform
  • Databricks Asset Bundles

それぞれの特徴を簡単に紹介します。

Terraform

IaC といえばこれ、という方も多いのではないでしょうか。

HCL という形式でリソースを記述し deploy します。周辺の環境が充実しており、使用例などの二次情報も豊富にあるのもメリットです。

各オブジェクトストレージへの接続など、パブリッククラウドのリソースと Databricks のリソースを同時に作成するようなチームにおいては、IaC はこれ一択になるでしょうか。

Databricks Asset Bundles

YAML 形式でリソースを宣言的に記述し、Databricks CLI で deploy できます。

そのため、Terraform と比較すると事前準備のハードルが低いのではないでしょうか。

Cluster/SQL Warehouse らの Computeから、App/Model Serving Endpoint らに至るまで様々なリソースが定義可能です。

Asset Bundle 外で作成されたリソースもgenerateやbindを用いて、bundle 管理下にできます。

リソースの状態(state)は、Databricks のワークスペースで管理されるため、Databricks のリソースの管理のみ意識すれば良いシーンにおいては第一候補と言ってよいでしょう。

おわりに

CDK for Terraform のサンセットのアナウンスを受け、Databricks の IaC のページを覗いたところ、Pulumi の ドキュメントもアーカイブされていたので驚きでした。(確かに、Databricks × Pulumi はなかなかニッチかとは思いますが...)

選択肢が減ったことで、管理したい資材は何か?のみで選択が決まるので、逆にシンプルになった印象です。

特に Free Edition においては、state が Databricks Workspace で管理される点がとても良いと感じながら使用しています。

これらの情報が少しでもお役に立てば幸いです。

Discussion