是否有一种解决方案可以使用一个命令将整个 Azure 资源组导入 Terraform 的状态文件中,该命令可以捕获该资源组中的所有资源,而无需手动定位每个资源(根据我迄今为止的研究,这似乎是唯一的选择) )?
最佳答案
就像 @dan-monego 提到的,Terraformer 是正确的选择。 我过去用过它,非常棒。 不幸的是,Terraform 没有官方方法可以做到这一点。
如果这不适合您,您需要编写自定义代码来列出组中的资源,解析输出,然后运行 terraform import
命令。
此命令将输出构建导入语句所需的所有信息 az resource list -g <resource-group-name>
编辑:从 Terraform 1.5 开始,您现在可以使用配置驱动导入来生成 Terraform 配置文件 https://www.hashicorp.com/blog/terraform-1-5-brings-config-driven-import-and-checks
基本上,您可以像这样定义导入 block
import {
# ID of the cloud resource
# Check provider documentation for importable resources and format
id = “i-abcd1234”
# Resource address
to = aws_instance.example
}
然后运行此命令
terraform plan -generate-config-out=generated_resources.tf
关于azure - 如何在 Terraform 的状态下导入整个 Azure 资源组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71082124/