如何在Terraform Cloud中并行执行terraform apply命令?
解决Terraform Cloud不同工作区任务并行运行的问题
Terraform Cloud中不同工作区的变更任务排队,核心原因是工作区或组织的并发运行限制,针对独立GCP项目的工作区,你可以通过以下方式实现并行:
1. 单独配置工作区的并发数
每个工作区默认的并发运行数可能被限制为1,调整步骤:
- 进入目标工作区的「Settings」→「General」页面
- 找到「Concurrency」模块,将「Maximum concurrent runs」设置为符合需求的数值(比如3、5,根据你的资源情况调整)
- 保存后,该工作区的多个变更任务就能并行启动,不会被同工作区的任务阻塞
2. 提升组织的并发运行配额
如果组织级别设置了全局并发限制,需要调整配额:
- 进入组织的「Settings」→「Billing & Plans」页面
- 查看「Concurrent runs」的当前配额,免费版通常仅支持1个并发运行,若需要多工作区并行,需升级到团队版或企业版,或者联系Terraform Cloud支持调整配额
- 注意:不同付费计划的并发额度不同,根据团队实际需求选择
3. 用工作空间组隔离并发控制
若有大量独立工作区,可通过分组批量管理:
- 创建工作空间组,将对应不同GCP项目的工作区分配到组中(可按项目分组,也可统一管理)
- 在组的「Settings」中配置组级别的并发运行限制,确保组内工作区的运行任务不会互相阻塞
4. 排除跨工作区的依赖锁定
确认工作区之间没有状态依赖导致的串行:
- 检查是否使用
terraform_remote_state在工作区之间共享状态,这类依赖会强制任务串行,若工作区完全独立,需移除该配置 - 确认工作区未启用「Global Remote State Lock」,该锁定会导致所有工作区的任务串行执行,独立工作区需关闭此设置
内容的提问来源于stack exchange,提问作者s_curry_s
相关产品推荐
相关产品推荐

