如何通过Terraform升级/更新composer的小版本?



我刚刚在我的terraform基础模块上创建了一个composer环境实例(resource google_composer_environment)具有以下属性:image_version = "composer-2.0.30-airflow-2.3.3".

当你尝试通过控制台升级时,集群不会被破坏(我认为?),但是当我尝试使用image_version = "composer-2.0.32-airflow-2.3.4"通过terraform进行升级时,环境显然会被废弃并重新创建:

# module.dev-omni-orchestrator-instance.google_composer_environment.omni-orchestrator-instance must be replaced
...
Plan: 1 to add, 0 to change, 1 to destroy.

有没有办法在不破坏现有环境的情况下在terraform内实现这些版本的升级?可能通过控制台升级gcloud然后是update+import ?

我以前也遇到过同样的问题,为了解决它:

  • Cloud Composerconsole升级版本,在这种情况下集群不会被破坏
  • 升级Terraform代码中的版本
  • 当你计划TerraformComposer资源时,Terraform将检测到真实基础设施中的变化,并且不会计划更改,也不会更新(因为来自真实基础设施的版本与Terraform资源中的版本相同)

我认为这是Google provider中资源的问题,但它并没有阻止我使用这种技术。

最新更新