기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
모델에 크기 조정 정책을 추가하기 전에 텍스트 파일에 JSON 블록으로 정책 구성을 저장합니다. AWS Command Line Interface (AWS CLI) 또는 Application Auto Scaling API를 호출할 때 해당 텍스트 파일을 사용합니다. 적절한 CloudWatch 지표를 선택하여 조정을 최적화할 수 있습니다. 그러나 프로덕션에서 사용자 지정 지표를 사용하기 전에 사용자 지정 지표로 오토 스케일링을 테스트해야 합니다.
주제
이 섹션에서는 대상 추적 조정 정책에 대한 정책 구성의 예를 보여줍니다.
사전 정의된 지표 지정(CloudWatch 지표: InvocationsPerInstance)
다음은 인스턴스당 평균 호출을 70으로 유지하는 변형에 대한 대상 추적 정책 구성의 예입니다. 이 구성을 config.json
파일에 저장합니다.
{
"TargetValue": 70.0
,
"PredefinedMetricSpecification":
{
"PredefinedMetricType": "SageMakerVariantInvocationsPerInstance"
}
}
자세한 내용은 Application Auto Scaling API 참조의 TargetTrackingScalingPolicyConfiguration을 참조하세요.
고해상도 사전 정의된 지표 지정(CloudWatch 지표: ConcurrentRequestsPerModel 및 ConcurrentRequestsPerCopy)
다음과 같은 고해상도 CloudWatch 지표를 사용하면 모델이 수신하는 동시 요청의 볼륨에 대한 조정 정책을 설정할 수 있습니다.
- ConcurrentRequestsPerModel
-
모델 컨테이너에서 수신 중인 동시 요청 수입니다.
- ConcurrentRequestsPerCopy
-
추론 구성 요소가 수신 중인 동시 요청 수입니다.
이러한 지표는 컨테이너 내에 대기열에 있는 요청을 포함하여 모델 컨테이너가 처리하는 동시 요청 수를 추적합니다. 추론 응답을 토큰 스트림으로 보내는 모델의 경우, 이러한 지표는 모델이 요청에 대한 마지막 토큰을 전송할 때까지 각 요청을 추적합니다.
고해상도 지표로서 표준 CloudWatch 지표보다 더 자주 데이터를 내보냅니다. 지표와 같은 표준 InvocationsPerInstance
지표는 1분에 한 번씩 데이터를 내보냅니다. 그러나 이러한 고해상도 지표는 10초마다 데이터를 내보냅니다. 따라서 모델로의 동시 트래픽이 증가함에 따라 표준 지표보다 훨씬 더 빠르게 확장하여 정책이 반응합니다. 그러나 모델로의 트래픽이 감소하면 표준 지표와 동일한 속도로 정책이 확장됩니다.
다음은 모델당 동시 요청 수가 5개를 초과하는 경우 인스턴스를 추가하는 예제 대상 추적 정책 구성입니다. 이 구성을 config.json
파일에 저장합니다.
{
"TargetValue": 5.0,
"PredefinedMetricSpecification":
{
"PredefinedMetricType": "SageMakerVariantConcurrentRequestsPerModelHighResolution"
}
}
추론 구성 요소를 사용하여 여러 모델을 동일한 엔드포인트에 배포하는 경우 동등한 정책을 생성할 수 있습니다. 이 경우 PredefinedMetricType
를 SageMakerInferenceComponentConcurrentRequestsPerCopyHighResolution
으로 설정합니다.
자세한 내용은 Application Auto Scaling API 참조의 TargetTrackingScalingPolicyConfiguration을 참조하세요.
사용자 지정 지표 정의(CloudWatch 지표: CPUUtilization)
사용자 지정 지표를 사용하여 대상 추적 조정 정책을 생성하려면 지표의 이름, 네임스페이스, 단위, 통계 및 0개 이상의 차원을 지정합니다. 차원은 차원 이름과 차원 값으로 구성됩니다. 용량에 비례하여 변경되는 모든 프로덕션 변형 지표를 사용할 수 있습니다.
다음 예제 구성은 사용자 지정 지표가 있는 대상 추적 크기 조정 정책을 보여줍니다. 정책은 모든 인스턴스에서 평균 CPU 사용률 50%를 기준으로 변형을 크기 조정합니다. 이 구성을 config.json
파일에 저장합니다.
{
"TargetValue": 50.0
,
"CustomizedMetricSpecification":
{
"MetricName": "CPUUtilization
",
"Namespace": "/aws/sagemaker/Endpoints
",
"Dimensions": [
{"Name": "EndpointName", "Value": "my-endpoint" },
{"Name": "VariantName","Value": "my-variant"}
]
,
"Statistic": "Average
",
"Unit": "Percent
"
}
}
자세한 내용은 Application Auto Scaling API 참조의 CustomizedMetricSpecification을 참조하세요.
사용자 지정 지표 정의(CloudWatch 지표: ExplanationsPerInstance)
엔드포인트에 온라인 설명 가능성이 활성화되면, 엔드포인트는 하나의 변형에 대해 인스턴스당 분당 설명되는 수의 평균 레코드를 출력하는 ExplanationsPerInstance
지표를 생성합니다. 레코드를 설명하는 데 사용되는 리소스 사용률은 레코드 예측의 리소스 사용률과 많이 다를 수 있습니다. 온라인 설명 가능성이 활성화된 엔드포인트의 대상 추적 스케일링에는 이 지표를 사용하는 것이 좋습니다.
확장 가능한 대상에 대해 여러 대상 추적 정책을 생성할 수 있습니다. (ExplanationsPerInstance
정책 외에) 사전 정의된 지표 지정(CloudWatch 지표: InvocationsPerInstance) 섹션의 InvocationsPerInstance
정책을 추가하는 것을 고려해 보세요. EnableExplanations
파라미터에 설정된 임계값 때문에 대부분의 간접 호출에서 설명이 반환되지 않는 경우 엔드포인트는 InvocationsPerInstance
정책을 선택할 수 있습니다. 설명이 많은 경우 엔드포인트는 ExplanationsPerInstance
정책을 사용할 수 있습니다.
다음 예제 구성은 사용자 지정 지표가 있는 대상 추적 크기 조정 정책을 보여줍니다. 이 정책은 각 인스턴스에 ExplanationsPerInstance
지표가 20이 되도록 변형 인스턴스의 수를 조정합니다. 이 구성을 config.json
파일에 저장합니다.
{
"TargetValue": 20.0
,
"CustomizedMetricSpecification":
{
"MetricName": "ExplanationsPerInstance
",
"Namespace": "AWS/SageMaker
",
"Dimensions": [
{"Name": "EndpointName", "Value": "my-endpoint" },
{"Name": "VariantName","Value": "my-variant"}
],
"Statistic": "Sum
"
}
}
자세한 내용은 Application Auto Scaling API 참조의 CustomizedMetricSpecification을 참조하세요.
휴지 기간 지정
ScaleOutCooldown
및 ScaleInCooldown
파라미터를 지정하여 대상 추적 조정 정책에서 휴지 기간을 선택적으로 정의할 수 있습니다.
다음은 인스턴스당 평균 호출을 70으로 유지하는 변형에 대한 대상 추적 정책 구성의 예입니다. 정책 구성은 10분(600초)의 스케일 인 휴지 기간과 5분(300초)의 스케일 아웃 휴지 기간을 제공합니다. 이 구성을 config.json
파일에 저장합니다.
{
"TargetValue": 70.0
,
"PredefinedMetricSpecification":
{
"PredefinedMetricType": "SageMakerVariantInvocationsPerInstance"
},
"ScaleInCooldown": 600
,
"ScaleOutCooldown": 300
}
자세한 내용은 Application Auto Scaling API 참조의 TargetTrackingScalingPolicyConfiguration을 참조하세요.