terraform - 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 提供者没有考虑这一点。有没有办法来解决这个问题?
解决方案
我已经在官方 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
应该工作。
推荐阅读
- ios - iOS 应用程序在输入错误的证书密码后崩溃
- mysql - 如何加快按查询分组
- angularjs - 我在哪里可以找到 angular2 应用程序的 dist 中的版本信息?
- jsf - 在整个项目中应用转换器
- ios - 当我按下 iPhone 主页按钮、睡眠/电源按钮或终止我的应用程序并再次重新运行时,TestButtonAction 不打印
- jquery - 如何在加载器中使用和显示百分比,直到 ajax jquery 函数忙于执行
- rest - TFS Rest API:过滤测试结果的参数结果不起作用
- azure-active-directory - Azure Active Directory 回复地址不相同
- c# - 网络作业:未找到库
- ruby-on-rails - 在 ul 和 ol 中解析嵌套的 li