本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立變更集
若要為執行中的堆疊建立變更集,請提供修改過的範本、新的輸入參數值或兩者,以提交您要進行的變更。 CloudFormation 通過將堆棧與您提交的更改進行比較來生成更改集。
您可以在建立變更集之前或在建立變更集期間修改範本。
- Create a change set for nested stacks (console)
-
建立巢狀堆疊的變更集 (主控台)
-
在CloudFormation 主控台
的「堆疊」中,選擇您要為其建立變更集的執行堆疊。 -
在 stack details (堆疊詳細資訊) 窗格中,選擇 Stack actions (堆疊動作),然後選擇 Create change set for current stack (建立目前堆疊的變更集)。
-
在 [建立變更集] 上
stack-name
頁面上,執行下列其中一個動作來修改輸入參數值、指定更新範本的位置,或修改範本:任務 動作 修改輸入參數值 選擇「使用現有樣板」,然後選擇「下一步」以繼續輸入或修改輸入參數值。 指定更新的範本位置 如果您已修改範本,請選擇「取代現有範本」,然後執行下列其中一個動作:
-
對於存放在 Amazon S3 儲存貯體中的範本,請選擇 Amazon S3 URL。輸入或貼上範本URL的,然後選擇 [下一步]。
如果您的範本位於已啟用版本控制的儲存貯體中,則您可以指定範本的特定版本,例如
https://s3.amazonaws.com/templates/myTemplate.template?versionId=123ab1cdeKdOW5IH4GAcYbEngcpTJTDW
。如需詳細資訊,請參閱《Amazon Simple Storage Service 使用者指南》中的管理已啟用版本控制之儲存貯體中的物件。 -
針對存放在本機電腦上的範本,選擇 Upload a template file (上傳範本檔案)。選擇 Choose File (選擇檔案) 導覽至該檔案並選取它,然後選擇 Next (下一步)。
修改範本 如果您尚未修改範本,請在應用程式撰寫器中選擇 [編輯範本],然後選擇 [在應用程式撰寫器中編輯]。您會重新導向到 AWS 應用程式編寫器。修改範本後,請選擇 [建立變更集],然後選擇 [確認] 並 CloudFormation繼續返回 [建立變更集] stack-name
頁面,然後選擇 [下一步]。 -
-
在「指定堆疊詳細資訊」頁面上,指定變更集的名稱,並選擇性地指定變更集的描述,以便在「概觀」段落中識別其用途。如果您的範本包含參數,請在 Specify stack details (指定堆疊詳細資訊) 頁面上,輸入或修改合適的輸入參數值,然後選擇 Next (下一步)。
如果您要重複使用堆棧的模板,則將堆棧中的當前值 CloudFormation 填充每個參數,但使用該屬性聲明的參數除外。
NoEcho
選取 Use existing value (使用現有的值),即可使用現有的參數值。如需有關使用
NoEcho
遮罩敏感資訊以及使用動態參數來管理密碼的詳細資訊,請參閱最請勿在您的範本中內嵌憑證佳做法。 -
在 [設定堆疊選項] 頁面上,更新堆疊的標籤、IAM服務角色、堆疊政策、回復組態、Amazon SNS 通知主題 (如果適用) 或變更集,然後選擇 [下一步]。
注意
巢狀堆疊的變更集預設為 Enabled (啟用),這將會為範本中指定的所有巢狀堆疊建立變更集。如需巢狀堆疊之變更集的詳細資訊,請參閱巢狀堆疊變更集。
-
關於檢討
stack-name
」頁面上,檢閱此變更集的變更。如果範本包含 AWS Identity and Access Management (IAM) 資源,請選取 [我確認 CloudFormation 可能會建立IAM資源]。IAM資源可以修改您 AWS 帳戶中的權限;請檢閱這些資源,以確保您只允許執行您想要的動作。如需詳細資訊,請參閱控制存取 AWS Identity and Access Management。
-
選擇提交。
您會被重新導向到變更集詳細資訊頁面的 Changes (變更) 標籤。當 CloudFormation 生成變更集時,變更集的狀態為 CREATE_ PENDING。建立變更集之後,請將狀態 CloudFormation 設定為 CREATE_ COMPLETE。在「變更」區段中, CloudFormation 列出它將對堆疊進行的所有變更。如需詳細資訊,請參閱檢視變更集。
如果 CloudFormation 無法建立變更集 (報告
FAILED
狀態),請修正「狀態」欄位中顯示的錯誤,然後重新建立變更集。 -
確認變更看起來正確後,請選擇「執行變更集」
-
- Create a change set (console)
-
建立變更集 (主控台)
-
在CloudFormation 主控台
的「堆疊」中,選擇您要為其建立變更集的執行堆疊。 -
在 stack details (堆疊詳細資訊) 窗格中,選擇 Stack actions (堆疊動作),然後選擇 Create change set for current stack (建立目前堆疊的變更集)。
-
在 [建立變更集] 上
stack-name
頁面上,執行下列其中一個動作來修改輸入參數值、指定更新範本的位置,或修改範本:任務 動作 修改輸入參數值 選擇「使用現有樣板」,然後選擇「下一步」以繼續輸入或修改輸入參數值。 指定更新的範本位置 如果您已修改範本,請選擇「取代現有範本」,然後執行下列其中一個動作:
-
對於存放在 Amazon S3 儲存貯體中的範本,請選擇 Amazon S3 URL。輸入或貼上範本URL的,然後選擇 [下一步]。
如果您的範本位於已啟用版本控制的儲存貯體中,則您可以指定範本的特定版本,例如
https://s3.amazonaws.com/templates/myTemplate.template?versionId=123ab1cdeKdOW5IH4GAcYbEngcpTJTDW
。如需詳細資訊,請參閱《Amazon Simple Storage Service 使用者指南》中的管理已啟用版本控制之儲存貯體中的物件。 -
針對存放在本機電腦上的範本,選擇 Upload a template file (上傳範本檔案)。選擇 Choose File (選擇檔案) 導覽至該檔案並選取它,然後選擇 Next (下一步)。
修改範本 如果您尚未修改範本,請在應用程式撰寫器中選擇 [編輯範本],然後選擇 [在應用程式撰寫器中編輯]。您會重新導向到 AWS 應用程式編寫器。修改範本後,請選擇 [建立變更集],然後選擇 [確認] 並 CloudFormation繼續返回 [建立變更集] stack-name
頁面,然後選擇 [下一步]。 -
-
在「指定堆疊詳細資訊」頁面上,指定變更集的名稱,並選擇性地指定變更集的描述,以便在「概觀」段落中識別其用途。如果您的範本包含參數,請在 Specify stack details (指定堆疊詳細資訊) 頁面上,輸入或修改合適的輸入參數值,然後選擇 Next (下一步)。
如果您要重複使用堆棧的模板,則將堆棧中的當前值 CloudFormation 填充每個參數,但使用該屬性聲明的參數除外。
NoEcho
選取 Use existing value (使用現有的值),即可使用現有的參數值。如需有關使用遮罩敏感資訊
NoEcho
以及使用動態參數來管理密碼的詳細資訊,請參閱最請勿在您的範本中內嵌憑證佳做法。 -
在 [設定堆疊選項] 頁面上,更新堆疊的標籤、IAM服務角色、堆疊政策、回復組態、Amazon SNS 通知主題 (如果適用) 或變更集,然後選擇 [下一步]。
注意
巢狀堆疊的變更集預設為 Enabled (啟用),這將會為範本中指定的所有巢狀堆疊建立變更集。若要僅為目前堆疊建立變更集,請選擇 Disabled (停用)。如需巢狀堆疊之變更集的詳細資訊,請參閱巢狀堆疊變更集。
-
關於檢討
stack-name
」頁面上,檢閱此變更集的變更。如果範本包含 AWS Identity and Access Management (IAM) 資源,請選取 [我確認 CloudFormation 可能會建立IAM資源]。IAM資源可以修改您 AWS 帳戶中的權限;請檢閱這些資源,以確保您只允許執行您想要的動作。如需詳細資訊,請參閱控制存取 AWS Identity and Access Management。
-
選擇提交。
您會被重新導向到變更集詳細資訊頁面的 Changes (變更) 標籤。當 CloudFormation 生成變更集時,變更集的狀態為 CREATE_ PENDING。建立變更集之後,請將狀態 CloudFormation 設定為 CREATE_ COMPLETE。在「變更」區段中, CloudFormation 列出它將對堆疊進行的所有變更。如需詳細資訊,請參閱檢視變更集。
在「內容層級變更」欄中選擇「檢視詳細資料」,以檢視在屬性層級所做的變更。
如果 CloudFormation 無法建立變更集 (報告
FAILED
狀態),請修正「狀態」欄位中顯示的錯誤,然後重新建立變更集。 -
確認變更看起來正確後,請選擇「執行變更集」
-
建立變更集 (AWS CLI)
-
執行 create-change-set; 命令。
您能夠以命令選項的形式來提交變更,亦能指定新的參數值、修改後的範本,或同時指定兩者。例如,以下命令將為
SampleChangeSet
堆疊建立SampleStack
變更集。該變更集會使用目前的堆疊範本,但Purpose
參數將具備不同值:$
aws cloudformation create-change-set \ --stack-name arn:aws:cloudformation:us-east-1:123456789012:stack/SampleStack/1a2345b6-0000-00a0-a123-00abc0abc000 \ --change-set-name SampleChangeSet --use-previous-template \ --parameters \ ParameterKey="InstanceType",UsePreviousValue=true ParameterKey="KeyPairName",UsePreviousValue=true ParameterKey="Purpose",ParameterValue="production"