我怎样才能从头开始使用 Terraform?

How can I start all over with terraform?

在我的 AWS 基础设施中,我在一个应用程序下存在多个环境,即:

在这些环境中,SYS 最接近我需要的体系结构和配置。我希望能够重新创建其他环境,使其看起来像 sys(但命名为 dev、int)。我有最初用于创建一些环境的 terraform 脚本,但这些脚本现在已经偏离当前状态。我想从 SYS 获取当前状态,并将其应用于 dev 和 int。我是 terraform 和 Whosebug 的新手,所以请让我松懈 :)

所有的 envs 都有一个状态文件,这是我正在尝试做的,但不确定如何去做..

我希望这是有道理的。

我 运行 针对开发环境的 Terraform 计划,它看起来比我预期的要多得多。我的研究告诉我,terraform 将当前状态与上次 ​​terraform 运行 进行比较 - 因此在 env 中手动完成的事情可能会导致问题。我没有足够的信心 运行 申请,因为担心它会损坏我无法拥有的 SYS 环境。

我想要的:除了命名约定外,三个环境完全相同。

您应该使用 the terraform import workflow 使您的 SYS 环境的状态文件与您创建的实际基础结构保持一致。请注意,如果您在 SYS 环境中手动创建了大量基础结构,这将需要大量工作。

但是,在此过程结束时,您将拥有一套完整的 SYS 环境的 Terraform 代码,您可以将其转换为可重用组件的模块。 You can then use this module 创建 DEV 和 INT 环境作为 SYS 环境的克隆,但具有不同的命名约定。