管理 Terraform 的最佳方法应用 infra -AWS batch- 运行 脚本(可能需要 1 小时到 1 天)- 销毁 infra

Best way to manage Terraform apply infra -AWS batch- run a script (could take 1hr to 1day) - destroy infra

大家好我正计划为我的团队构建一个系统,我们可以在其中启动 AWS 批处理基础设施 - 运行 一项任务 - 一旦工作完成就销毁基础设施。

我在想:制作文件的步骤:- 1. Terraform 应用 AWS 批处理基础设施,2. 运行 任务,3. 定期检查任务是否完成 4. 如果任务是彻底摧毁基础设施

执行此操作的最有效方法是什么。考虑到我们的团队需要在 AWS 批处理上 运行 执行各种各样的任务,我们希望实现自动化,我们只需要一个命令就可以做到这一点。

我们应该为此探索 Airflow 吗?或者有更好的方法吗?您的想法将不胜感激。谢谢

许多公司选择构建自己的 Terraform 自动化和协作软件 (TACOS),但使用开源 atlantis or an enterprise saas platform such as spacelift 或 Terraform 云等现有服务的工作量要少得多。

但是,如果您要创建自己的计划,则需要安全地确认计划。上面的工具可以使用 open policy agent 的 rego 来实现。

从您的工作流程来看,您似乎只需要一个工具来自动应用您的更改。我在 jenkins 中看到一个 cron job 运行ning 可以做到这一点。您还可以 运行 按计划间隔执行 cron ecs 或 ecs fargate 任务。气流似乎有点矫枉过正。

如果我是你,我会仔细查看所有选项并列出每个选项的优缺点,然后再考虑推出自己的选项。我很想知道上述服务是否存在不足,需要您的团队构建新服务。