Terraform回滚到某个输入状态

Terraform回滚到某个输入状态,terraform,Terraform,我随身带着一份地形文件。我可以用它来配置infra而不是提供terraform配置文件(.tf)吗 我基本上需要支持回滚的功能。因此,如果在运行某个terraform命令时发生故障,我想回滚到前一个状态 请查看以下两个链接 两者都建议对.tf文件进行版本控制。 不幸的是,没有提到任何国家。 因此,似乎唯一的方法是使用.tf文件,而不是使用.tfstate。Hello@Vaibhav-请提供更多信息,因为您提供的信息还不够。假设我执行terraform应用,创建资源R1并获得terraform状

我随身带着一份地形文件。我可以用它来配置infra而不是提供terraform配置文件(.tf)吗


我基本上需要支持回滚的功能。因此,如果在运行某个terraform命令时发生故障,我想回滚到前一个状态

请查看以下两个链接

两者都建议对.tf文件进行版本控制。 不幸的是,没有提到任何国家。
因此,似乎唯一的方法是使用.tf文件,而不是使用.tfstate。

Hello@Vaibhav-请提供更多信息,因为您提供的信息还不够。假设我执行terraform应用,创建资源R1并获得terraform状态S1。然后我再次执行terraform应用,这次我创建了另一个资源R2,并将状态文件更新到S2。现在我可以回滚到以前的S1状态了吗?状态文件是terraform认为当前存在的状态的记录。要回滚到以前的版本,您应该重新应用使您达到目的的脚本。他们将使用当前状态确定需要更改哪些内容才能返回。IE保持脚本的版本化,而不是状态。@JamesThorpe如果我在apply命令中使用targets参数该怎么办。现在回到某个状态,我需要知道目标是什么。我可能在一个命令中有多个目标,或者使用不同的目标多次运行“应用”。在本例中,我不仅需要跟踪脚本,还需要跟踪命令。还有其他更简单的方法吗?是的,不要这样做。假设“此目标定位功能是为特殊情况提供的,例如从错误中恢复或绕过地形限制。不建议在日常操作中使用-target,因为这可能导致未检测到的配置漂移,并混淆资源的真实状态与配置的关系。”它还建议将配置分解成更小的脚本。