CloudFormation 範本區段 - AWS CloudFormation

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

CloudFormation 範本區段

每個 CloudFormation 範本都包含一個或多個區段,每個區段都有特定用途。

資源區段是每個 CloudFormation 範本的必要項目,也是範本的核心。本節指定堆疊資源和其屬性,例如 Amazon EC2 執行個體或 Amazon S3 儲存貯體。每個資源都會以唯一的邏輯 ID、類型和特定設定詳細資訊來定義。

參數區段雖然是選用的,但在提升範本彈性方面扮演重要角色。它可讓使用者在建立或更新堆疊時於執行時期傳遞值。這些參數可在 ResourcesOutputs 區段中參考,無需修改範本本身即可實現自訂。例如,您可使用參數指定不同部署之間會變更的執行個體類型或環境設定。

輸出同樣為選用,用於定義檢視堆疊屬性時傳回的值。輸出會提供資源識別碼或 URL 等實用資訊,可用於操作用途或與其他堆疊整合。此區段協助使用者擷取並使用範本建立之資源的重要詳細資訊。

其他選用區段包括映射,其功能類似查閱表格,用於管理條件值。透過映射,您可以定義索引鍵/值對,並將其與 ResourcesOutputs 區段中的 Fn::FindInMap 內建函數搭配使用。這在您需要根據 AWS 區域 或環境等條件調整設定的場景中相當實用。

中繼資料規則區段雖較少使用,但提供額外功能。Metadata 可包含有關範本的額外資訊,而 Rules 會在建立或更新堆疊時驗證單一參數或參數組合,確保其符合特定標準。條件區段透過根據環境類型等條件控制是否建立特定資源或為屬性指派值,進一步提升彈性。

最後,轉換區段可用於在範本處理期間套用巨集。針對無伺服器應用程式 (也稱為 Lambda 型應用程式),指定要使用的 AWS Serverless Application Model (AWS SAM) 版本。當您指定轉換時,可以使用 AWS SAM 語法來宣告範本中的資源。此模型定義您可以使用的語法及其處理方式。您也可以使用 AWS::Include 轉換,以包含與主要 CloudFormation 範本分開存放的範本程式碼片段。

下列主題提供了關於使用每個區段的更多資訊和範例。