首页 > 解决方案 > Terraform Data Fusion 实例更改导致计划期间发生错误

问题描述

所以考虑一下我在 6.4.1 版本中有一个数据融合的场景,我希望通过 Terraform 将它重新部署为 6.5.0 版本(这只是一个示例,但问题适用于对数据融合实例的任何更新) . 在 Terraform 中,这意味着只需更改属性版本属性。进行此更改后,执行时会出现terraform plan以下错误:

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

通过 Terraform 代码创建的每个 Terraform CDAP 资源都会出现此错误。

我相信这个错误来自这样一个事实,即数据融合实例与其所有 CDAP 资源之间存在依赖关系,而 CDAP 提供者没有考虑这一点。有没有办法来解决这个问题?

标签: terraformgoogle-cloud-data-fusioncdap

解决方案


我已经在官方 CDAP Terraform repo 上发布了这个问题。我想我会在这里向社区分享当前的解决方案。

为了解决这个问题,我不得不使用该terraform state rm命令删除所有产生错误的 CDAP 资源。只有在此之后,Terraform 才能更新实例并重新创建由于 Data Fusion 实例需要销毁和重新创建而必须重新创建的所有 CDAP 资源。如果您的 tfstate 文件仅包含来自一个 Data Fusion 实例的 CDAP 资源,那么您可以运行以下命令:

for i in $(terraform state list | grep cdap); do terraform state rm $i; done

这将删除所有 CDAP 资源。在此之后,terraform plan应该工作。


推荐阅读