我一直在关注这篇博文作为指南。
https://blog.gruntwork.io/how-to-manage-terraform-state-28f5697e68fa
所以我理解需要为每个环境提供状态文件,但是有人需要额外的长度并且每个组件使用一个状态文件吗?例如,我们有应用程序堆栈的模块。为了简化这个例子,假设我有两个模块。
App1 - 包含LAMP堆栈
App2 - LAMP堆栈加上rabbitmq和redis
每个环境(dev,uat和prod)都有app堆栈。你有每个组件的状态文件,给你6个状态文件吗?
答案 0 :(得分:0)
我过去使用过这种方法 - 我有3个独立的组件和3个不同的环境。不同的组件之间有不同的变化率和一些依赖关系,所以我使用remote state datasource来共享它们之间的输出变量。
这种方法的最大问题是维护不同环境/组件的管理开销。
替代方案可以是使用与workspaces
结合使用的不同组件