什麼是 AWS CloudFormation? - AWS CloudFormation

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

什麼是 AWS CloudFormation?

AWS CloudFormation 是一個能幫助您模型化與設定 AWS 資源的服務,讓您能花較少的時間管理這些資源,並且有更多時間專注在 AWS 中執行的應用程式上。您建立一個描述所有所需之 AWS 資源的範本 (如 Amazon EC2 執行個體或 Amazon RDS 資料庫執行個體),而 CloudFormation 負責為您佈建與設定這些資源。您不需要個別建立及設定 AWS 資源,並費心思考依存性,這些 CloudFormation 都能處理。以下案例示範 CloudFormation 可協助您的方式。

簡化基礎設施管理

針對同時包含後端資料庫的可擴展 Web 應用程式,您可以使用 Auto Scaling 群組、Elastic Load Balancing 負載平衡器和 Amazon Relational Database Service 資料庫執行個體。您可以使用每項個別服務來佈建這些資源,並且在您建立資源之後,您必須設定它們,才能讓它們一起運作。在您讓您的應用程式開始執行之前,這些任務可能會先讓一切變得更複雜且更耗費時間。

您可以改為建立或修改現有的 CloudFormation 範本。範本會描述您所有的資源及其屬性。當您使用該範本建立 CloudFormation 堆疊時,CloudFormation 會為您佈建 Auto Scaling 群組、負載平衡器和資料庫。在成功建立堆疊後,您的 AWS 資源便會設定好並開始執行。您仍然可以輕易的刪除堆疊,同時刪除堆疊中所有的資源。使用 CloudFormation,您可以輕鬆將資源集合作為單一單位管理。

快速複製您的基礎設施

若您的應用程式需要其他可用性,您可能會在多個區域中複製它,以便在一個區域無法使用時,讓您的使用者仍然可以在其他區域使用您的應用程式。複製您應用程式的挑戰是,您必須同時複製您的資源。您不僅需要記錄所有您應用程式所需的資源,還要在每個區域內佈建及設定那些資源。

重複使用您的 CloudFormation 範本,以一致且可重複的方式建立資源。如需再次使用範本,只需要描述您的資源一次,然後在多個區域內重複佈建相同資源即可。

輕鬆控制和追蹤您基礎設施的變更

在某些情況下,您可能會有您希望累加升級的基礎資源。例如,您可能會在您的 Auto Scaling 啟動組態中變更至效能更高的執行個體類型,以減少您 Auto Scaling 群組中的最大執行個體數。若在您完成更新之後發生問題,您可能需要將您的基礎設施復原至原始設定。若要手動執行此作業,您不僅需要記得您變更了哪些資源,您也必須了解原始設定為何。

當您使用 CloudFormation 佈建您的基礎設施時,CloudFormation 範本會明確描述佈建了哪些資源以及其設定。因為這些範本都是文字檔案,您只需要追蹤您範本中的差異,便可追蹤您基礎設施的變更,與開發人員控制來源碼修訂的方式相似。例如,您可以搭配您的範本使用版本控制系統,以明確了解進行了哪些變更、變更者,以及變更的時間。若在其中任何一個時間點,您需要反轉您基礎設施的變更,您可以使用您範本的先前版本。