CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
AWS CloudFormation 入门/课时/Stack 生命周期
RawBlame
课时目录12 节

AWS CloudFormation 入门

  1. 01CloudFormation 是什么
  2. 02模板结构
  3. 03资源声明
  4. 04参数与映射
  5. 05Stack 生命周期
  6. 06嵌套 Stack
  7. 07Drift 检测
  8. 08CloudFormation vs Terraform
  9. 09SAM 与 Lambda
  10. 10与 AWS CDK 关系
  11. 11失败回滚
  12. 12综合练习

Stack 生命周期

create/update/delete、变更集 ChangeSet。

30 分钟

Stack 生命周期

Stack 是一次 CloudFormation 部署的实例:模板 + 当前参数 → 一组 AWS 资源。create / update / delete 由 Stack 引擎按依赖图执行;ChangeSet 提供类似 terraform plan 的预览。

学习目标

  • 掌握 create-stack、update-stack、delete-stack 流程
  • 用 ChangeSet 预览变更再执行
  • 对照 tf-workflow 的 plan/apply

创建与更新

# 创建
aws cloudformation create-stack \
  --stack-name coderoadmap-lab \
  --template-body file://template.yaml \
  --capabilities CAPABILITY_NAMED_IAM

# 等待完成
aws cloudformation wait stack-create-complete --stack-name coderoadmap-lab

# 更新(改模板后)
aws cloudformation update-stack \
  --stack-name coderoadmap-lab \
  --template-body file://template.yaml
阶段Stack 状态含义
创建中CREATE_IN_PROGRESS资源按序创建
就绪CREATE_COMPLETE可读取 Outputs
更新中UPDATE_IN_PROGRESS替换或原地修改资源
失败*_FAILED / ROLLBACK_*见 cf-rollback

ChangeSet(变更集)

aws cloudformation create-change-set \
  --stack-name coderoadmap-lab \
  --change-set-name add-rds \
  --template-body file://template-v2.yaml

aws cloudformation describe-change-set \
  --stack-name coderoadmap-lab \
  --change-set-name add-rds

aws cloudformation execute-change-set \
  --stack-name coderoadmap-lab \
  --change-set-name add-rds

ChangeSet = plan;execute = apply。 CodeRoadMap CI 若走 TF,对应 terraform plan -out + apply;CFN 实验可在控制台 Change sets 页签点选预览。

删除 Stack

aws cloudformation delete-stack --stack-name coderoadmap-lab

默认删除 Stack 内 由 CFN 管理的资源;带 DeletionPolicy: Retain 的资源会保留(如 prod RDS)。实验结束务必 destroy,避免 aws-cost 免费层外计费。

CodeRoadMap 建议

生产 ;CFN Stack 用于 。勿在同一环境对同一资源既 TF 又 CFN 双管。

Terraform + PR plan
AWS 控制台实验、读懂 SAM/CDK 部署

练习

  • 创建 Stack 后在「事件」页签观察资源创建顺序
  • 改 SecurityGroup 规则,走 ChangeSet 再 execute
  • 对照 aws-vs-tf 三种操作方式表

小结

Stack = 模板的一次运行实例;ChangeSet = 更新前预览。 下一课嵌套 Stack。

加载本节练习…
← 上一课参数与映射下一课 →嵌套 Stack