跳到主要內容
Management管理中級CLF-C02SAA-C03

AWS CDK

AWS Cloud Development Kit

用程式碼建立與管理 AWS 基礎設施的開發套件。

一句話說明

用程式碼建立與管理 AWS 基礎設施的開發套件。

概要

AWS CDK 是可使用 TypeScript、Python 等程式語言定義 AWS 基礎設施的 IaC 工具。

主要用途

  • IaC 管理
  • 環境重現
  • 多項 AWS 資源的一次性建構

CLF-C02 考試重點

  • 是 Infrastructure as Code 的選項之一
  • 產生 CloudFormation 以管理 AWS 資源
  • 可用開發語言定義基礎設施

SAA-C03 考試重點

  • 可對環境差異進行程式碼審查
  • 可以堆疊為單位管理資源
  • 需理解刪除操作的影響範圍

實際使用情境

AWS CDK(Cloud Development Kit)是可使用 TypeScript / Python / Java / C# / Go 等通用程式語言定義 AWS 基礎設施的 Infrastructure as Code(IaC)工具。以 CDK 撰寫的程式碼(CDK 應用程式)在內部會被合成(synth)為 CloudFormation 範本, 以 CloudFormation 堆疊的形式部署。實務上會應用於:將複雜的資源架構切分為可重複 使用的 Construct(元件)以實現標準化、將各環境(dev / staging / prod)的差異 參數化以從同一份程式碼配發多個環境、將 Lambda 函式的程式碼與基礎設施定義以一個 語言整合等用途。 相較於直接撰寫 CloudFormation 範本(YAML / JSON)的優點是:IDE 自動完成與型別 檢查有效、可用程式語言的語法撰寫迴圈或條件分支、可使用可重複利用的 Construct 函式庫(L1 / L2 / L3 Constructs / AWS Solutions Constructs)將最佳實務納入 程式碼等。另一方面,若不透過 CDK 直接編輯經 CDK 部署的 CloudFormation 堆疊 會破壞同步,因此運作規則上需遵守「CDK 管理對象只透過 CDK 變更」的原則。CDK 本身不計費,但建立的 AWS 資源會照常產生費用,因此在 PR 審查中檢查避免誤建立 高額資源的運作較為理想。 在 CLF-C02 中,題目會以「以程式碼管理基礎設施的選項是什麼」「產生 CloudFormation 以管理資源的工具是什麼」等形式出題。CloudFormation / CDK / Terraform(第三方) 的區分使用容易成為論點,需掌握 CDK 為「AWS 官方的 IaC 工具,可使用通用語言」 的定位。SAA-C03 以後,堆疊切分的粒度、CDK Construct 的階層(L1 = CloudFormation 資源的薄包裝 / L2 = 附帶安全預設值 / L3 = 整合最佳實務的高階)、正式環境的部署 權限控制都會被深入出題。

官方文件

成本注意事項

  • CDK 本身不額外收費,但所建立的 AWS 資源會產生費用
  • 進行審查以避免誤建高額資源

安全性注意事項

  • 確認所建立的 IAM 權限
  • 限制正式環境的部署權限

相關服務

相關比較文章

此術語尚未登錄相關比較文章。

相關架構圖

此術語尚未登錄相關架構圖。

標籤

iaccloudformationdevops

最後更新日: 2026-06-07