创建CodePipeline时PutTargets报错 无法自动关联新事件规则
问题现象
在AWS平台创建源配置为CodeCommit的全新CodePipeline时,点击创建管道按钮后收到如下错误提示:
Amazon CloudWatch Events操作PutTargets执行失败,异常详情:请求的资源超出允许的最大数量。
经排查确认,当前区域已有事件规则的目标配额已达5/5上限,无法继续新增目标,但无法找到为CodePipeline添加、关联对应新事件规则的操作路径。根据AWS官方文档说明,该场景下事件规则应当在管道创建时自动生成,但整个操作流程中没有收到任何相关弹窗或提示。
可行解决方案
- 先明确报错根因:AWS默认给每个CloudWatch Events事件规则配置的最大目标关联数是5个,CodePipeline自动生成的CodeCommit源触发规则,默认会把同区域同账号下所有绑定CodeCommit源的管道都作为目标加到这同一条规则里,目标数到5之后再建新管道就会触发你遇到的PutTargets失败错误。
- 方案一:提升对应服务配额
打开Service Quotas控制台,定位到CloudWatch Events服务下的「每个规则的目标数(Targets per rule)」配额项,提交配额提升申请,将配额值调整为大于你当前计划关联的管道总数量,等配额申请审批生效后,重新触发管道创建流程即可,后续事件规则自动创建逻辑会正常执行。 - 方案二:手动拆分事件规则绕开默认配额限制
- 先进入CloudWatch控制台的事件规则页面,找到CodePipeline自动创建的名称带
codepipeline-前缀的CodeCommit触发规则,编辑规则临时移除1-2个非核心管道的目标关联,释放出可用的目标配额空位 - 回到CodePipeline控制台重新执行新管道创建操作,创建完成后先到管道列表确认管道基础资源已经生成:这类报错通常不会阻断管道本身的创建,只是自动触发规则配置失败,不需要重复删除重建
- 为新管道单独创建自定义CloudWatch Events事件规则:事件源选择对应CodeCommit仓库,匹配你需要的分支推送、PR合并等触发事件,目标选择刚创建的新管道,同时给规则配置好触发管道执行的IAM权限
- 把之前从默认规则里临时移除的管道,分别绑定到你新建的独立事件规则上,保证单条事件规则关联的目标数不超过5个,后续就不会再触发同类超限报错。
- 先进入CloudWatch控制台的事件规则页面,找到CodePipeline自动创建的名称带
- 前置检查建议:后续创建管道前可以先查看默认codepipeline事件规则的已关联目标数,如果接近5个可以提前拆分规则或者申请提额,避免创建流程中断。
内容的提问来源于stack exchange,提问作者Abdullah Hafeez
相关产品推荐
相关产品推荐

