本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
蓝/绿部署
当您更新终端节点时,Amazon SageMaker 会自动使用蓝/绿部署来最大限度地提高终端节点的可用性。在蓝/绿部署中, SageMaker 使用更新配置新舰队(绿色舰队)。然后, SageMaker 将交通从旧舰队(蓝色舰队)转移到绿色舰队。一旦绿色舰队在设定的评估期(称为烘焙期)内平稳运行,蓝色舰队 SageMaker 就会终止。借助蓝绿部署中的额外功能,您可以利用流量转移模式和自动回滚监控来保护端点,避免造成重大生产影响。
以下列表描述了蓝/绿部署的主要功能: SageMaker
-
流量转移模式。利用针对部署的流量转移模式防护机制,您可以控制在蓝色实例集和绿色实例集之间的流量分配以及流量转移步骤数。此功能让您能够以渐进方式评估绿色实例集的性能,而无需进行 100% 的流量转移。
-
烘焙期。烘焙期是设定用于监控绿色实例集的一段时间,在该期间完成后再进入下一个部署阶段。如果在任意烘焙期内触发了任何预先指定的警报,则所有端点流量都会回滚到蓝色实例集。烘焙期可以在最终完成流量的彻底转移之前,协助您确信更新没有问题。
-
自动回滚。您可以指定用于监控绿色车队的 SageMaker Amazon CloudWatch 警报。如果更新后的代码出现问题触发任何警报,则 SageMaker启动自动回滚到蓝色舰队以保持可用性,从而最大限度地降低风险。
流量转移模式
利用蓝绿部署中的各种流量转移模式,您可以更精细地控制蓝色实例集和绿色实例集之间的流量转移。在蓝绿部署中,可用的流量转移模式包括一次性全部流量转移、金丝雀流量转移和线性流量转移。下表显示了各个选项的比较。
重要
对于涉及多阶段流量转移或烘焙期的蓝绿部署,无论发送到实例集的流量如何,您都需要为更新期间的两个实例集付费。与之对比的是使用一次性全部流量转移且没有烘焙期的蓝绿部署,在此模式下,更新期间您只需为一个实例集付费。
名称 | 这是什么? | 优点 | 缺点 | 建议 |
---|---|---|---|---|
一次性全部 |
在一个步骤中将所有流量转移到新的实例集。 |
最大限度地缩短更新整体持续时间。 |
回归更新会影响 100% 的流量。 |
使用此选项可以将更新时间和成本降至最低。 |
金丝雀 |
流量转移分两个步骤。第一个(金丝雀)步骤转移了一小部分流量,然后是第二步,这将转移其余流量。 |
将回归更新的影响范围限制为仅限于金丝雀实例集。 |
两个实例集在整个部署中都并行运行。 |
使用此选项,可在尽可能减少回归更新的影响范围,与尽可能减少两个实例集运行时间之间取得平衡。 |
线性 |
按照预先指定的等距步骤数,转移固定比例的流量。 |
通过多个步骤来转移流量,最大限度地降低回归更新的风险。 |
更新持续时间和成本与步骤数成正比。 |
使用此选项可以将部署分散到多个步骤,从而最大限度地降低风险。 |
开始使用
指定所需的部署配置后,即可为您 SageMaker 处理配置新实例、终止旧实例和转移流量。您可以通过现有的、CreateEndpoint SageMaker API UpdateEndpoint和 AWS Command Line Interface 命令创建和管理您的部署。请注意,如果您的端点使用排除项页面中列出的任何功能,则无法使用部署防护机制。有关如何设置部署的更多详细信息,请参阅各个部署页面:
要查看演示如何使用部署防护机制的指导性示例,请参阅有关金丝雀和线性流量转移模式的 Jupyter 笔记本