You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何更新CloudFormation栈中的cfn-response模块?解决Lambda部署报错

解决CloudFormation自定义资源无响应问题及栈更新操作指南

一、直接更新CloudFormation栈的步骤

  • 登录AWS控制台,打开CloudFormation服务
  • 在栈列表里找到main环境对应的栈,点击更新按钮
  • 选择模板更新方式:
    • 如果你有和test环境一致的最新模板,选上传模板文件,上传该文件
    • 如果模板存在S3,直接输入对应的模板URL
    • 要是想基于现有模板修改,选使用当前模板,后续手动调整配置
  • 点击下一步,核对所有参数(比如Lambda的内存、超时时间、执行角色等),确保和test环境完全一致
  • 进入配置选项页面,建议勾选启用回滚(防止更新失败后无法恢复),其他配置保持不变
  • 到确认更新页面,滚动到底部,勾选“我确认CloudFormation可能创建IAM资源”(如果栈涉及IAM角色),最后点击更新栈

二、针对报错的关键排查点

既然test环境正常,main环境出问题,重点查这几个差异:

  • Lambda执行角色权限:对比test和main的Lambda执行角色,确保main的角色有cloudformation:SignalResource权限——哪怕你没用到cfn-response,自定义资源必须给CloudFormation发送执行信号才能完成部署
  • Lambda超时设置:检查main环境Lambda的超时时间,是不是比test环境短?如果执行时间超过超时时间,Lambda会直接终止,没法发响应。建议先设成30秒试试,之后再根据实际执行时长调整
  • Lambda版本配置:如果main环境的Lambda用了固定版本(test用的是$LATEST),可能旧版本没同步新代码。要么把模板里Lambda的Version改成$LATEST,要么指定最新的版本号
  • 自定义资源的ServiceToken:检查模板里自定义资源的ServiceToken是不是指向正确的Lambda ARN,有没有拼写错误
  • VPC网络权限:如果main的Lambda部署在VPC里,得确保它能访问CloudFormation——要么通过NAT网关走公网,要么配置CloudFormation的VPC端点

三、验证更新结果

更新完成后,去CloudFormation的事件日志里看自定义资源的状态,如果成功就没问题。要是还报错,直接去CloudWatch Logs里看Lambda的执行日志,找具体的错误信息(比如权限不足、代码报错、超时),再针对性修复

内容的提问来源于stack exchange,提问作者Nisha Vijayakumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 18:33:24