-2

我正在处理一个场景,我有一个增量基础设施配置(我每周在 Azure 上构建 VM)并且我想为所有这些构建维护一个状态文件。

我将状态文件存储在 Azure 存储帐户中,并根据需要配置后端。遇到的问题是,当我构建我的第一个 VM 时,会创建一个状态文件,当我尝试构建第二个 VM 时,引用(后端)相同的状态文件,并在我的 Main.tf 文件中进行一些配置更改,(我知道这是实际的 terraform行为) terraform 计划状态旧的 VM 将被替换。

我也尝试过参数,生命周期块,在销毁之前创建,但没有运气。我只看到一个将多个资源块添加到我的 main.tf 的选项。

有什么方法可以实现在我的 Main.tf (Parameterized) 中创建多个 VM 的引用(每周一次)一个具有一个资源块的状态文件?

下面是创建资源组的简单配置(main.tf)

resource "azurerm_resource_group" "main"{

name = "vmrg"

location = "East Us"

}

如果我执行上述配置,将创建一个资源组并使用上述资源更新状态文件

如果我在不添加新资源块的情况下按如下方式更新配置,理想情况下 terraform 会替换旧资源(将删除资源组 vmrg 并创建 vmrg1)。即使我添加参数也是同样的情况

resource "azurerm_resource_group" "main1" {

name     = "vmrg1"

location = "East Us"

}

有没有办法在不添加新资源块的情况下创建资源?

在我的情况下创建资源组 vmrg1 而不删除 vmrg ?在创建 vmrg 时使用相同的状态文件?

4

0 回答 0