你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

虚拟机规模集的升级策略

虚拟机规模集的升级策略确定了如何使用最新的规模集模型将虚拟机更新到最新状态。

升级策略模式

适用于虚拟机规模集的升级策略包括“自动”、“手动”和“滚动”。 所选升级策略可能会影响虚拟机规模集的整体服务运行时间。

此外,在某些情况下,你可能希望对规模集中特定实例的处理方式与其余实例不同。 例如,规模集中的某些实例可能需要执行与规模集其他成员不同的任务。 在这些情况下,实例保护会提供所需控制措施,以在进行升级时防止这些实例与其他实例一起升级。

自动升级策略

注意

自动升级策略仅适用于使用统一业务流程的虚拟机规模集。

使用自动升级策略时,规模集无法保证虚拟机的关闭顺序。 规模集可能会同时关闭所有虚拟机来执行升级。

自动升级策略最适合开发测试方案,因为在此方案下,在对配置和设置进行更改时,你不会关心实例的运行时间。

如果规模集是 Service Fabric 群集的一部分,则“自动”模式是唯一可用的模式。 有关详细信息,请参阅 Service Fabric 应用程序升级

手动升级策略

注意

手动升级策略同时适用于使用统一业务流程的虚拟机规模集和使用灵活业务流程的虚拟机规模集。

适用于使用灵活业务流程的虚拟机规模集的手动升级策略目前为处于预览状态。 需同意补充使用条款才可使用预览版。 在正式版 (GA) 推出之前,这些功能的某些方面可能会有所更改。

使用手动升级策略,可以选择何时更新规模集实例。 当规模集模型发生更改时,现有虚拟机不会自动发生任何操作。 已添加到规模集的新实例将会使用可用的最新模型。

手动升级策略最适用于需要更好地控制实例更新时间和方式的工作负载。

滚动升级策略

注意

滚动升级策略仅适用于使用统一业务流程的虚拟机规模集。

使用滚动升级策略,规模集将分批执行更新。 还可以通过设置(如批大小、最大正常百分比、优先处理不正常实例以及跨可用性区域启用升级等)更好地控制升级。

滚动升级策略最适合需要一定数量实例始终可用的生产工作负载。 滚动升级是将实例升级到最新模型且不影响可用性及运行时间的最安全方法。

使用滚动升级策略时,规模集还必须具有运行状况探测或使用应用程序运行状况扩展来监视应用程序运行状况。

有关详细信息,请参阅配置滚动升级策略

触发升级的事件

对规模集所做的更改可能会影响实例的可用性。 影响虚拟机规模集模型的任何更改都可以触发升级,并且这些升级将基于所使用的升级策略应用于规模集中的实例。 如果在特定实例上启用了实例保护,则为例外。

一些升级需要重启虚拟机,而另一些升级则无需中断规模集实例即可完成。 需要重启、重置映像或重新部署虚拟机实例的更新包括:

  • 密码或 SSH 密钥更新
  • 自定义数据更改
  • 次要 OS 升级
  • 虚拟机大小更改
  • 添加可用性区域
  • 容错域更改
  • 邻近放置组更改

注意

虽然可以在不重启的情况下更改密码和自定义数据,但为了将升级应用于虚拟机实例,必须重置虚拟机的映像。 有关详细信息,请参阅重置虚拟机映像

如果将滚动升级策略与 MaxSurge 一起使用,则对规模集模型结果所做的任何更改都会触发滚动升级。 MaxSurge 是部署所有规模集升级的建议方法,可确保应用程序在整个升级过程中保持可用且运行正常。 有关 MaxSurge 的详细信息,请参阅配置滚动升级策略

后续步骤

了解如何设置虚拟机规模集的升级策略