

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

# 在生产过程中更新模型的部署护栏
<a name="deployment-guardrails"></a>

部署护栏是 Amazon A SageMaker I Inference 中的一组模型部署选项，用于在生产环境中更新您的机器学习模型。使用完全托管式部署选项，您可以在生产环境中控制从当前模型切换到新模型的过程。 blue/green 部署中的流量转移模式（例如金丝雀和线性）可让您在更新过程中精细控制从当前模型到新模型的流量转移过程。此外还有内置的安全措施，例如自动回滚，可协助您及早发现问题，并在问题对生产造成重大影响之前自动采取纠正措施。

部署防护机制具有以下优势：
+ **在更新生产环境时确保部署的安全。**对生产环境的回归更新可能会导致计划外停机和业务影响，例如模型延迟增加和高错误率。部署防护机制提供了最佳实践和内置操作安全防护机制，从而协助您降低这些风险。
+ **完全托管的部署。** SageMaker AI 负责设置和协调这些部署，并将它们与端点更新机制集成。您无需构建和维护编排、监控或回滚机制。您可以利用 SageMaker AI 来设置和协调这些部署，并专注于在应用程序中利用 ML。
+ **可见性。**您可以通过 [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API 或 Amazon CloudWatch Events（适用于[支持的终端节点](deployment-guardrails-exclusions.md)）跟踪部署进度。要详细了解 SageMaker AI 中的事件，请参阅中的端点部署状态更改部分[亚马逊 A SageMaker I 发送给亚马逊的事件 EventBridge](automating-sagemaker-with-eventbridge.md)。请注意，如果您的终端节点使用[排除项](deployment-guardrails-exclusions.md)页面中的任何功能，则无法使用 CloudWatch 事件。

**注意**  
部署防护机制仅适用于 [异步推理](async-inference.md) 和 [Real-time 推断](realtime-endpoints.md) 端点类型。

## 如何开始
<a name="deployment-guardrails-get-started"></a>

我们支持两种类型的部署来更新生产中的模型： blue/green 部署和滚动部署。
+ [Blue/Green 部署](deployment-guardrails-blue-green.md)：通过更新，您可以将流量从旧舰队（蓝色舰队）转移到新舰队（绿色舰队）。 Blue/green 部署提供[多种流量转移模式](https://docs.aws.amazon.com/sagemaker/latest/dg/deployment-guardrails-blue-green.html)。流量转移模式是一种配置，用于指定 SageMaker AI 如何将终端节点流量路由到包含您的更新的新队列。以下流量转移模式为您提供了对端点更新过程的不同级别的控制：
  + [使用一次性全部流量转移](deployment-guardrails-blue-green-all-at-once.md)将您的所有端点流量一次性从蓝色实例集转移到绿色实例集。流量转移到绿色车队后，您预先指定的 Amazon CloudWatch 警报将开始在设定的时间（*烘焙期）内*监控绿色车队。如果在烘焙期间没有警报跳动， SageMaker AI 就会终止蓝色舰队。
  + [使用金丝雀流量转移](deployment-guardrails-blue-green-canary.md)将您的一小部分流量（*金丝雀*）转移到绿色实例集，并在烘焙期内对其进行监控。如果金丝雀成功使用绿色舰队，那么在终止蓝色舰队之前， SageMaker 人工智能会将其余流量从蓝色舰队转移到绿色舰队。
  + [使用线性流量转移](deployment-guardrails-blue-green-linear.md)提供更高的自定义程度，可以自定义流量转移步骤数以及每个步骤中转移的流量百分比。金丝雀转移模式可以分两步转移流量，而线性转移模式则进一步扩展为 *n* 个线性间隔的步骤。
+ [使用滚动部署](deployment-guardrails-rolling.md)：当 SageMaker AI 以增量方式配置容量并将流量按您指定的批量大小逐步转移到新队列时，您可以更新您的终端节点。新队列上的实例将使用新的部署配置进行更新，如果在烘焙期间没有 CloudWatch 警报跳动， SageMaker AI 就会清理旧队列上的实例。使用此选项，您可以精细控制每个步骤中转移的实例数量或容量百分比。

您可以通过和 [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html) SageMaker API 和 AWS Command Line Interface 命令创建和管理您的部署。[UpdateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateEndpoint.html)有关如何设置部署的更多详细信息，请参阅各个部署页面。请注意，如果您的端点使用[排除项](deployment-guardrails-exclusions.md)页面中列出的任何功能，则无法使用部署防护机制。

要按照演示如何使用部署防护机制的指导性示例操作，请参阅针对金丝雀和线性流量转移模式的 [Jupyter 笔记本](https://github.com/aws/amazon-sagemaker-examples/tree/master/sagemaker-inference-deployment-guardrails)示例。