我是Terraform的新手。有人可以解释
吗?为什么我们需要将.tfstate文件保存在本地或远程存储中,
当 Terraform应用始终用新的基础架构刷新状态文件。
预先感谢。
状态文件跟踪Terraform正在管理的资源,无论是创建它们还是导入它们。Terraform的刷新仅检测到托管资源中的漂移,并且无法检测到您是否在状态文件之外创建了新资源。
如果您失去了州,最终将获得未由Terraform管理的孤儿资源。如果出于某种原因,您对此表示同意,或者您还有其他一些与其他团队成员/CI共享状态并备份的方式,那么您就可以了。
当然,使用Terraform的远程状态整齐地解决这些问题,因此,如果您关心任何这些东西或认为您将来可能需要的话,就应该使用它(您可能会)。
我将添加一个更面向开发人员的视角以帮助理解。
想想您使用yarn
或npm
进行NodeJS应用程序,package.json
就像您的tf
文件一样,而yarn.lock
或package-lock.json
。
不从字面上看,因为Terraform状态文件具有物理的潜在含义。