无法为 SageMaker 端点定义 Auto Scaling

Unable to Define Auto Scaling for SageMaker Endpoint

我已经使用 Docker 容器部署了一个 AWS 端点(我遵循了 this)。

一切正常,但现在我需要将其投入生产并定义自动缩放策略。

我尝试了两件事:

  1. AWS 控制台但是自动缩放按钮是灰色的 出。

  2. 描述的方法here。我的端点名称 是 EmbeddingEndpoint,我的变体名称是 SimpleVariant。所以我的 最后的命令是

aws application-autoscaling put-scaling-policy \
--policy-name scalable_policy_for_embedding \
--policy-type TargetTrackingScaling \
--resource-id endpoint/EmbeddingEndpoint/variant/SimpleVariant \
--service-namespace sagemaker \
--scalable-dimension sagemaker:variant:DesiredInstanceCount \
--target-tracking-scaling-policy-configuration file://policy_config.json

但我得到了这个结果:

An error occurred (ObjectNotFoundException) when calling the PutScalingPolicy operation: 
No scalable target registered for service namespace: sagemaker, resource ID: 
endpoint/EmbeddingEndpoint/variant/SimpleVariant, scalable dimension: 
sagemaker:variant:DesiredInstanceCount

有没有人有其他的解决办法,还是我没有设置好变量? 提前致谢!

您的 sagemaker 服务命名空间没有任何已注册的缩放目标。你需要先运行register-scalable-target然后运行宁put-scaling-policy.

aws application-autoscaling register-scalable-target \
    --service-namespace sagemaker \
    --scalable-dimension sagemaker:variant:DesiredInstanceCount \
    --resource-id endpoint/EmbeddingEndpoint/variant/SimpleVariant