使用 CloudFormation 堆疊以單一單位管理 AWS 資源 - AWS CloudFormation

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

使用 CloudFormation 堆疊以單一單位管理 AWS 資源

堆疊是您可以單一單位管理 AWS 的資源集合。換言之,您可以建立、更新及刪除堆疊,來建立、更新及刪除資源集合。

建立堆疊需部署 CloudFormation 範本,範本中會指定資源及其組態,其後由 CloudFormation 佈建並設定這些資源。

更新堆疊需變更範本或參數。CloudFormation 會將您提交的變更與您堆疊目前的狀態進行比較,並只更新變更的資源。CloudFormation 可能會中斷資源或取代更新的資源,取決於您更新的屬性。如需資源更新行為的詳細資訊,請參閱 了解更新堆疊資源的行為

CloudFormation 提供更新堆疊的兩種方式:

  • 變更集 – 使用變更集,您可以預覽 CloudFormation 對您堆疊進行的變更,然後決定是否要套用那些變更。變更集為 JSON 格式的文件,摘要 CloudFormation 對堆疊進行的變更。當您希望確保 CloudFormation 不會進行任何無意變更,或是您希望考慮幾個選項時,請使用變更集。例如,您可以使用變更集確認 CloudFormation 不會在更新期間取代您堆疊的資料庫執行個體。

  • 直接更新 – 當您直接更新堆疊時,您會提交變更,CloudFormation 也會立即部署他們。當您希望快速部署更新時,請使用直接更新。

刪除堆疊會刪除與之相關聯的資源。舉例來說,堆疊可包含所有需要用來執行 Web 應用程式的資源,例如 Web 伺服器、資料庫和網路規則。若您不再需要該 Web 應用程式,您只需要刪除堆疊,即可刪除所有相關資源。

注意

您必須為運作堆疊資源的期間支付費用 (即使您立即刪除堆疊)。

CloudFormation 確保所有堆疊資源都會以適當方式建立或刪除。因為 CloudFormation 將堆疊資源視為單一單位,他們必須全部成功建立或成功刪除,才能使堆疊成功建立或刪除。若無法建立其中一項資源,CloudFormation 會復原堆疊並自動刪除任何已建立的資源。若無法刪除其中一項資源,任何剩餘的資源都會受到保留,直到可成功刪除堆疊為止。

管理堆疊的介面

您可以透過下列介面管理 CloudFormation 堆疊:

  • CloudFormation 主控台 – 提供 Web 介面,您可使用此介面來存取堆疊。您可以使用導覽列上的 AWS 管理主控台搜尋方塊來搜尋 CloudFormation,然後從搜尋結果中選擇 CloudFormation,以存取 CloudFormation 主控台。

  • AWS Command Line Interface – 提供包括 CloudFormation 在內的大量 AWS 服務命令,Windows、Mac 和 Linux 都支援。如需有關 CloudFormation 命令的資訊,請參閱《AWS CLI 命令參考》中的 cloudformation

  • AWS Tools for PowerShell - 一組建立在 適用於 .NET 的 SDK公開的功能之上的 PowerShell 模組。Tools for PowerShell 可讓您從PowerShell命令列編寫 AWS 資源操作的指令碼。您可以在 AWS Tools for PowerShell Cmdlet 參考中找到適用於 CloudFormation 的 cmdlets。

  • Query API – 提供您可以使用 HTTPS 請求呼叫的低層級 API 動作。若您在應用程式中進行 API 呼叫,必須撰寫程式碼處理低階詳細資訊,例如產生用於請求簽名的雜湊值。關於 CloudFormation 的 API 動作的詳細資訊,請參閱《AWS CloudFormation API 參考》中的動作

  • AWS SDKs – 提供語言特定的 APIs並負責許多連線詳細資訊,例如計算簽章、處理請求重試和錯誤處理。如需詳細資訊,請參閱 AWS

  • AWS Cloud Development Kit (AWS CDK) – AWS CDK 是一種開放原始碼軟體開發架構,可讓您使用 TypeScript、Python、Java 和 .NET 等熟悉的程式設計語言來定義 AWS 基礎設施。透過 CDK,您可以建立應用程式資源的模型,然後直接從整合式開發環境 (IDE) 使用 CloudFormation 佈建這些資源。如需詳細資訊,請參閱AWS Cloud Development Kit (AWS CDK)