

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 套用擴展政策
<a name="endpoint-auto-scaling-add-code-apply"></a>

在註冊您的模型和定義擴展政策之後，請將此擴展政策套用到已註冊的模型。本節說明如何使用 AWS Command Line Interface (AWS CLI) 或 Application Auto Scaling API 套用擴展政策。

**Topics**
+ [套用目標追蹤擴展政策 (AWS CLI)](#endpoint-auto-scaling-add-code-apply-cli)
+ [套用擴展政策 (Application Auto Scaling API)](#endpoint-auto-scaling-add-code-apply-api)

## 套用目標追蹤擴展政策 (AWS CLI)
<a name="endpoint-auto-scaling-add-code-apply-cli"></a>

若要將擴展政策套用至模型，請使用 [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html) AWS CLI 命令搭配下列參數：
+ `--policy-name`—擴展政策的名稱。
+ `--policy-type`—將此值設定為 `TargetTrackingScaling`。
+ `--resource-id`—此變體的資源識別符。針對這項參數，資源的類型為 `endpoint`，而唯一識別符是變體的名稱。例如 `endpoint/{{my-endpoint}}/variant/{{my-variant}}`。
+ `--service-namespace`—將此值設定為 `sagemaker`。
+ `--scalable-dimension`—將此值設定為 `sagemaker:variant:DesiredInstanceCount`。
+ `--target-tracking-scaling-policy-configuration`—要用於模型的目標追蹤擴展政策組態。

**Example**  
下列的範例將名為 `{{my-scaling-policy}}` 的目標追蹤擴展政策套用到在 `{{my-endpoint}}` 端點上執行且名為 `{{my-variant}}` 的變體。請針對 `--target-tracking-scaling-policy-configuration` 選項，指定您先前建立的 `config.json` 檔案。  

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

## 套用擴展政策 (Application Auto Scaling API)
<a name="endpoint-auto-scaling-add-code-apply-api"></a>

若要使用 Application Auto Scaling API 將擴展政策套用到變體，請使用 [PutScalingPolicy](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html) Application Auto Scaling API 動作搭配下列參數：
+ `PolicyName`—擴展政策的名稱。
+ `ServiceNamespace`—將此值設定為 `sagemaker`。
+ `ResourceID`—此變體的資源識別符。針對這項參數，資源的類型為 `endpoint`，而唯一識別符是變體的名稱。例如 `endpoint/{{my-endpoint}}/variant/{{my-variant}}`。
+ `ScalableDimension`—將此值設定為 `sagemaker:variant:DesiredInstanceCount`。
+ `PolicyType`—將此值設定為 `TargetTrackingScaling`。
+ `TargetTrackingScalingPolicyConfiguration`—要用於變體的目標追蹤擴展政策組態。

**Example**  
下列的範例將名為 `{{my-scaling-policy}}` 的目標追蹤擴展政策套用到在 `{{my-endpoint}}` 端點上執行且名為 `{{my-variant}}` 的變體。政策組態會將每個執行個體的平均調用保持在 70。  

```
POST / HTTP/1.1
Host: application-autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
X-Amz-Target: AnyScaleFrontendService.
X-Amz-Date: 20230506T182145Z
User-Agent: aws-cli/2.0.0 Python/3.7.5 Windows/10 botocore/2.0.0dev4
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS

{
    "PolicyName": "{{my-scaling-policy}}",
    "ServiceNamespace": "sagemaker",
    "ResourceId": "endpoint/{{my-endpoint}}/variant/{{my-variant}}",
    "ScalableDimension": "sagemaker:variant:DesiredInstanceCount",
    "PolicyType": "TargetTrackingScaling",
    "TargetTrackingScalingPolicyConfiguration": {
        "TargetValue": {{70.0}},
        "PredefinedMetricSpecification":
        {
            "PredefinedMetricType": "SageMakerVariantInvocationsPerInstance"
        }
    }
}
```