DevOps专业术语
CDK
AWS Cloud Development Kit
CDK · 用 TypeScript 写基础设施而不是 YAML
IaC云平台
CDK
- 定义
- CDK(AWS Cloud Development Kit)是DevOps领域的专业术语。CDK 让你用熟悉的编程语言(TypeScript、Python、Go 等)定义 AWS 基础设施,享受 IDE 补全、类型检查和代码复用,最终编译为 CloudFormation 模板。
最后更新:2026-03-18
什么是CDK?
CDK 让你用熟悉的编程语言(TypeScript、Python、Go 等)定义 AWS 基础设施,享受 IDE 补全、类型检查和代码复用,最终编译为 CloudFormation 模板。
- 用编程语言替代 YAML/HCL 定义基础设施
- 支持 TypeScript、Python、Go 等语言
- 编译为 CloudFormation 模板部署
CDK详解
CDK 是 AWS 对「Infrastructure as Code」的另一种回答:与 Terraform 的 HCL 不同,CDK 使用通用编程语言,可以利用循环、条件、抽象等编程能力。CDK Construct 是可复用的基础设施组件,L1(低级)直接映射 CloudFormation 资源,L2(高级)提供合理默认值,L3(Pattern)封装完整架构模式。CDK 的局限是只支持 AWS。
CDK的应用场景
正式定义
用通用编程语言定义 AWS 基础设施的开源 IaC 框架
应用场景
- AWS 基础设施的代码化管理
- 可复用基础设施组件的封装
- 多环境的参数化部署
常见误区
- CDK 不是 Terraform 的替代品,CDK 只支持 AWS
- CDK 最终生成 CloudFormation,调试时需要理解 CFN
- CDK 的 Construct 抽象很强大但也可能隐藏复杂性
实际案例
📌 CDK Construct Hub
Construct Hub 上有数千个社区贡献的 CDK Construct,从 VPC 到完整的微服务架构都能找到可复用的组件。
CDK的参考来源
关于CDK的常见问题
- CDK 和 Terraform 有什么区别
- CDK 用编程语言(TS/Python/Java)定义基础设施,Terraform 用 HCL;CDK 只支持 AWS,Terraform 支持多云。
- CDK 和 CloudFormation 是什么关系
- CDK 最终生成 CloudFormation 模板,是 CloudFormation 的高级抽象层,用编程语言替代 YAML/JSON。