Terraform 與 AWS CloudFormation 都是「基礎設施即程式碼」(IaC)工具,可用於自動化雲端資源部署,但在應用範圍、語法、彈性等方面有明顯差異:

適用場景
- Terraform:跨平台/多雲部署、現有資源匯入與自訂模組、團隊合作及複製混合雲架構。
- CloudFormation:AWS生態最原生、服務更新快,對AWS系統(Serverless/SAM/CDK)等支援完善,有自動回滾與權限管理。
實務補充
- 兩者可混合使用:在AWS專案中以Terraform為主、必要時嵌入CloudFormation資源,適合需要跨雲與AWS服務深度整合。學習成本略高,但兼具彈性與效率。
- Terraform 編排範例:多雲建置 VPC、EC2、S3、Azure VM 等都能以程式檔案描述與自動部署。
- CloudFormation 編排範例:使用 YAML/JSON 部署 S3、EC2、Serverless App,並可原生設定 IAM、Lambda、事件觸發等。
總結:Terraform 彈性高,跨平台多雲適用;CloudFormation AWS原生,服務支援最快。大型團隊多偏好 Terraform,AWS純部署則用 CloudFormation最方便。