기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
오토 스케일링 정책 권장 사항 가져오기
Amazon SageMaker Inference Recommender를 사용하면 예상 트래픽 패턴에 따라 SageMaker 엔드포인트의 자동 크기 조정 정책에 대한 권장 사항을 얻을 수 있습니다. 추론 추천 작업을 이미 완료한 경우, 작업 세부정보를 입력하여 엔드포인트에 적용할 수 있는 오토 스케일링 정책에 대한 권장 사항을 가져올 수 있습니다.
Inference Recommender는 각 지표에 대해 서로 다른 값을 벤치마킹하여 엔드포인트에 적합한 오토 스케일링 구성을 결정합니다. 오토 스케일링 권장 사항은 추론 권장 작업에 정의된 각 지표에 대해 권장되는 오토 스케일링 정책을 반환합니다. 정책을 저장하고 PutScalingPolicy 를 사용하여 엔드포인트에 적용할 수 있습니다API.
시작하려면 다음 필수 조건을 확인하세요.
사전 조건
시작하기 전에 추론 권장 작업을 정상적으로 완료해야 합니다. 다음 섹션에서는 추론 권장 사항 ID 또는 추론 권장 사항 작업 중에 벤치마킹된 SageMaker 엔드포인트의 이름을 제공할 수 있습니다.
추천 작업 ID 또는 엔드포인트 이름을 검색하려면 SageMaker 콘솔에서 추론 추천 작업의 세부 정보를 보거나 DescribeInferenceRecommendationsJob 에서 반환한 RecommendationId
또는 EndpointName
필드를 사용할 수 있습니다API.
오토 스케일링 구성 권장 사항 생성하기
오토 스케일링 권장 정책을 생성하려면 AWS SDK for Python (Boto3)을(를) 사용하면 됩니다.
다음 예제에서는 GetScalingConfigurationRecommendation 의 필드를 보여줍니다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
} }
요청 제출 후, 개별 지표에 정의된 오토 스케일링 정책이 포함된 응답을 수신하게 됩니다. 응답 해석에 대한 정보는 다음 섹션에서 확인하세요.
오토 스케일링 구성 권장 사항 결과를 확인하세요.
다음 예제는 GetScalingConfigurationRecommendation 의 응답을 보여줍니다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 때 PutScalingPolicy 에 지정해야 하는 값을 반환합니다API. 여기에는 권장되는 최소 및 최대 용량 값, 권장되는 스케일 인 및 스케일 아웃 휴지 시간, ScalingPolicies
객체(개별 지표에 지정해야 하는 권장되는 TargetValue
포함)이 포함됩니다.