本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS CloudFormation 堆疊建立事件
在堆疊部署期間,大部分時間用於針對堆疊建立的資源建立、設定和執行最終一致性檢查。當每個資源開始建立程序時,會設定CREATE_IN_PROGRESS
事件狀態。在最終一致性檢查階段,服務會執行內部一致性檢查,確保資源完全運作,並符合各 AWS 服務項所定義的服務穩定標準。當每個資源都完成佈建的最終一致性檢查階段時,會設定CONFIGURATION_COMPLETE
事件的詳細狀態。建立資源並依指定配置,且組態與範本中指定的內容相符之後,就會設定CREATE_COMPLETE
事件的狀態。
在不需要資源最終一致性檢查的情況下,例如驗證生產前堆疊配置或跨堆疊佈建,您可以利用此CONFIGURATION_COMPLETE
事件來簡化堆疊建立程序。您可以透過多種方式使用此事件。例如,您可以使用它作為視覺信號,以跳過等待資源或堆棧一致性檢查完成。或者,您可以使用它來建立自動化機制,使用持續整合和持續傳遞 (CI/CD) 來觸發其他動作。
重要
雖然利用該CONFIGURATION_COMPLETE
事件可以加快堆棧創建時間,但您應該意識到它的權衡。首先,僅支援漂移偵測的資源類型子集。如需支援漂移偵測的資源類型清單,請參閱資源類型支援。這種方法可能不適用於所有情況,尤其是資源需要徹底的最終一致性檢查以確保整個雲端環境(例如,在生產環境中)的完整操作準備情況下。我們建議您仔細評估您的部署需求,以及每個資源的一致性檢查的重要性。使用此CONFIGURATION_COMPLETE
事件來優化部署速度,而不會影響基礎架構的完整性和可靠性。
因為不保證會設定CONFIGURATION_COMPLETE
事件,所以使用它的任何案例都應該準備好在沒有設定CREATE_COMPLETE
事件時處理CONFIGURATION_COMPLETE
事件。
![顯示堆疊中資源建立和最終一致性檢查的事件順序的圖表。](images/configuration-complete.png)
當堆疊部署開始時,AWS::ECR::Repository
和資AWS::ECS::Cluster
源都會啟動建立程序 (ResourceStatus
=CREATE_IN_PROGRESS
. 當資AWS::ECR::Repository
源類型啟動最終一致性檢查 (DetailedStatus
=CONFIGURATION_COMPLETE
) 時,AWS::ECS::TaskDefinition
資源就可以開始建立程序。同樣地,一旦資AWS::ECS::TaskDefinition
源開始進行最終一致性檢查,AWS::ECS::Service
資源就會開始建立程序。
CREATE_IN_PROGRESS
和 CREATE_COMPLETE
事件
-
[堆疊]:
CREATE_IN_PROGRESS
-
[資源]:ECR 儲存庫
CREATE_IN_PROGRESS
-
[資源]:ECS 集群
CREATE_IN_PROGRESS
-
[資源]:ECR 儲存庫
CREATE_IN_PROGRESS
,CONFIGURATION_COMPLETE
-
[資源]:ECS 任務定義
CREATE_IN_PROGRESS
-
[資源]:ECS 集群
CREATE_IN_PROGRESS
,CONFIGURATION_COMPLETE
-
[資源]:ECS 任務定義
CREATE_IN_PROGRESS
,CONFIGURATION_COMPLETE
-
[資源]: ECS 服務
CREATE_IN_PROGRESS
-
[資源]:ECR 儲存庫
CREATE_COMPLETE
-
[資源]:ECS 集群
CREATE_COMPLETE
-
[資源]: ECS 服務
CREATE_IN_PROGRESS
,CONFIGURATION_COMPLETE
-
[堆棧]:
CREATE_IN_PROGRESS
,CONFIGURATION_COMPLETE
-
[資源]:ECS 任務定義
CREATE_COMPLETE
-
[資源]: ECS 服務
CREATE_COMPLETE
-
[堆疊]:
CREATE_COMPLETE
如需詳細資訊,請參閱檢視堆疊事件歷史記錄和 DescribeStackEvents
API 作業。