View a markdown version of this page

Blue/Green 部署 - 亚马逊 SageMaker AI

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Blue/Green 部署

当您更新终端节点时,Amazon SageMaker AI 会自动使用 blue/green 部署来最大限度地提高终端节点的可用性。在 blue/green 部署中, SageMaker AI 会配置一支包含更新的新舰队(绿色舰队)。然后, SageMaker 人工智能将流量从旧舰队(蓝色舰队)转移到绿色舰队。一旦绿色舰队在设定的评估期(称为烘焙期)内平稳运行, SageMaker 人工智能就会终止蓝色舰队。借助 blue/green 部署中的其他功能,您可以利用流量转移模式和自动回滚监控来保护您的端点免受重大生产影响。

以下列表描述了 A SageMaker I 中 blue/green 部署的主要功能:

  • 流量转移模式。利用针对部署的流量转移模式防护机制,您可以控制在蓝色实例集和绿色实例集之间的流量分配以及流量转移步骤数。此功能让您能够以渐进方式评估绿色实例集的性能,而无需进行 100% 的流量转移。

  • 烘焙期。烘焙期是设定用于监控绿色实例集的一段时间,在该期间完成后再进入下一个部署阶段。如果在任意烘焙期内触发了任何预先指定的警报,则所有端点流量都会回滚到蓝色实例集。烘焙期可以在最终完成流量的彻底转移之前,协助您确信更新没有问题。

  • Auto-rollbacks。 您可以指定 A SageMaker I 用来监控绿色舰队的 Amazon CloudWatch 警报。如果更新后的代码出现问题触发任何警报, SageMaker AI 会启动自动回滚到蓝色舰队,以保持可用性,从而最大限度地降低风险。

流量转移模式

blue/green 部署中的各种流量转移模式使您可以更精细地控制蓝色舰队和绿色车队之间的流量切换。可用于 blue/green 部署的流量转移模式包括一次性、金丝雀模式和线性模式。下表显示了各个选项的比较。

重要

对于涉及多阶段流量转移或烘焙期的 blue/green 部署,无论队列的流量如何,您都需要在更新期间为两个队列付费。这与 blue/green 部署形成鲜明对比的是,所有流量同时转移并且没有烘焙期,在更新过程中,您只需要为一个队列付费。

Name 这是什么? 优点 缺点 建议

一次性全部

在一个步骤中将所有流量转移到新的实例集。

最大限度地缩短更新整体持续时间。

回归更新会影响 100% 的流量。

使用此选项可以将更新时间和成本降至最低。

金丝雀

流量转移分两个步骤。第一个(金丝雀)步骤转移了一小部分流量,然后是第二步,这将转移其余流量。

将回归更新的影响范围限制为仅限于金丝雀实例集。

两个实例集在整个部署中都并行运行。

使用此选项,可在尽可能减少回归更新的影响范围,与尽可能减少两个实例集运行时间之间取得平衡。

线性

按照预先指定的等距步骤数,转移固定比例的流量。

通过多个步骤来转移流量,最大限度地降低回归更新的风险。

更新持续时间和成本与步骤数成正比。

使用此选项可以将部署分散到多个步骤,从而最大限度地降低风险。

开始使用

一旦您指定了所需的部署配置, SageMaker AI 就会为您处理配置新实例、终止旧实例和转移流量。您可以通过现有的、CreateEndpoint SageMaker API UpdateEndpoint和 AWS Command Line Interface 命令创建和管理您的部署。请注意,如果您的端点使用排除项页面中列出的任何功能,则无法使用部署防护机制。有关如何设置部署的更多详细信息,请参阅各个部署页面:

要查看演示如何使用部署防护机制的指导性示例,请参阅有关金丝雀和线性流量转移模式的 Jupyter 笔记本示例。