CloudFormation
AWS CloudFormation
以程式碼建立並管理 AWS 架構的服務。
一句話說明
以程式碼建立並管理 AWS 架構的服務。
概要
以範本定義 AWS 資源,並以堆疊形式建立、更新、刪除的 Infrastructure as Code 服務。
主要用途
- S3 或 Lambda 等的架構管理
- 重新建立相同環境
- 變更歷史的審查
CLF-C02 考試重點
- 實現 Infrastructure as Code
- 從範本建立堆疊
- 可減少手動操作造成的設定錯誤
SAA-C03 考試重點
- 透過 Change Set 確認變更內容
- 透過 StackSets 部署至多帳號、多區域
- 以刪除政策規劃資料保護
實際使用情境
AWS CloudFormation 是將 AWS 資源以範本(YAML 或 JSON)宣告式定義,並以「堆疊」 為單位集中管理建立、更新、刪除的 Infrastructure as Code(IaC)服務。範本中可 定義 VPC、子網路、EC2、IAM 角色、RDS、S3 儲存貯體等幾乎所有 AWS 資源,只要 執行堆疊就能在解決相依關係的同時,以一致的順序配置資源。實務上,從同一份範本 針對各環境(dev / staging / prod)配發堆疊的模式、以變更集事先確認變更內容 再套用至正式環境的模式、以 StackSet 一次部署至多個帳號、多個區域的模式,都是 標準採用的方式。 CloudFormation 的優點是:資源架構以程式碼形式留存於存放庫中,變更歷史可透過 Git 追蹤;在手動操作主控台時容易發生的設定偏移,可用偏移偵測功能偵測;以 復原功能可在部署失敗時自動回到原始狀態。除了直接撰寫範本之外,提供更高階 抽象的 AWS CDK(以通用程式語言撰寫 IaC)或 AWS SAM(專注於無伺服器)在內部 也會合成為 CloudFormation。CloudFormation 本身不收費,但建立的資源會照一般 費率計費,因此忘記停用、誤定義高額資源都會導致成本事故。 在 CLF-C02 中,題目會以「以程式碼定義、管理 AWS 資源的服務是什麼」「從範本 一次建立資源的服務是什麼」等形式出題。雖會與 Terraform(HashiCorp 製的第三方 IaC)並列被處理,但需掌握 CloudFormation 為 AWS 官方的代管 IaC 這一點。SAA-C03 以後,堆疊間的參照(Export / ImportValue)、巢狀堆疊、以 StackSet 進行的跨組織 部署、部署失敗時的復原行為的詳細內容會被深入出題。
官方文件
成本注意事項
- CloudFormation 本身不額外收費
- 所建立的 AWS 資源會產生費用
安全性注意事項
- 勿將機密資訊寫入範本
- 對具有 IAM 建立權限的範本進行審查
相關服務
相關比較文章
此術語尚未登錄相關比較文章。
相關架構圖
此術語尚未登錄相關架構圖。
標籤
最後更新日: 2026-06-01
上一個術語
AWS Cloud Development Kit
下一個術語
Amazon CloudFront