關於前置和後置事件
適用於:✔️ Windows VM ✔️ Linux VM ✔️ 內部部署環境 ✔️ 已啟用 Azure Arc 的伺服器。
Azure Update Manager 中的前置和後置事件可讓您在排程的維護設定前後自動執行某些工作。 如需如何建立排程維護設定的詳細資訊,請參閱使用 Azure 入口網站和 Azure 原則排程機器的週期性更新。 例如,使用前置和後置事件,您可以在機器上執行下列已排定的工作。 下列清單並不完整,您可以視需要建立前置事件和後置事件。
範例工作
以下是您可以定義前置和後置事件的情況:
案例 | 說明 |
---|---|
開啟電腦 | 開啟機器以套用更新。 |
建立快照集 | 用來復原資料的磁碟快照。 |
通知電子郵件 | 觸發修補程式之前傳送通知警示。 |
停止服務 | 停止閘道服務、NPExServices、SQL 服務等服務。 |
排程前置和後置事件的執行順序
在指定的排程中,您可以納入前置事件、後置事件或兩者。 此外,您還可以有多個前置和/或後置事件。 前置和後置事件的排程執行順序如下:
前置事件 - 排程維護期間開始前執行的工作。 例如 - 在修補之前開啟機器。
取消 - 在此步驟中,您可以起始取消排程執行。 在某些情況下,您可能會選擇取消排程執行,例如前置事件失敗或前置事件未完成執行。
注意
您必須在前置事件的執行過程中起始取消;Azure 更新管理員或維護設定不會自動取消排程。 如果您無法取消,排程執行會繼續在使用者定義的維護期間安裝更新。
更新安裝 - 在使用者定義的排程維護期間內會安裝更新。
後置事件 - 安裝更新後會立即執行後置事件。 如果更新安裝完成且維護期間還有剩餘的時間,則會在維護期間內發生,或者維護期間已結束,則會在維護期間以外發生。 例如:修補完成後關閉 VM。
注意
在 Azure 更新管理員中,前置事件會在維護期間以外執行,而後置事件則是可能會在維護期間以外執行。 您必須規劃在電腦上完成排程執行所需的這個額外時間。
排程狀態 - 排程執行的成功或失敗狀態只會參考機器上排程的更新安裝。 排程執行狀態不包含前置和後置事件狀態。 如果前置事件失敗,且您呼叫取消 API,則排程執行狀態會顯示為已取消。
Azure 更新管理員使用 [事件方格],依據排程的維護設定建立和管理前置事件和後置事件。 在事件方格中,您可以選擇事件處理常式,例如 Azure Webhook、Azure Functions 等,以觸發您的前置和後置活動。
注意
如果您在 Azure 自動化更新管理的前置和後置事件中使用 Runbook,且打算在 Azure 更新管理員中重複使用 Runbook,則建議您使用連結至自動化 Runbook 的 Azure Webhook。 深入了解。
前置和後置事件的排程時間表
建議您瀏覽下表,以了解前置和後置事件的排程時間表。
例如,如果維護排程設定為在下午 3:00 開始,則客體維護範圍會有 3 小時又 55 分鐘的維護期間。 排程有一個前置事件和一個後置事件,詳細資料如下:
Time | 詳細資料 |
---|---|
下午 2:19 | 由於排程執行是在下午 3:00 開始,因此您可以在開始時間前的 40 分鐘修改機器或範圍,例如下午 2:19。 注意 如果您要建立新的排程或編輯前置事件的現有排程,則適用此方式。 |
下午 2:20 - 下午 2:30 | 由於前置事件至少會在 30 分鐘之前觸發,因此可以在下午 2:20 到下午 2:30 之間隨時觸發。 |
下午 2:30 - 下午 2:50 | 前置事件會從下午 2:30 執行到下午 2:50。 前置事件必須在下午 2:50 之前完成工作。 注意 如果您已設定多個前置事件,則所有事件都必須在 20 分鐘內執行。 如果有多個前置事件,則所有事件都會彼此分開獨立執行。 您可以在前置事件中定義邏輯,以根據您的需求自訂。 例如,如果您想要循序執行兩個前置事件,可以在第二個前置事件的邏輯中包含延遲的開始時間。 如果前置事件持續執行超過 20 分鐘或失敗,您可以選擇取消排程執行,否則修補程式安裝會繼續執行,而不管前置事件執行狀態為何。 |
下午 2:50 | 可以叫用取消 API 的最後時間是下午 2:50。 注意 如果取消 API 無法叫用或尚未設定,則修補程式安裝會繼續執行。 |
下午 3:00 | 排程執行會在下午 3:00 觸發。 |
下午 6:55 | 在下午 6:55,排程會在 3 小時 55 分鐘的維護期間完成安裝更新。 安裝更新之後,後置事件會在下午 6:55 觸發。 注意 如果您已定義較短的 2 小時維護期間,則維護後事件會在 2 小時後觸發,且如果更新安裝在規定的 2 小時時限前完成 (例如 1 小時 50 分鐘),則會立即啟動後置事件。 |
建議您注意下列事項:
- 如果您要建立新的排程,或編輯前置事件的現有排程,則至少必須在前置事件的維護期間 (在上例中為下午 3:00) 開始前的 40 分鐘執行,否則會導致自動取消目前排定的執行。
- 從指令碼或程式碼叫用取消 API 會取消排程執行,而不是整個排程。
- 您可以在選擇的事件處理常式中檢查前置和後置事件的執行狀態。
下一步
- 若要了解如何建立前置和後置事件,請參閱前置和後置維護設定事件。
- 若要了解如何設定前置和後置事件或取消排程執行,請參閱前置和後置事件維護設定。
- 若要了解如何使用維護前和維護後事件,透過 Webhook 來開啟和關閉 VM,請參閱這裡。
- 若要了解如何使用維護前和維護後事件,透過 Azure Functions 來開啟和關閉 VM,請參閱這裡。