從 CloudFormation 主控台建立堆疊 - AWS CloudFormation

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

從 CloudFormation 主控台建立堆疊

本主題說明從 CloudFormation 主控台建立堆疊的程序。主控台提供精靈驅動的介面,其中包含預先定義的選項,以簡化堆疊建立程序。

若要建立新的堆疊,您需要提供 CloudFormation 範本。此範本是 YAML JSON或 格式的文字檔案,指定您要佈建的資源,以及這些資源的組態屬性。如需詳細資訊,請參閱使用 CloudFormation 範本

如需使用 的範例 create-stack CLI 命令來建立堆疊,請參閱 使用 和 建立、更新 AWS CLI 和刪除 CloudFormation 堆疊 PowerShell

建立堆疊

請依照本節中的步驟部署範本並建立堆疊。

建立 堆疊
  1. https://console.aws.amazon.com/cloudformation 開啟 AWS CloudFormation 主控台。

  2. 在畫面頂端的導覽列上,選擇要在其中 AWS 區域 建立堆疊的 。

  3. 堆疊頁面上,選擇右上角的建立堆疊,然後選擇使用新資源 (標準)

    或者,您可以選擇使用現有資源 (匯入資源) 選項,以匯入範本中描述的現有 AWS 資源。如需此選項的詳細資訊,請參閱 匯入 AWS 資源到具有資源導入的 CloudFormation 堆棧中

  4. 建立堆疊頁面上,執行下列其中一項操作:

    • 若要使用現有範本,請針對準備範本 ,選擇範本已就緒 。然後,在指定範本 下,根據範本的位置選擇 Amazon S3 URL上傳範本檔案

      • 如果您選擇 Amazon S3 URL,請將 URL提供給 S3 儲存貯體中的範本檔案。

        如果您的範本包含巢狀堆疊 (例如,位於子目錄中的其他範本文件中所述的堆疊),請確定 S3 儲存貯體包含必要的檔案和目錄。

        如果您擁有已啟用版本控制之儲存貯體的範本,您可以透過附加?versionId=version-id至 來指定範本的特定版本URL。如需啟用版本控制之儲存貯體的詳細資訊,請參閱 Amazon Simple Storage Service 使用者指南 中的使用啟用版本控制之儲存貯體中的物件

        必須URL指向大小上限為 1 MB 的範本,該範本存放在您具有讀取許可的 S3 儲存貯體中。URL 長度上限為 1024 個字元。部分資源可能要求在堆疊所在的相同區域內有儲存貯體。

      • 如果您選擇上傳範本檔案 ,請選擇選擇檔案,從本機電腦選擇範本檔案。範本檔案大小必須為 1 MB 或以下。

        選擇範本後, 會 CloudFormation 上傳檔案,並顯示 S3 URL. CloudFormation uploads 到您 中的 Amazon S3 儲存貯體 AWS 帳戶。如果您已經有由 在 CloudFormation 中建立的 S3 儲存貯體 AWS 帳戶, 會將範本 CloudFormation 新增至該儲存貯體。如果您還沒有現有的 CloudFormation建立的儲存貯體,它會為每個上傳範本檔案的區域建立唯一的儲存貯體。

        以下是使用 建立的 S3 儲存貯體時的考量 CloudFormation事項:

    • 如果您尚未準備好範本,可以選擇使用範例範本從範本程式庫使用範例範本,或從 Infrastructure Composer 建置範本以使用 Infrastructure Composer 建立範本。如需詳細資訊,請參閱基礎設施編寫器

  5. 選擇下一步以繼續,然後選擇 和 來驗證範本。

    在繼續之前, CloudFormation 請驗證您的範本以擷取語法和一些語意錯誤,例如循環相依性。在驗證期間, CloudFormation 首先檢查範本是否有效JSON。如果不是, 會 CloudFormation 檢查範本是否為有效的 YAML。如果兩個檢查都失敗, 會 CloudFormation 傳回範本驗證錯誤。

  6. Specify stack details (指定堆疊詳細資訊) 頁面的 Stack name (堆疊名稱) 方塊中,輸入堆疊名稱。

    堆疊名稱是一個識別碼,可協助您從堆疊清單中找到特定堆疊。堆疊名稱只能包含英數字元 (區分大小寫) 和連字號。必須以字母字元開頭,且長度不可超過 128 個字元。

  7. 參數區段中,指定範本中定義的參數值。

  8. 選擇下一步以繼續建立堆疊。

  9. (選用) 在設定堆疊選項頁面上,變更預設堆疊選項。如需詳細資訊,請參閱設定堆疊選項

  10. 如果您的範本包含IAM資源,對於功能 ,請選擇我確認此範本可能會建立IAM資源,以指定您要在範本中使用IAM資源。如需詳細資訊,請參閱認可 CloudFormation 範本中的 IAM 資源

  11. 選擇 Next (下一步) 繼續。

  12. 檢閱和建立頁面上,檢閱堆疊的詳細資訊。

    若要在啟動堆疊之前變更任何值,請在具有您要變更之設定的部分上選擇編輯

  13. (選用) 您可以建立變更集,以在建立堆疊之前預覽堆疊的組態。在檢閱和建立頁面上,選擇建立變更集並遵循指示。如需詳細資訊,請參閱預覽堆疊的組態

  14. 選擇提交以啟動您的堆疊。

CloudFormation 接著會繼續建立範本中定義的所有資源。

您可以在新堆疊的事件索引標籤上監控堆疊建立的進度和狀態。如需詳細資訊,請參閱監控堆疊進度

設定堆疊選項

設定堆疊選項頁面上,您可以設定 CloudFormation 堆疊的選項,例如標籤、堆疊事件通知或堆疊政策。

您可以設定下列堆疊選項:

Tags (標籤)

您最多可以將 50 個標籤金鑰對新增至您的堆疊,以及任何 CloudFormation 支援標記的資源。標籤是客戶定義的索引鍵和值,可以指派給 AWS 資源,用於成本追蹤等目的。

Key (金鑰) 會包含任何英數字元或空格。而標籤金鑰的長度最多可達 127 個字元。

Value (數值) 會包含任何英數字元或空格。而標籤值的長度最多可達 255 個字元。

許可

CloudFormation 可以擔任的現有IAM服務角色。 CloudFormation 使用角色的憑證來建立堆疊,而不是使用您的帳戶憑證。如需詳細資訊,請參閱AWS CloudFormation 服務角色

堆疊失敗選項

為所有堆疊部署和變更集操作指定佈建失敗選項。如需詳細資訊,請參閱選擇佈建資源時如何處理失敗

堆疊狀態為 CREATE_FAILEDUPDATE_FAILED 時,Roll back all stack resources (復原所有堆疊資源) 選項將復原範本中指定的所有資源。

針對建立操作,Preserve successfully provisioned resources (保留已成功佈建的資源) 選項可保留成功資源的狀態,而失敗的資源會保持失敗狀態,直到執行下一次更新操作為止。

針對更新與變更集操作,Preserve successfully provisioned resources (保留已成功佈建的資源) 選項可保留成功資源的狀態,同時將失敗資源復原到上一個已知穩定狀態。失敗的資源將處於 UPDATE_FAILED 狀態。沒有上一個已知穩定狀態的資源將在下一次堆疊操作時遭刪除。

您也可以針對堆疊建立設定以下進階選項:

Stack policy (堆疊政策)

可藉由此選項來定義堆疊更新期間,您欲避免意外更新的資源。在預設情況下,系統可以在堆疊更新期間將所有資源進行更新。

您可以直接輸入堆疊政策作為 JSON,或上傳包含堆疊政策JSON的檔案。如需詳細資訊,請參閱避免更新堆疊資源

復原組態

您可以在堆疊建立和更新期間 CloudFormation 監控堆疊的狀態,並在堆疊違反您指定的任何警示閾值時復原該操作。指定 CloudFormation 應該監控的 CloudWatch 警示。如果在堆疊操作或監控期間有任何警示進入 ALARM 狀態, CloudFormation 會復原整個堆疊操作。如需詳細資訊,請參閱使用回滾觸發器在警報洩露時回滾您的 CloudFormation 堆棧

通知選項

您可指定新的或現有 Amazon Simple Notification Service 主題,其為系統傳送堆疊事件通知的目標位置。

如果您建立 Amazon SNS主題,則必須指定要傳送堆疊事件通知的名稱和電子郵件地址。

堆疊建立選項

堆疊建立包含以下選項,但不提供為堆疊更新的一部分。

Timeout (逾時)

指定逾時堆疊建立操作之前 CloudFormation 應分配的時間,以分鐘為單位。如果 CloudFormation 無法在指定的時間內建立整個堆疊,則會因為逾時而失敗堆疊建立,並復原堆疊。

依預設,堆疊建立沒有逾時。不過,個別資源可能會因其實作的服務性質而有自己的逾時。例如,如果堆疊中的個別資源逾時,堆疊建立也會逾時,即使尚未達到您指定的堆疊建立逾時。

終止保護

此選項可防止堆疊遭意外刪除。如果使用者嘗試刪除啟用終止保護的堆疊,則刪除會失敗,且堆疊及其狀態保持不變。如需詳細資訊,請參閱防止 CloudFormation 堆疊遭到刪除

根據預設,終止保護為 Disabled (已停用)

預覽堆疊的組態

若要預覽如何在建立 CloudFormation 堆疊之前設定堆疊,請建立變更集。本功能可以讓您在執行變更集前檢查各種組態,並針對堆疊進行修正與更改。如需變更集的詳細資訊,請參閱使用變更集更新 CloudFormation 堆疊

建立新堆疊的變更集

若要建立新堆疊的變更集,請選取您的堆疊範本並指定堆疊組態,就像建立新堆疊一樣,然後選擇建立新的變更集,而不是建立新的堆疊。

為新堆疊建立變更集
  1. 檢閱和建立頁面上,選擇建立變更集

  2. 建立變更集對話方塊中,輸入變更集的名稱,並視需要輸入描述。選擇 Create change set (建立變更集)

    當您為新堆疊建立變更集時, 會 CloudFormation 執行下列動作:

    • 啟動狀態為 REVIEW_IN_PROGRESS (正在檢閱) 的新堆疊。

    • 建立新堆疊的變更集,此堆疊會反映您在前列步驟中指定的堆疊組態。

    CloudFormation 會顯示提議堆疊的變更頁面。 CloudFormation 建立變更集時,其狀態為 CREATE_IN_PROGRESS,執行狀態為 UNAVAILABLE。 CloudFormation 成功完成建立變更集時,它會將變更集狀態設定為 CREATE_COMPLETE,且其執行狀態為 AVAILABLE。堆疊狀態更新為 REVIEW_IN_PROGRESS (正在檢閱)。此時,您可以執行變更集來完成建立新堆疊。

    變更窗格中, CloudFormation 顯示堆疊的建議組態。

    如果 CloudFormation 無法建立變更集,則會將變更集狀態設定為 CREATE_FAILED。修正 Status reason (狀態原因) 欄位中顯示的錯誤,然後建立新的變更集。在此階段,您可以嘗試在執行下一個變更集前檢查各種組態,並針對堆疊進行修正與更改。

  3. 若要根據變更集完成建立新堆疊,請選擇 Execute (執行),指定復原組態,然後選擇 Execute change set (執行變更集)。