AWS CloudFormation 堆疊備份 - AWS Backup

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

AWS CloudFormation 堆疊備份

CloudFormation 堆疊由多個具狀態和無狀態資源組成,您可以作為單一單位備份。換句話說,您可以透過備份堆疊並還原其中的資源,來備份和還原包含多個資源的應用程式。堆疊中所有的資源都是由堆疊的 AWS CloudFormation 範本定義。

備份堆疊時 CloudFormation ,會為 CloudFormation 範本和堆疊 AWS Backup 中支援的每個額外資源建立復原點。這些復原點會在一個稱為複合的整體復原點中群組在一起。

您無法還原此複合復原點,但可以還原巢狀復原點。您可以使用主控台或 AWS CLI還原複合備份中的任何位置,從一個巢狀備份到所有巢狀備份。

CloudFormation 應用程式堆疊術語

  • 複合復原點:用來將巢狀復原點以及其他中繼資料群組在一起的復原點。

  • 巢狀復原點 :資源的復原點,屬於 CloudFormation 堆疊的一部分,且作為複合復原點的一部分進行備份。每個巢狀復原點都屬於一個複合復原點堆疊。

  • 複合任務 :堆疊 CloudFormation的備份、複製或還原任務,其可觸發堆疊內個別資源的其他備份任務。

  • 巢狀任務 : AWS CloudFormation 堆疊中資源的備份、複製或還原任務。

CloudFormation 堆疊備份任務

建立備份的程序稱為備份任務。 CloudFormation 堆疊備份任務的狀態為 https://docs.aws.amazon.com/aws-backup/latest/devguide/creating-a-backup.html#backup-job-statuses。備份任務完成後,其狀態會變成 Completed。這表示已建立 AWS CloudFormation 復原點 (備份)。

CloudFormation 可以使用主控台備份堆疊或以程式設計方式備份。若要備份任何資源,包括 CloudFormation 堆疊,請參閱本AWS Backup 開發人員指南 中的在其他地方建立備份

CloudFormation 堆疊可以使用 API命令進行備份StartBackupJob。請注意,文件和主控台是指複合和巢狀復原點;該API語言在相同的內容關係中使用術語「父和子復原點」。

CloudFormation 堆疊包含所有 AWS 資源,會以您的CloudFormation 範本 表示。請注意,您的範本可能包含 AWS Backup目前不支援的資源。如果您的範本包含 AWS 支援的資源和不支援的資源組合, AWS Backup 仍會將範本備份到複合堆疊中,但 Backup 只會建立備份支援服務的復原點。 CloudFormation 範本中包含的所有資源類型都會包含在備份中,即使您尚未選擇加入特定服務 (在主控台設定中將服務切換為「啟用」)。

AWS CloudFormation 復原點

復原點狀態

堆疊的備份任務完成後 (任務狀態為 Completed),即已建立堆疊的備份。此備份也稱為複合復原點。複合復原點可能具有下列其中一種狀態:CompletedFailedPartial。請注意,備份任務具有狀態,而復原點 (也稱為備份) 也會有個別的狀態。

已完成的備份任務表示您的整個堆疊和 中的資源受到 保護 AWS Backup。失敗狀態表示備份任務失敗;您應該在修正造成失敗的問題之後重新建立備份。

Partial 狀態表示堆疊中並非所有資源都已備份。如果 CloudFormation 範本包含 目前不支援的資源 AWS Backup,或者如果屬於堆疊內資源 (巢狀資源) 的一或多個備份任務具有 以外的狀態,則可能會發生這種情況Completed。您可以手動建立隨需備份,重新執行產生 Completed 以外狀態的任何資源。如果您預期堆疊的狀態為 Completed,但卻標記為 Partial,請確認您的堆疊可能發生以上哪種情況。

複合復原點中的每個巢狀資源都有自己的個別復原點,每個復原點都有自己的狀態 (CompletedFailed)。您可以還原狀態為 Completed 的巢狀復原點。

管理復原點

您可以複製複合復原點 (備份),以及複製、刪除、取消關聯或還原巢狀復原點,但無法刪除包含巢狀備份的複合復原點。刪除或取消關聯複合復原點中的巢狀復原點之後,您可以手動刪除複合復原點,或保留直到備份計畫生命週期將其刪除為止。

刪除復原點

您可以使用 AWS Backup 主控台或使用 刪除復原點 AWS CLI。

若要使用 AWS Backup 主控台刪除復原點,

  1. https://console.aws.amazon.com/backup 開啟 AWS Backup 主控台。

  2. 按一下左側導覽列中的 受保護的資源。在文字方塊中,輸入 CloudFormation 以僅顯示您的 CloudFormation堆疊。

  3. 複合復原點會隨即顯示在「復原點」窗格中。您可以按一下每個復原點 ID 左側的加號 (+) 來展開每個複合復原點,以顯示複合中包含的所有巢狀復原點。您可以勾選任何復原點左側的方塊,將其包含在您選取要刪除的復原點中。

  4. 按一下 刪除 按鈕。

當您使用主控台刪除一或多個複合復原點時,會快顯一個警告方塊。此警告方塊會要求您確認是否有意刪除複合復原點 (包括複合堆疊內的巢狀復原點)。

若要使用 刪除復原點API,請使用 DeleteRecoveryPoint命令。

當您API搭配 使用 時 AWS Command Line Interface ,您必須先刪除所有巢狀復原點,才能刪除複合點。如果您傳送API請求來刪除仍包含巢狀復原點的複合堆疊備份 (復原點),則請求將傳回錯誤。

取消巢狀復原點與複合復原點的關聯

您可以取消巢狀復原點與複合復原點的關聯 (例如,您想要保留巢狀復原點但刪除複合復原點)。兩個復原點都會保留下來,但不再相互關聯;也就是說,取消關聯之後,在複合復原點上進行的動作將不會再套用至巢狀復原點。

您可以使用主控台取消復原點的關聯,也可以呼叫 API DisassociateRecoveryPointFromParent。【請注意,API呼叫使用「父」一詞來參考複合復原點。】

複製復原點

您可以複製複合復原點,或者如果資源支援跨帳戶和跨區域複製,則可以複製巢狀復原點。

若要使用 AWS Backup 主控台複製復原點:

  1. https://console.aws.amazon.com/backup 開啟 AWS Backup 主控台。

  2. 按一下左側導覽列中的 受保護的資源。在文字方塊中,輸入 CloudFormation 以僅顯示您的 CloudFormation堆疊。

  3. 複合復原點會隨即顯示在「復原點」窗格中。您可以按一下每個復原點 ID 左側的加號 (+) 來展開每個複合復原點,以顯示複合中包含的所有巢狀復原點。您可以按一下任何復原點左側的圓形選項按鈕進行複製。

  4. 選取後,請按一下窗格右上角的 複製 按鈕。

當您複製複合復原點時,不支援複製功能的巢狀復原點不會出現在複製的堆疊中。複合復原點的狀態將會是 Partial

常見問答集

  1. 「在應用程式備份過程中會包含哪些內容?」

    作為使用 定義之應用程式的每個備份的一部分 CloudFormation,範本、範本中每個參數的處理值,以及 支援的巢狀資源 AWS Backup 都會備份。巢狀資源的備份方式與非 CloudFormation 堆疊一部分的個別資源相同。請注意,不會備份標記為 no-echo 的參數值。

  2. "我可以備份已巢狀 AWS CloudFormation 堆疊的堆疊嗎?"

    是。包含巢狀 CloudFormation 堆疊的堆疊可以在備份中。

  3. Partial 狀態是否表示我的備份建立失敗?」

    否。部分狀態表示某些復原點已備份,某些復原點則否。如果您預期 Completed 備份結果,可檢查下列三種情況:

    1. 您的 CloudFormation 堆疊是否包含 目前不支援的資源 AWS Backup? 如需支援的資源清單,請參閱我們的 開發人員指南中的支援 AWS 資源和第三方應用程式

    2. 屬於堆疊內資源的一或多個備份任務失敗,必須重新執行任務。

    3. 已從複合復原點中刪除或取消關聯巢狀復原點。

  4. "如何排除 CloudFormation 堆疊備份中的資源?"

    備份 CloudFormation 堆疊時,您可以排除資源成為備份的一部分。在主控台中,建立備份計畫更新備份計畫過程中會有一個指派資源步驟。在此步驟中,有一個 資源選取 區段。如果您選擇包含特定資源類型,並已包含 CloudFormation 作為備份的資源,您可以從IDs選取的資源類型 中排除特定資源。您也可以使用標籤來排除堆疊內的資源。

    使用 CLI,您可以使用

    • NotResources 備份計畫中的 ,以從 CloudFormation 堆疊中排除特定資源。

    • 使用 StringNotLike 透過標籤排除項目。

  5. 「巢狀資源支援哪些類型的備份?」

    巢狀資源的備份可以是完整備份或增量備份,取決於 AWS Backup 這些資源支援哪種類型的備份。如需詳細資訊,請參閱《增量備份的運作方式》。不過請注意,Amazon S3 和 Amazon RDS 巢狀資源不支援 PITR(point-in-time 還原)。

  6. "是否有 CloudFormation 屬於堆疊備份一部分的變更集?"

    否。變更集不會作為 CloudFormation 堆疊備份的一部分進行備份。

  7. " AWS CloudFormation 堆疊的狀態如何影響備份?"

    CloudFormation 堆疊的狀態可能會影響備份。您可以備份狀態包含 COMPLETE 的堆疊,例如 CREATE_COMPLETEROLLBACK_COMPLETEUPDATE_COMPLETEUPDATE_ROLLBACK_COMPLETEIMPORT_COMPLETEIMPORT_ROLLBACK_COMPLETE 狀態。

    如果上傳新範本失敗且堆疊移至 ROLLBACK_COMPLETE 狀態,則會備份新範本,但巢狀資源的備份則會視資源是否已復原而定。

  8. 「應用程式堆疊生命週期與其他復原點生命週期有何不同?」

    巢狀復原點生命週期取決於其所屬的備份計畫。複合復原點取決於所有巢狀復原點的最長生命週期。刪除或取消關聯複合復原點內的最後一個巢狀復原點時,也會刪除複合復原點。

  9. “如何將 的標籤 CloudFormation 複製到復原點?”

    是。這些標籤會複製到各自的巢狀復原點。

  10. 「刪除複合復原點和巢狀復原點 (備份) 是否有先後順序?」

    是。您必須先刪除某些備份,才能刪除其他備份。在刪除複合內的所有復原點之前,無法刪除包含巢狀復原點的複合備份。一旦複合復原點不再包含巢狀復原點,就可以手動將其刪除。否則,系統會根據備份計畫生命週期將其刪除。

還原堆疊內的應用程式

如需還原巢狀復原點的資訊,請參閱《如何還原應用程式堆疊備份》。