【问题标题】:is it possible to bulk import existing infrastructure in terraform?是否可以在 terraform 中批量导入现有基础设施?
【发布时间】:2022-01-18 06:36:31
【问题描述】:

我正在使用 terraform 创建基础设施。我决定将它模块化。但是在模块化和使用 terraform plan 之后,我可以看到我的 Plan:28 添加,0 更改,28 销毁。

如果我将现有结构更改为模块化,terraform 会摧毁一切吗?有什么办法不删除infra

【问题讨论】:

    标签: module terraform


    【解决方案1】:

    由于您决定将基础架构代码拆分为多个模块,因此 terraform 会将您的资源视为新资源,因为它们的位置确实发生了变化。

    将资源块从一个模块移动到多个子模块会导致 Terraform 将新位置视为完全不同的资源。

    文档:https://www.terraform.io/language/modules/syntax#transferring-resource-state-into-modules

    您现在可以通过多种方式继续:

    一个。您可以使用 Terraform 的 refactoring 功能(从 1.1 版开始提供):https://www.terraform.io/language/modules/develop/refactoring 并利用 moved 块将旧资源映射到新资源。

    b.您可以从干净的 terraform 状态开始,手动将资源从您的实际基础架构导入到状态 (https://www.terraform.io/cli/import)(您需要为所有 28 个资源执行此操作)

    但如果是您的新项目,最简单的方法是从头开始重新创建资源(当然,如果它不是包含重要数据的生产环境

    【讨论】:

      猜你喜欢
      • 2011-11-21
      • 2020-01-11
      • 2021-02-12
      • 2018-07-28
      • 2021-04-27
      • 2019-06-08
      • 2020-04-23
      • 2023-03-15
      • 1970-01-01
      相关资源
      最近更新 更多