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

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

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

学习

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

更多

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

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
AWS CloudFormation 入门/课时/综合练习
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综合练习

综合练习

最小 VPC+EC2 Stack 模板编写。

40 分钟

综合练习

用 CloudFormation 描述 最小 VPC + 公网子网 + EC2 + SecurityGroup 实验栈,并与 terraform-essentials 的 TF 练习 对照。不要求真实长期运行;重点在 可 review 的 YAML 与 Stack 生命周期。

学习目标

  • 完成 dev 环境最小网络 + 计算模板
  • 用 Outputs 暴露实例 ID / 公网 IP(若有 EIP)
  • 串联 aws-essentials → CFN → TF → Helm 路线

任务清单

  1. template.yaml:Parameters(Environment、InstanceType)
  2. Resources:AWS::EC2::VPC、Subnet、InternetGateway、RouteTable(可简化单 AZ)
  3. AppSecurityGroup:仅开放 22/8080 来自你的 IP 或实验 CIDR
  4. AWS::EC2::Instance:!FindInMap 选 Region AMI
  5. Outputs:InstanceId、可选 PublicIp

验收 YAML 骨架

AWSTemplateFormatVersion: '2010-09-09'
Description: CodeRoadMap 最小 VPC+EC2 Lab

Parameters:
  Environment:
    Type: String
    Default: dev

Resources:
  LabVpc:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: 10.0.0.0/16
      Tags:
        - Key: Name
          Value: !Sub 'coderoadmap-${Environment}'

  # PublicSubnet、IGW、Route、AppSecurityGroup、AppInstance …

Outputs:
  InstanceId:
    Value: !Ref AppInstance
  StackName:
    Value: !Ref AWS::StackName

部署:

aws cloudformation deploy \
  --template-file template.yaml \
  --stack-name coderoadmap-cfn-lab \
  --parameter-overrides Environment=dev \
  --capabilities CAPABILITY_IAM

实验结束 delete-stack,对照 aws-cost。

与全栈路线关系

aws-essentials(认服务)→ cloudformation-essentials(本练习:YAML Stack)
                              ↓
         terraform-essentials(生产推荐:同拓扑 .tf + plan/apply)
                              ↓
         helm-gitops-essentials + github-actions-essentials

可选加分

  • 拆 Nested Stack:network.yaml + compute.yaml
  • 故意 Console 改 SG,跑 detect-stack-drift
  • 把同一拓扑用 TF 写一版,对比 ChangeSet 与 terraform plan
  • 练习

    • 完成上述 5 步模板骨架并成功 deploy(或 dry-run ChangeSet)
    • /roadmaps/aws 勾选 CloudFormation / IaC 相关节点

    小结

    CFN 描述 VPC+EC2 最小实验栈;生产与同拓扑请用 Terraform。 恭喜完成本 track——你已理解 AWS 原生 IaC,并明确 CodeRoadMap 的 TF/GitOps 主路径。

    加载本节练习…
    ← 上一课失败回滚