You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure DevOps+Terraform部署Databricks Notebook遇执行错误

解决Azure DevOps流水线部署Databricks Notebook的Terraform认证与配置问题

1. 认证错误:无法读取Notebook,提示需执行az login

问题原因

本地运行时依赖个人Azure CLI登录凭证,但Azure DevOps流水线代理环境未自动将服务连接身份传递给Terraform的Databricks provider,导致provider无法获取访问Databricks的有效令牌。

解决方案

调整Databricks Provider配置

在providers.tf中指定Azure CLI认证方式,并绑定目标Databricks工作区资源ID:

provider "databricks" {
  azure_workspace_resource_id = "/subscriptions/你的订阅ID/resourceGroups/目标资源组名/providers/Microsoft.Databricks/workspaces/目标工作区名称"
  auth_type                   = "azure-cli"
}

在流水线中添加Azure CLI登录任务

利用Azure DevOps服务连接身份自动完成Azure CLI认证,让后续Terraform任务复用该上下文:

- task: AzureCLI@2
  inputs:
    azureSubscription: "你的服务连接名称"
    scriptType: "bash"
    inlineScript: |
      # 验证登录状态,确保上下文正确
      az account show

该任务会自动使用服务连接的所有者身份完成认证,无需手动执行az login。

2. Terraform Plan提示无配置文件

问题原因

  • 流水线执行Terraform的工作目录错误,未指向存放.tf文件的路径
  • 未执行terraform init初始化步骤,导致Provider/模块未加载,无法识别配置文件
  • Git仓库中遗漏必要的.tf文件,或被.gitignore规则排除

解决方案

指定正确的工作目录

在Terraform任务中明确设置workingDirectory,指向你的配置文件所在路径(例如terraform/databricks):

- task: TerraformCLI@0
  inputs:
    command: "plan"
    workingDirectory: "terraform/databricks"
    environmentServiceNameAzureRM: "你的服务连接名称"

确保执行Terraform初始化步骤

流水线中必须先执行init再执行plan/apply,同时配置远程backend(若使用):

- task: TerraformCLI@0
  inputs:
    command: "init"
    workingDirectory: "terraform/databricks"
    backendType: "azurerm"
    backendServiceArm: "你的服务连接名称"
    backendAzureRmResourceGroupName: "Backend存储账户所在资源组"
    backendAzureRmStorageAccountName: "Backend存储账户名"
    backendAzureRmContainerName: "存储容器名"
    backendAzureRmKey: "terraform.tfstate"

检查代码仓库完整性

确认所有.tf配置文件(包括providers.tf、变量文件、Notebook部署相关配置)都已提交到Git仓库,且未被.gitignore规则排除。

额外权限验证

由于你的服务连接是Azure订阅所有者,需确认该身份具备:

  • Databricks工作区的Contributor权限,确保能读写Notebook
  • Terraform Backend存储账户的存储Blob数据所有者权限,确保能读写状态文件

内容的提问来源于stack exchange,提问作者BI Dude

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 22:50:04