我们可以使用资源计数参数来销毁地形创建的所有资源吗



我知道我们可以使用terraform的terraform destory命令销毁它创建的资源,但假设我不想使用该功能,我只有apply选项可用。

由于我们可以传递count参数来创建多个资源实例,我看到通过将计数值设置为0来终止这些实例。例如,

resource "aws_instance" "web" {
ami           = data.aws_ami.ubuntu.id
instance_type = "t3.micro"
count         = "0"
tags = {
Name = "HelloWorld"
}
}

我们可以通过将count参数设置为0来销毁所有类型的资源吗?它还会处理破坏其他资源的依赖性吗(通过破坏aws_security_group来破坏aws_security_group_rule(

考虑到我没有可用的terraform destroy选项,这是终止资源的好做法吗?或者有没有更好的方法来执行类似的操作?

在修改基础设施时,以您建议的方式使用Apply是破坏资源的常用方法。"销毁"选项更适用于需要完全清理的情况。

将count设置为0是一种受支持的销毁在该块中创建的所有资源及其依赖项的方法,但如果其他资源块间接依赖于该计数,则可能会遇到复杂情况。

然而,简单地完全删除块(以及依赖的资源块(也会在下一次应用程序运行时破坏它们。这将是通常的做法,除非这只是一个临时销毁,有代码重用的考虑,或者您需要销毁提供程序来执行。

相关内容

  • 没有找到相关文章