应用扩缩策略 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

应用扩缩策略

注册模型并定义扩展策略后,将扩展策略应用于已注册的模型。要应用扩展策略,您可以使用 Amazon CLI 或 Application Auto Scaling API。

应用扩展策略 (Amazon CLI)

要将扩展策略应用于模型,请使用具有以下参数的 put-scaling-policy Amazon CLI 命令:

  • --policy-name – 扩展策略的名称。

  • --policy-type – 将该值设置为 TargetTrackingScaling

  • --resource-id – 变体的资源标识符。对于该参数,资源类型为 endpoint,唯一标识符为变体的名称。例如 endpoint/MyEndpoint/variant/MyVariant

  • --service-namespace – 将该值设置为 sagemaker

  • --scalable-dimension – 将该值设置为 sagemaker:variant:DesiredInstanceCount

  • --target-tracking-scaling-policy-configuration – 用于模型的目标跟踪扩展策略配置。

以下示例与 Application Auto Scaling 结合使用,将名为 myscalablepolicy 的目标跟踪扩展策略应用于名为 myscalablevariant 的模型(变体)。策略配置保存在一个名为 config.json 的文件中。

aws application-autoscaling put-scaling-policy \ --policy-name myscalablepolicy \ --policy-type TargetTrackingScaling \ --resource-id endpoint/MyEndpoint/variant/MyVariant \ --service-namespace sagemaker \ --scalable-dimension sagemaker:variant:DesiredInstanceCount \ --target-tracking-scaling-policy-configuration file://config.json

应用扩展策略 (Application Auto Scaling API)

要使用 Application Auto Scaling API 将扩展策略应用于某个变体,请使用 PutScalingPolicy Application Auto Scaling API 操作及以下参数:

  • PolicyName – 扩展策略的名称。

  • ServiceNamespace – 将该值设置为 sagemaker

  • ResourceID – 变体的资源标识符。对于该参数,资源类型为 endpoint,唯一标识符为变体的名称。例如,endpoint/MyEndpoint/variant/MyVariant

  • ScalableDimension – 将该值设置为 sagemaker:variant:DesiredInstanceCount

  • PolicyType – 将该值设置为 TargetTrackingScaling

  • TargetTrackingScalingPolicyConfiguration – 用于变体的目标跟踪扩展策略配置。

以下示例使用 Application Auto Scaling,将名为 myscalablepolicy 的目标跟踪扩展策略应用于名为 myscalablevariant 的变体。它基于 SageMakerVariantInvocationsPerInstance 预定义指标使用策略配置。

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity X-Amz-Target: AnyScaleFrontendService. X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "PolicyName": "myscalablepolicy", "ServiceNamespace": "sagemaker", "ResourceId": "endpoint/MyEndpoint/variant/MyVariant", "ScalableDimension": "sagemaker:variant:DesiredInstanceCount", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "SageMakerVariantInvocationsPerInstance" } } }