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

修改Terraform管理的Data Fusion实例版本执行plan时报错如何解决

Data Fusion版本升级Terraform报错修复方案

现有6.4.1版本Data Fusion实例,修改Terraform配置中version属性升级到6.5.0时,执行terraform plan触发如下报错:

| ERROR Get "/v3/namespaces" : unsupported protocol scheme""

所有通过该Terraform代码创建的CDAP资源都会触发该报错,以下是具体修复方案:

问题根因

该报错确实由CDAP Provider未识别Data Fusion实例与下属CDAP资源的依赖关系导致:Data Fusion实例版本变更时会更新实例访问endpoint参数,CDAP Provider在plan阶段还未获取到最新的实例endpoint完整地址,因此拼接出的API请求缺少协议、域名前缀,只有路径部分,触发协议为空的报错。

修复方案

  • 方案1:显式添加depends_on依赖声明
    在所有CDAP资源(如cdap_namespace、cdap_application等)的配置块中,显式声明依赖对应的Data Fusion实例资源,示例配置:

    resource "cdap_namespace" "example" {
      provider = cdap
      name     = "test-namespace"
      # 显式指定依赖Data Fusion实例
      depends_on = [google_data_fusion_instance.example]
    }
    

    配置完成后重新执行terraform plan即可正常生成变更计划。

  • 方案2:用target参数分步执行变更
    不需要修改现有配置的场景下,可分两步完成变更:

    1. 先单独升级Data Fusion实例:执行terraform apply -target=google_data_fusion_instance.example,替换示例资源名为实际使用的Data Fusion实例资源名
    2. 实例升级完成后,再执行全量terraform plan/terraform apply处理CDAP资源变更,此时实例endpoint已经更新完成,不会再触发报错。
  • 方案3:升级CDAP Provider到最新稳定版
    新版本CDAP Provider已经针对该依赖场景做了兼容优化,升级到≥1.3.0版本的CDAP Provider后,无需额外配置即可自动识别该依赖关系,解决plan报错问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 08:36:05