View a markdown version of this page

서비스 용량 자동 크기 조정 - Amazon SageMaker AI

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

서비스 용량 자동 크기 조정

HyperPod에서 서비스 용량은 두 수준으로 확장됩니다. Ray Serve는 요청 로드와 일치하도록 클러스터 내에서 복제본을 조정하고 관리형 Karpenter는 클러스터 노드를 조정하여 해당 복제본을 보관합니다. 복제본 Autoscaling이 먼저 반응하고 기존 노드가 소진되면 노드 Autoscaling이 용량을 추가합니다.

Ray Serve 복제본 자동 크기 조정

Ray Serve는 요청 로드에 따라 배포의 복제본 수를 조정합니다. 고정된 복제본 수 대신 배포에서 오토 스케일링 구성을 설정합니다.

deployments: - name: Model autoscaling_config: min_replicas: 1 max_replicas: 8 target_ongoing_requests: 5

복제본 Autoscaling이 작업자 포드를 추가 및 제거하려면 클러스터에 대해 Ray Autoscaler를 켜야 합니다. enableInTreeAutoscaling: true RayCluster 사양 또는 rayClusterConfig의에서를 설정합니다RayService.

spec: enableInTreeAutoscaling: true

그렇지 않으면 배포의가 대상 복제본 수를 autoscaling_config 변경하지만 KubeRay는 이를 충족하기 위해 작업자 포드를 생성하지 않습니다.

복제본 Auto Scaling은 클러스터의 현재 노드 용량 내에 유지됩니다. Ray Serve에 노드가 보유할 수 있는 것보다 많은 복제본이 필요한 경우 노드를 사용할 수 있을 때까지 포드는 보류 상태로 유지됩니다.

관리형 Karpenter를 사용한 노드 Autoscaling

HyperPod의 Managed Karpenter는 Ray 포드가 보류 중일 때 노드를 추가하고 유휴 상태일 때 노드를 제거하므로 서비스 용량은 고정 노드 풀 없이 수요를 따릅니다. 스팟 인스턴스는 노드 용량에 대해 지원되므로 중단 방지 서비스 비용이 절감됩니다. 설정 및 구성은 단원을 참조하십시오SageMaker HyperPod EKS에서 오토 스케일링.

둘 다 함께 사용

배포에서 복제본 자동 크기 조정을 설정하고 클러스터에서 노드 자동 크기 조정을 설정합니다. 두 수준은 요청 로드 증가에 응답하는 체인에서 함께 작동합니다.

  1. Ray Serve는 부하 증가를 감지합니다. Autoscaler는 진행 중인 요청이를 초과하는지 관찰target_ongoing_requests하고 다른 복제본을 추가하기로 결정합니다.

  2. KubeRay는 새 작업자 포드를 생성합니다. Ray Serve는 작업자 그룹을 확장하도록 KubeRay에 신호를 보내고 KubeRay는 새 복제본에 대한 포드를 생성합니다.

  3. 용량이 없으면 포드가 보류 상태로 유지됩니다. 기존 노드가 새 포드에 맞지 않으면(GPU 또는 메모리 부족) 포드가 Pending 상태가 됩니다.

  4. Managed Karpenter는 노드를 프로비저닝합니다. HyperPod 관리형 Karpenter는 보류 중인 포드를 감지하고 적절한 인스턴스 유형을 선택한 다음 새 노드를 시작합니다.

  5. 노드가 나타나고 포드가 실행되기 시작합니다. 노드가 준비되고 클러스터에 조인되면 Kubernetes는 보류 중인 포드를 예약합니다. 새 복제본이 모델을 로드하고 요청 제공을 시작합니다.

축소 시 프로세스가 반대로 진행됩니다. Ray Serve는 유휴 복제본을 제거하고, KubeRay는 작업자 포드를 삭제하며, 관리형 Karpenter는 통합 기간 후에 실행 중인 포드가 없는 노드를 종료합니다.