SuperAPI AI 工具集

aws-cdk

部署与运维

查看项目

更新于 10-15 21:52

技能介绍

用途:用 TypeScript 编写 AWS 基础设施即代码,通过可复用构造、安全默认值和“先验证后交付”的流程构建 CDK 应用、堆栈与构造。

主要能力:支持创建或重构 CDK 应用、堆栈与可复用构造;在 L1(Cfn* 原始 CloudFormation)、L2(带默认值与辅助方法的推荐层)、L3(多资源模式)之间选择;构建无服务器、网络与安全相关基础设施;连接多堆栈应用并做环境感知部署;用 cdk synth、测试、cdk diff、cdk deploy 验证变更。

使用方式:初始化项目可运行 npx cdk init app --language typescript。核心生命周期命令包括 cdk synth、cdk diff、cdk deploy、cdk deploy --all、cdk destroy、cdk ls、cdk doctor。推荐交付循环:建模堆栈(优先 L2,重复逻辑抽为自定义构造)→ 运行 cdk synth 确认无缺失导入、无效属性、缺失上下文或未解析引用 → 运行基础设施测试(覆盖 IAM 范围、有状态资源、关键输出)→ 运行 cdk diff 审查 IAM 扩大、资源替换、导出变更与有状态资源删除 → 运行 cdk deploy 直至 CREATE_COMPLETE 或 UPDATE_COMPLETE → 验证运行时输出、端点、告警与集成。跨堆栈引用可通过构造属性传递,如 NetworkStack 暴露 vpc,AppStack 通过 props 接收。

适用场景:无服务器 API(Lambda、API Gateway、DynamoDB)、网络与 VPC 设计、安全加固、多堆栈与环境感知部署,以及用断言测试基础设施。

限制与警告:CloudFormation 每堆栈最多 500 个资源,大型应用应拆分多堆栈;cdk synth 只生成模板,cdk deploy 才应用变更;跨堆栈引用会创建 CloudFormation 导出,移除时需注意顺序;有状态资源(RDS、DynamoDB、含数据的 S3)生产环境应设 removalPolicy: RETAIN;首次部署前需在每个账户/区域运行一次 cdk bootstrap;Lambda 代码与 Docker 镜像会上传到 CDK bootstrap 存储桶。资料未提供收费、价格或平台支持等额外信息。