【发布时间】:2023-01-17 10:00:49
【问题描述】:
我正在构建一个实验室实用程序来部署我的团队开发环境(测试/压力等)。
目前流水线如下:
- 通过 HTTP 请求触发管道,args 包含分布、Web 服务器和使用 ARGs 的 Web 服务器版本,这些 ARGs 被传递到多阶段 dockerfiles。
- Dockerx 构建容器(如果 ECR 中不存在)
- 管道作业将该容器推送到 ECR(如果它尚不存在)。
- Terraform 使用 Fargate 部署容器,设置 VPC 和 ALB 以处理外部入口。
- 然后在 ...com 上提供 FQDN / TLS
以前,当我制作这样的工具来创建环境时,环境仅在项目级别进行管理和删除,假设每个环境都有自己的项目,考虑到这是隔离和计费跟踪目的的最佳实践,但是考虑到组织安全限制我的公司,我仅限于 1 个项目,我可以在其中创建所有资源。
这意味着我必须找到一种方法来在一个项目中管理/部署 30 个(最大)环境,而不是像一个集群鸭子。
或多或少,我正在寻找一种允许我跟踪和拆除环境(自动)及其与特定标识符相关的相关资源的方法,很可能这些环境可以通过资源标签/组分开。
看起来 CDKTF/Pulumi 看起来像是一种实现某种形式的“高级”结构的巧妙方法,但我正在努力寻找使用它们来做我想做的事情的方法。如果有人可以推荐一种方法,我们将不胜感激。
我还没有尝试过任何东西,主要是因为这是我开始工作之前需要计划的事情(不喜欢进入死胡同哈)。
【问题讨论】:
-
你的问题对于 Stack Overflow 来说太宽泛了。将您的帖子限制为每篇帖子一个明确定义的问题。 stackoverflow.com/help/how-to-ask
-
我建议在 cdk.dev slack 或 HashiCorps 讨论论坛的 terraform-cdk 频道开始对话:discuss.hashicorp.com/c/terraform-core/cdk-for-terraform/47
标签: google-cloud-platform terraform pulumi terraform-cdk