关于前置事件和后置事件

适用于:✔️ Windows VM ✔️ Linux VM ✔️ 本地环境 ✔️ 已启用 Azure Arc 的服务器。

借助 Azure 更新管理器中的前期事件和后期事件,可以在计划性维护配置前后自动执行某些任务。 有关如何创建计划维护配置的详细信息,请参阅使用 Azure 门户和 Azure Policy 计划计算机的定期更新。 例如,使用前置事件和后置事件,你可以将以下任务作为计划的一部分在计算机上执行。 以下列表非详尽列表,你可以根据需要创建前置事件和后置事件。

示例任务

下面是你可以定义前置事件和后置事件的场景:

场景 描述
打开计算机 打开计算机以应用更新。
创建快照 用于恢复数据的磁盘快照。
通知电子邮件 在触发修补之前发送通知警报。
停止服务 停止网关服务、NPExServices、SQL 服务等服务。

使用前置和后置事件安排执行顺序

对于给定的计划,你可以包含前置事件、后置事件或同时包含两者。 此外,还可以具有多个前置事件和/或后置事件。 具有前置事件和后置事件的计划的执行顺序如下:

  1. 前置事件 - 在计划维护时段开始前运行的任务。 例如 - 在修补之前将计算机开机。

  2. 取消 - 在此步骤中,您可以发起取消计划运行。 在某些情况下,你可能会选择取消计划运行,例如前置事件失败,或者前置事件未执行完成。

    注意

    你必须将取消作为前置事件的一部分启动;Azure 更新管理器或维护配置不会自动取消计划。 如果无法取消,计划运行将继续在用户定义的维护时段内安装更新。

  3. 更新安装 - 更新在用户定义的计划维护时段内进行安装。

  4. 后置事件 - 后置事件在更新安装后立即运行。 如果更新安装已完成,且维护时段还有剩余时间,则会在维护时段内发生;如果维护时段已结束,则会在维护时段外发生。 例如:在修补完成后关闭 VM。

    注意

    在 Azure 更新管理器中,前置事件在维护时段外运行,后置事件可能在维护时段外运行。 你必须计划在计算机上完成计划执行所需的此额外时间。

  5. 计划状态 - 计划运行的成功或失败状态仅指作为计划的一部分在计算机上执行的更新安装。 计划运行状态不包括前置事件和后置事件状态。 如果前置事件失败,并且你调用了取消 API,则计划运行状态显示为“已取消”。

    Azure 更新管理器使用事件网格在计划的维护配置上创建和管理前置事件和后置事件。 在事件网格中,可以从事件处理程序(如 Azure Webhook、Azure Functions 等)中进行选择,以触发前和发布活动。

    屏幕截图显示了具有前置事件和后置事件的计划的执行顺序。

    注意

    如果你在 Azure 自动化更新管理的前置和后置事件中使用 Runbook,并计划在 Azure 更新管理器中重复使用它们,我们建议你使用与自动化 Runbook 关联的 Azure Webhook。 了解详细信息

前后事件计划时间线

显示包含前置和后置的计划时间线的屏幕截图。

建议你浏览下表,了解计划的前置事件和后置事件的时间线。

例如,如果维护计划设置为从下午 3:00 开始,来宾维护范围的维护时段为 3 小时 55 分钟。 此计划任务包含一个前置事件和一个后置事件,详情如下:

时间 详细信息
下午 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 分钟的维护时段内完成更新的安装。
安装完更新后,post 事件会在下午 6:55 触发。
注意 如果定义了 2 小时的较短维护时段,则后维护事件将在 2 小时后触发,如果更新安装在规定的 2 小时(即 1 小时 50 分钟)之前完成,则发布事件将立即启动。

建议注意以下事项:

  • 如果是创建具有前置事件的新计划或编辑具有前置事件的现有计划,则在维护时段开始(上述示例中的下午 3:00)之前至少需要有 40 分钟用于运行前置事件,否则将导致当前计划的运行自动取消。
  • 从脚本或代码调用取消 API 会取消计划运行,而不是取消整个计划。
  • 可以在你选择的事件处理程序中检查前置事件和后置事件运行的状态。

后续步骤