

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 오토 스케일링 정책 권장 사항 가져오기
<a name="inference-recommender-autoscaling"></a>

Amazon SageMaker Inference Recommender로 예상 트래픽 패턴에 따라 SageMaker AI 엔드포인트의 오토 스케일링 정책에 대한 권장 사항을 가져올 수 있습니다. 추론 추천 작업을 이미 완료한 경우, 작업 세부정보를 입력하여 엔드포인트에 적용할 수 있는 오토 스케일링 정책에 대한 권장 사항을 가져올 수 있습니다.

Inference Recommender는 각 지표에 대해 서로 다른 값을 벤치마킹하여 엔드포인트에 적합한 오토 스케일링 구성을 결정합니다. 오토 스케일링 권장 사항은 추론 권장 작업에 정의된 각 지표에 대해 권장되는 오토 스케일링 정책을 반환합니다. [PutScalingPolicy](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html) API로 정책을 저장하고 엔드포인트에 적용할 수 있습니다.

시작하려면 다음 필수 조건을 확인하세요.

## 사전 조건
<a name="inference-recommender-autoscaling-prereqs"></a>

시작하기 전에 추론 권장 작업을 정상적으로 완료해야 합니다. 다음 섹션에서는 추론 권장 사항 ID 또는 추론 권장 작업 중에 벤치마크된 SageMaker AI 엔드포인트의 이름을 입력할 수 있습니다.

권장 작업 ID나 엔드포인트 이름을 검색하려면, SageMaker AI 콘솔에서 추론 권장 작업 세부정보를 확인하거나 `RecommendationId` 또는 `EndpointName` 필드([DescribeInferenceRecommendationsJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeInferenceRecommendationsJob.html) API에서 반환)를 사용하면 됩니다.

## 오토 스케일링 구성 권장 사항 생성하기
<a name="inference-recommender-autoscaling-create"></a>

오토 스케일링 권장 정책을 생성하려면 AWS SDK for Python (Boto3)을(를) 사용하면 됩니다.

다음 예제에서는 [GetScalingConfigurationRecommendation](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_GetScalingConfigurationRecommendation.html) API 필드를 볼 수 있습니다. 다음 필드를 사용하여 API를 호출합니다.
+ `InferenceRecommendationsJobName`- 추론 권장 작업의 이름을 입력합니다.
+ `RecommendationId`- 권장 작업에서 추론 권장 사항 ID를 입력합니다. `EndpointName` 필드를 지정한 경우 선택 사항입니다.
+ `EndpointName`- 추론 권장 작업 중에 벤치마킹된 엔드포인트의 이름을 입력합니다. `RecommendationId` 필드를 지정한 경우 선택 사항입니다.
+ `TargetCpuUtilizationPerCore`- (선택 사항) 오토 스케일링 전 엔드포인트 인스턴스에서 사용하려는 사용률을 백분율 값으로 입력합니다. 이 필드를 지정하지 않으면 기본값 50%가 적용됩니다.
+ `ScalingPolicyObjective`- (선택 사항) 예상 트래픽 패턴을 지정하는 객체.
  + `MinInvocationsPerMinute`- (선택 사항) 엔드포인트에 대한 분당 최소 예상 요청 수.
  + `MaxInvocationsPerMinute`- (선택 사항) 엔드포인트에 대한 분당 최대 예상 요청 수.

```
{
    "InferenceRecommendationsJobName": "{{string}}", // Required
    "RecommendationId": "{{string}}", // Optional, provide one of RecommendationId or EndpointName
    "EndpointName": "{{string}}", // Optional, provide one of RecommendationId or EndpointName
    "TargetCpuUtilizationPerCore": {{number}}, // Optional
    "ScalingPolicyObjective": { // Optional
        "MinInvocationsPerMinute": {{number}},
        "MaxInvocationsPerMinute": {{number}}
    }
}
```

요청 제출 후, 개별 지표에 정의된 오토 스케일링 정책이 포함된 응답을 수신하게 됩니다. 응답 해석에 대한 정보는 다음 섹션에서 확인하세요.

## 오토 스케일링 구성 권장 사항 결과를 확인하세요.
<a name="inference-recommender-autoscaling-review"></a>

다음 예제에서는 [GetScalingConfigurationRecommendation](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_GetScalingConfigurationRecommendation.html) API 응답을 볼 수 있습니다.

```
{
    "InferenceRecommendationsJobName": "string", 
    "RecommendationId": "string", // One of RecommendationId or EndpointName is shown
    "EndpointName": "string", 
    "TargetUtilizationPercentage": Integer,
    "ScalingPolicyObjective": { 
        "MinInvocationsPerMinute": Integer, 
        "MaxInvocationsPerMinute": Integer
    },
    "Metric": {
        "ModelLatency": Integer,
        "InvocationsPerInstance": Integer
    },
    "DynamicScalingConfiguration": {
        "MinCapacity": number,
        "MaxCapacity": number, 
        "ScaleInCooldown": number,
        "ScaleOutCooldown": number,
        "ScalingPolicies": [
            {
                "TargetTracking": {
                    "MetricSpecification": {
                        "Predefined" {
                            "PredefinedMetricType": "string"
                         },
                        "Customized": {
                            "MetricName": "string",
                            "Namespace": "string",
                            "Statistic": "string"
                         }
                    },
                    "TargetValue": Double
                } 
            }
        ]
    }
}
```

`InferenceRecommendationsJobName`, `RecommendationID` 또는 `EndpointName`, `TargetCpuUtilizationPerCore` 및 `ScalingPolicyObjective` 객체 필드가 초기 요청에서 복사됩니다.

`Metric` 객체에는 인스턴스 사용률이 `TargetCpuUtilizationPerCore` 값과 같을 때 개별 지표에 대한 값 계산과 함께 추론 권장 작업에서 벤치마킹된 지표가 나열됩니다. 이는 권장 오토 스케일링 정책에 따라 엔드포인트의 스케일 인 및 스케일 아웃 시 성능 지표를 예측하는 데 유용합니다. 예를 들어, 추론 권장 작업에서 인스턴스 사용률이 50% 이고 `InvocationsPerInstance` 값이 원래 `4` 값이었다고 가정해 봅시다. 오토 스케일링 권장 사항 요청에서 `TargetCpuUtilizationPerCore` 값을 100%로 지정할 경우, 응답에서 반환되는 `InvocationsPerInstance` 지표 값은 `2`이 되는데, 그 이유는 인스턴스 사용률이 두 배 할당될 것으로 예상했기 때문입니다.

`DynamicScalingConfiguration` 객체는 [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html#autoscaling-PutScalingPolicy-request-TargetTrackingScalingPolicyConfiguration)에서 지정해야 하는 값을 반환합니다([PutScalingPolicy](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html) API 호출 시). 여기에는 권장되는 최소 및 최대 용량 값, 권장되는 스케일 인 및 스케일 아웃 휴지 시간, `ScalingPolicies` 객체(개별 지표에 지정해야 하는 권장되는 `TargetValue` 포함)이 포함됩니다.