UpdateReplacePolicy 屬性 - AWS CloudFormation

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

UpdateReplacePolicy 屬性

使用 UpdateReplacePolicy 屬性來在資源在堆疊更新操作期間遭到取代時,保留或 (在某些情況下) 備份其現有的實體執行個體。

當您啟動堆疊更新時, AWS CloudFormation 會根據您提交的內容與堆疊的目前範本和參數之間的差異來更新資源。如果您更新需要取代資源的資源屬性,則會在更新期 CloudFormation 間重新建立資源。重新建立資源會產生新的實體 ID。 CloudFormation 首先建立取代資源,然後將參照從其他相依資源變更為指向取代資源。默認情況下, CloudFormation 然後刪除舊資源。使用UpdateReplacePolicy,您可以指定保 CloudFormation 留,或在某些情況下建立舊資源的快照。

對於支援快照的資源,例如AWS::EC2::Volume,請指Snapshot定在刪除舊資源執行個體之前先 CloudFormation 建立快照。

您可以將UpdateReplacePolicy屬性套用至任何資源。 UpdateReplacePolicy只有在您更新其更新行為指定為「取代」的資源屬性時 CloudFormation 才會執行,因此會使用新的實體 ID 取代舊資源。例如,如果您更新 AWS:: RDS:: DBInstance 資源類型的Engine屬性,則 CloudFormation 會建立新資源,並以新資源取代目前的資料庫執行個體資源。然後,UpdateReplacePolicy屬性將指定是否 CloudFormation刪除、保留或建立舊資料庫執行個體的快照。資源每個屬性的更新行為會在 AWS 資源和屬性類型參考 中該資源的參考主題中指定。如需資源更新行為的詳細資訊,請參閱 瞭解堆疊資源的更新行為

除了使用變更集執行的堆疊更新之外,此 UpdateReplacePolicy 屬性也會套用至您直接執行的堆疊更新

注意

保留資源會持續存在,並繼續產生適用的費用,直到您將這些資源刪除為止。使用此原則建立的快照會繼續存在,並繼續產生適用的費用,直到您刪除這些快照為止。 UpdateReplacePolicy保留舊的實體資源或快照集,但會將其從 CloudFormation範圍中移除。

UpdateReplacePolicyDeletionPolicy 屬性不同,因為它僅適用於在堆疊更新期間替換的資源。用DeletionPolicy於刪除堆疊時,或在堆疊更新過程中從範本中刪除資源定義本身時刪除的資源。

下列程式碼片段包含具有 Retain 替換政策的 Amazon RDS 資料庫執行個體資源。將此資源取代為具有新實體 ID 的新資源時,會保 CloudFormation 留舊資料庫執行個體而不刪除舊資料庫執行個體。

JSON

{ "AWSTemplateFormatVersion" : "2010-09-09", "Resources" : { "myDB" : { "Type" : "AWS::RDS::DBInstance", "DeletionPolicy" : "Retain", "UpdateReplacePolicy" : "Retain", "Properties" : {} } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Resources: myDB: Type: 'AWS::RDS::DBInstance' DeletionPolicy: Retain UpdateReplacePolicy: Retain Properties: {}

UpdateReplacePolicy 選項

Delete

CloudFormation 在資源取代期間刪除資源及其所有內容 (如果適用)。您可以將此政策新增至任何資源類型。依預設,如果您未指定UpdateReplacePolicy,則 CloudFormation 會刪除您的資源。不過,請注意下列考量:

針對 Amazon S3 儲存貯體,您必須刪除儲存貯體中的所有物件,刪除才會成功。

Retain

CloudFormation 當資源被替換時,保留資源而不刪除資源或其內容。您可以將此政策新增至任何資源類型。保留資源會持續存在,並繼續產生適用的費用,直到您將這些資源刪除為止。

如果資源被取代,則UpdateReplacePolicy會保留舊的實體資源,但將其從 CloudFormation的範圍中移除。

Snapshot

對於支援快照的資源,請先為資源 CloudFormation 建立快照,然後再刪除快照。使用此政策建立的快照會持續存在,並繼續產生適用的費用,直到您將這些快照刪除為止。

注意

如果您在中UpdateReplacePolicy為不支援快照的資源指定選Snapshot項,則 CloudFormation 會還原為預設選項,即Delete

支援快照的資源包括: