Amazon Data Lifecycle Manager 前後指令碼的運作方式 - Amazon EBS

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

Amazon Data Lifecycle Manager 前後指令碼的運作方式

下圖顯示使用自訂 SSM 文件時,前置和後置指令碼的處理流程。這不適用於 VSS 備份。

Amazon Data Lifecycle Manager 前置和後置指令碼處理流程

在排程的快照建立時間,會發生下列動作和跨服務互動。

  1. Amazon Data Lifecycle Manager 會呼叫 SSM 文件並傳遞 pre-script 參數,以起始前置指令碼動作。

    注意

    只有在您執行前置指令碼時,才會執行步驟 1 到 3。如果您只執行後置指令碼,則會略過步驟 1 到 3。

  2. Systems Manager 會將前置指令碼命令傳送至目標執行個體上執行的 SSM 代理程式。SSM 代理程式會在執行個體上執行命令,並將狀態資訊傳回 Systems Manager。

    例如,如果使用 SSM 文件來建立應用程式一致快照,前置指令碼可能會凍結並清除 I/O,以確保在擷取快照之前將所有緩衝資料寫入磁碟區。

  3. Systems Manager 會將前置指令碼的命令狀態更新傳送至 Amazon Data Lifecycle Manager。如果前置指令碼失敗,Amazon Data Lifecycle Manager 會執行以下其中一個動作,實際取決於您設定的前置和後置指令碼選項:

    重試 預設為當機一致快照 動作
    已啟用且剩餘重試次數 已啟用 重試指令碼,直到成功或用盡重試次數
    用盡重試次數而沒有成功完成 已啟用 建立當機一致快照,且不執行後置指令碼。
    已啟用且剩餘重試次數 已停用 重試指令碼,直到成功或用盡重試次數
    用盡重試次數而沒有成功完成 已停用 略過目標執行個體的快照建立作業,且不執行後置指令碼。
    已停用 已啟用 建立當機一致快照,且不執行後置指令碼。
    已停用 已停用 略過目標執行個體的快照建立作業,且不執行後置指令碼。
  4. Amazon Data Lifecycle Manager 會起始快照建立作業。

  5. Amazon Data Lifecycle Manager 呼叫 SSM 文件並傳遞 post-script 參數,以起始後置指令碼動作。

    注意

    只有在您執行前置指令碼時,才會執行步驟 5 到 7。如果您只執行後置指令碼,則會略過步驟 1 到 3。

  6. Systems Manager 會將後置指令碼命令傳送至目標執行個體上執行的 SSM 代理程式。SSM 代理程式會在執行個體上執行命令,並將狀態資訊傳回 Systems Manager。

    例如,如果 SSM 文件有啟用應用程式一致快照,則此後置指令碼可能會解凍 I/O,以確保擷取快照後資料庫恢復正常的 I/O 作業。

  7. 如果您執行後置指令碼,且 Systems Manager 指出已成功完成,程序就會完成。

    如果後置指令碼失敗,Amazon Data Lifecycle Manager 會執行以下其中一個動作,實際取決於您設定的前置和後置指令碼選項:

    重試 動作
    已啟用且剩餘重試次數 重試後置指令碼,直到成功或用盡重試次數
    用盡重試次數而沒有成功 跳過後置指令碼
    已停用 跳過後置指令碼

    請記住,如果後置指令碼失敗,前置指令碼 (如果有啟用) 應已成功完成,而且快照可能已建立。您可能需要對執行個體採取進一步動作,以確保執行個體如預期般運作。例如,如果前置指令碼暫停並清除了 I/O,但是後置指令碼無法解凍 I/O,您可能需將資料庫設定為自動解凍 I/O,或者需要手動解凍 I/O。

  8. 快照建立程序可能會在後置指令碼完成後完成。完成快照所花費的時間取決於快照大小。