Databricks Workspace Configuration 是 Databricks AI Platform Kit 中的一项技能,用于配置 Databricks 工作区设置,面向工作区落地后的日常运维操作。
用途 该技能用于管理 Databricks 工作区的各类资源与配置,包括 SQL 仓库、集群策略、密钥作用域、IP 访问列表、个人访问令牌以及工作区级设置,并支持销毁由 Terraform 管理的基础设施。
强制性部署后验证 文档明确要求:每当完成一个新工作区、新集群策略、新 SQL 仓库或新的作业计算模式的搭建后,必须运行 deployment-verification/SKILL.md 中的全部三条路径(经典集群 + 无服务器 SQL 仓库 + 无服务器笔记本作业,全部针对 UC 表)。仅验证一条路径视为未完成工作。在宣称"完成"之前须先阅读该技能。
与客户交互的原则 采用最小阻力原则,因为这些都是 day-2 运维,客户通常清楚自己想要什么。仅在以下情形提示一次:请求创建无过期时间的 PAT 时,建议设置 90 天有效期;禁用 IP 访问列表时,确认将移除网络限制。执行 terraform destroy 前必须始终确认,因为该操作不可逆,需列出将被销毁的资源并获得明确的 yes/no。其余设计选择(仓库规格、策略定义、密钥值、配置键)不做阻力,但实际应用属于远程变更,需先通过批准门禁。
远程变更的批准门禁 在创建、修改、删除、启动、停止或以其他方式变更任何远程资源(工作区、集群、SQL 仓库、集群策略、密钥/作用域、令牌、IP 访问列表、目录、授权、网络资源,任何 terraform apply 或 databricks ... create|delete|update)之前,须展示一份计划并获得明确批准,内容包括:目标(账户/工作区、--profile 或 host、云平台)与变更集(本任务批量汇总的所有创建/修改/删除资源)。一次批准对应整个变更集,而非每个资源单独询问。等待明确批准后仅执行已批准范围内的操作;范围变化需重新展示并重新批准。重试与恢复沿用同一门禁,不得扩大范围。清理仅限本工作流本次会话创建的资源,并向用户报告。该门禁管的是"改什么",不是设计选择(规格、命名、默认值)。它是交互式使用的默认方式;以自动批准或无头模式运行 Claude Code 是客户的选择与责任(见 SECURITY.md)。
SQL 仓库 管理用于 BI 和即席查询的无服务器与 pro SQL 仓库:列出已有仓库(名称、规格、状态、类型);创建时指定名称、cluster_size(2X-Small 至 4X-Large)、auto_stop_mins(默认 15)和 warehouse_type;按 ID 启动或停止仓库。文档建议对使用 Unity Catalog 的工作区推荐 PRO 类型,因为 PRO 支持细粒度访问控制、数据血缘和无服务器扩展,而 CLASSIC 仓库缺少 UC 相关特性。
集群策略 控制用户在创建集群时可配置的内容:列出工作区中所有策略;创建策略时提供名称与 JSON 定义,用于限制 spark_version、node_type_id、自动扩缩范围等集群属性;按 ID 获取策略定义;按 ID 删除策略。文中给出的限制示例包括:将 Spark 版本固定到特定 LTS 版本、允许列表指定节点类型、限制 max_workers 以防止成本失控。
密钥作用域 存储敏感值(API 密钥、连接字符串、密码),供笔记本和作业引用而不暴露明文:创建作用域(工作区级);将密钥以键值对放入作用域;列出作用域中的密钥(仅返回元数据,即键名和时间戳,API 从不返回密钥值);删除密钥或作用域。
IP 访问列表 限制可访问工作区 API 和 UI 的 IP:创建允许列表或拒绝列表;列出已有访问列表以审计当前限制。IP 访问列表须先在工作区设置中启用才会生效,创建列表不会自动开启强制执行。文档强调自我锁定防护:创建 IP 访问列表时须始终包含部署者当前 IP,否则 Terraform 将失去对工作区 API 的访问,需通过 Azure/AWS 控制台手动干预。文中给出了自动检测并包含部署者 IP 的代码模式,以及在锁定后通过云控制台禁用 IP 访问列表、修正 Terraform 配置再重新应用的恢复方法。
令牌管理 管理用于 API 认证的个人访问令牌:列出已有令牌(注释、创建时间、过期时间);创建令牌时提供用途注释和 lifetime_seconds,文档建议始终设置有效期,90 天(7776000 秒)是合理默认;按 ID 吊销令牌以立即失效。
工作区设置 读取和更新工作区级配置键。文中列出的常见设置包括:enableTokensConfig(启用/禁用工作区 PAT 创建)、maxTokenLifetimeDays(强制最大令牌有效期,0 表示无限制)、enableIpAccessLists(启用/禁用 IP 访问列表强制执行)。可获取设置当前值或设置新值,部分设置需重启工作区才能生效。
销毁基础设施 拆除由 Terraform 管理的基础设施:列出历史 Terraform 运行以定位要销毁的部署;获取某次运行的输出以查看现有资源(工作区 URL、资源 ID);销毁某次运行以拆除其创建的所有资源。执行前须始终获得用户确认并展示将销毁的内容(工作区名称、资源组、VPC 等),Terraform destroy 不可逆,已删除的工作区、存储账户和网络资源无法恢复。
销毁后工作区名称复用 销毁 Databricks 工作区后,工作区名称在账户侧进入约 1 小时的 BANNED 状态才能复用,立即重建会报错。文中说明 GCP 与 AWS 约为一致的 1 小时延迟;Azure 的工作区资源名由 Azure 管理,但 Databricks 侧显示名遵循同一规则。对于频繁销毁重建的压力测试/开发循环,给出两种缓解方式:在工作区名后追加短随机后缀,或使用日期后缀。生产环境销毁时 1 小时冷却期很少成为阻碍,只需在客户希望立即以同名重建时告知。
相关链接 工作区创建与基础设施供应参见 platform-provisioning;权限、组与访问控制参见 identity-governance。