

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# スケーリングポリシーを適用する
<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-endpoint` エンドポイントで実行されている `my-variant` という名前のバリアントに `my-scaling-policy` という名前のターゲット追跡スケーリングポリシーを適用します。`--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 を使用してスケーリングポリシーをバリアントに適用するには、次のパラメータを指定して Application Auto Scaling API アクション [PutScalingPolicy](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html) を使用します。
+ `PolicyName` - スケーリングポリシーの名前。
+ `ServiceNamespace` - この値は `sagemaker` に設定します。
+ `ResourceID` - バリアントのリソース識別子。このパラメータでは、リソースタイプは `endpoint` で、一意の識別子はバリアントの名前です。例えば、`endpoint/my-endpoint/variant/my-variant`。
+ `ScalableDimension` - この値は `sagemaker:variant:DesiredInstanceCount` に設定します。
+ `PolicyType` - この値は `TargetTrackingScaling` に設定します。
+ `TargetTrackingScalingPolicyConfiguration` - バリアントに使用するターゲット追跡スケーリングポリシー設定。

**Example**  
次の例では、`my-endpoint` エンドポイントで実行されている `my-variant` という名前のバリアントに `my-scaling-policy` という名前のターゲット追跡スケーリングポリシーを適用します。このポリシー設定では、インスタンスあたりの平均呼び出し数が 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"
        }
    }
}
```