如何通过Terraform启用Azure Databricks中的Serverless SQL仓库
如何通过Terraform启用Azure Databricks的Serverless SQL Warehouses选项?
问题背景
尝试用Terraform的databricks_sql_endpoint资源创建Azure Databricks Serverless SQL Warehouse时,遇到以下错误:
Error: cannot create sql endpoint: Serverless Compute is not enabled in Databricks SQL Workspace config. Please reach out to your administrator.
使用的Terraform资源定义如下:
resource "databricks_sql_endpoint" "this" { name = "Standard" cluster_size = "2X-Small" min_num_clusters = 1 max_num_clusters = 2 auto_stop_mins = 30 enable_serverless_compute = true warehouse_type = "PRO" }
核心结论
目前Databricks Terraform Provider没有直接提供启用Serverless SQL Warehouses的Workspace级配置的资源,但可以通过以下两种方式解决:
1. 手动启用(最快方式)
通过Workspace管理员界面开启该选项:
- 登录Databricks Workspace,进入Admin Console
- 切换到SQL Warehouses标签页
- 找到「Serverless SQL warehouses」选项并启用
- 保存设置后重新运行Terraform apply即可
2. 通过Terraform调用Databricks REST API实现自动化
可以使用Terraform的databricks_rest_api资源调用Databricks Workspace配置API来开启该选项,示例代码如下:
resource "databricks_rest_api" "enable_serverless" { http_method = "PATCH" path = "/api/2.0/workspace-conf" body = jsonencode({ "enableServerlessCompute" = "true" }) } # 依赖上述API调用,确保先启用再创建SQL Endpoint resource "databricks_sql_endpoint" "this" { depends_on = [databricks_rest_api.enable_serverless] name = "Standard" cluster_size = "2X-Small" min_num_clusters = 1 max_num_clusters = 2 auto_stop_mins = 30 enable_serverless_compute = true warehouse_type = "PRO" }
注意事项
- 执行上述操作需要Workspace管理员权限
- 确认你的Databricks Workspace所在Azure区域支持Serverless SQL Warehouses
- API修改配置后建议等待1-2分钟再执行Terraform apply,确保配置生效
内容的提问来源于stack exchange,提问作者Richard Waal
相关产品推荐
相关产品推荐

