Spot 배치 점수(Spot placement score)의 동작 방식

Spot 배치 점수(Spot placement score)의 동작 방식

Spot 배치 점수 기능을 사용하면 먼저 Spot Instances의 컴퓨팅 요구 사항을 지정한 다음, Amazon EC2가 Spot 요청이 성공할 가능성이 높은 상위 10개 리전 또는 가용 영역을 반환해요. 이 절에서 단계별로 살펴볼게요.

출처: 문서

본문

Spot 배치 점수 기능을 사용하면 먼저 Spot Instances의 컴퓨팅 요구 사항을 지정한 다음, Amazon EC2가 Spot 요청이 성공할 가능성이 높은 상위 10개 리전 또는 가용 영역을 반환해요. 각 리전 또는 가용 영역은 1에서 10까지의 척도로 점수가 매겨져요. 10은 Spot 요청이 성공할 가능성이 매우 높음을, 1은 성공할 가능성이 낮음을 나타내요. 구역(zonal) 결과에는 가용 영역과 Local Zones가 포함될 수 있어요.

Spot 배치 점수 기능을 사용하려면 다음 단계를 따르세요.

1단계: Spot 요구 사항 지정

먼저 원하는 대상 Spot 용량과 컴퓨팅 요구 사항을 다음과 같이 지정합니다.

  • 대상 Spot 용량을 지정하고, 선택적으로 대상 용량 단위를 지정합니다. 원하는 대상 Spot 용량을 인스턴스 수 또는 vCPU 수, 또는 MiB 단위의 메모리 양으로 지정할 수 있어요. 대상 용량을 vCPU 수 또는 메모리 양으로 지정하려면 대상 용량 단위를 vcpu 또는 memory-mib로 지정해야 해요. 그렇지 않으면 기본적으로 인스턴스 수가 돼요.

    대상 용량을 vCPU 수 또는 메모리 양으로 지정하면 총 용량을 셀 때 이러한 단위를 사용할 수 있어요. 예를 들어 서로 다른 크기의 인스턴스 조합을 사용하려면 대상 용량을 총 vCPU 수로 지정할 수 있어요. 그러면 Spot 배치 점수 기능이 요청의 각 인스턴스 유형을 그 vCPU 수로 고려하고, 대상 용량을 합산할 때 총 인스턴스 수가 아니라 총 vCPU 수를 세요.

    예를 들어 총 대상 용량 30 vCPUs를 지정하고 인스턴스 유형 목록이 c5.xlarge(vCPU 4개), m5.2xlarge(vCPU 8개), r5.large(vCPU 2개)로 구성되어 있다고 가정해 봐요. 총 30 vCPUs를 달성하려면 c5.xlarge 2개(24 vCPUs), m5.2xlarge 2개(28 vCPUs), r5.large 3개(3*2 vCPUs)의 조합을 얻을 수 있어요.

  • 인스턴스 유형이나 인스턴스 속성을 지정합니다. 사용할 인스턴스 유형을 지정하거나, 컴퓨팅 요구 사항에 필요한 인스턴스 속성을 지정한 다음 Amazon EC2가 그 속성을 가진 인스턴스 유형을 식별하게 할 수 있어요. 이를 속성 기반 인스턴스 유형 선택(attribute-based instance type selection)이라고 해요.

    같은 Spot 배치 점수 요청에서 인스턴스 유형과 인스턴스 속성을 모두 지정할 수는 없어요.

    인스턴스 유형을 지정한다면 최소 3개의 서로 다른 인스턴스 유형을 지정해야 해요. 그렇지 않으면 Amazon EC2가 낮은 Spot 배치 점수를 반환해요. 마찬가지로 인스턴스 속성을 지정한다면 그 속성이 최소 3개의 서로 다른 인스턴스 유형으로 해석되어야 해요.

    Spot 요구 사항을 지정하는 다양한 방법의 예시는 Example configurations를 참고하세요.

2단계: Spot 배치 점수 응답 필터링

Amazon EC2는 각 리전 또는 가용 영역에 대한 Spot 배치 점수를 계산하고, Spot 요청이 성공할 가능성이 높은 상위 10개 리전 또는 상위 10개 가용 영역을 반환해요. 기본값은 점수가 매겨진 리전 목록을 반환하는 것이에요. 모든 Spot 용량을 단일 가용 영역에 시작할 계획이라면 점수가 매겨진 가용 영역 목록을 요청하는 것이 유용해요.

응답에 반환될 리전을 좁히기 위해 리전 필터를 지정할 수 있어요.

리전 필터와 점수가 매겨진 가용 영역 요청을 결합할 수 있어요. 이렇게 하면 점수가 매겨진 가용 영역이 필터링한 리전으로 한정돼요. 리전에서 가장 높은 점수의 가용 영역을 찾으려면 해당 리전만 지정하면, 그 리전의 모든 가용 영역의 점수가 매겨진 목록이 응답으로 반환돼요.

기본적으로 Spot 배치 점수는 Local Zones를 무시해요. 포함하려면 IncludeLocalZones를 true로 설정하세요. 리전 점수의 경우 Local Zone 용량이 상위 리전의 점수에 포함돼요. 구역 점수의 경우 응답에 개별 Local Zone 점수가 포함될 수 있어요.

3단계: 권장 사항 검토

각 리전 또는 가용 영역의 Spot 배치 점수는 대상 용량, 인스턴스 유형 구성, 현재 Spot 사용 추세, 요청 시점을 기준으로 계산돼요. Spot 용량은 끊임없이 변동하므로 같은 Spot 배치 점수 요청이라도 다른 시점에 계산하면 다른 점수가 나올 수 있어요.

리전과 가용 영역은 1에서 10까지의 척도로 점수가 매겨져요. 점수 10은 Spot 요청이 성공할 가능성이 매우 높지만 보장되지는 않음을, 점수 1은 Spot 요청이 전혀 성공할 가능성이 없음을 나타내요. 다른 리전이나 가용 영역에 대해 같은 점수가 반환될 수 있어요.

낮은 점수가 반환되면 컴퓨팅 요구 사항을 편집하고 점수를 다시 계산할 수 있어요. 하루 중 다른 시점에 같은 컴퓨팅 요구 사항에 대한 Spot 배치 점수 권장 사항을 요청할 수도 있어요.

4단계: 권장 사항 사용

Spot 배치 점수는 Spot 요청 구성이 Spot 배치 점수 구성(대상 용량, 대상 용량 단위, 인스턴스 유형 또는 인스턴스 속성)과 정확히 같고 capacity-optimized 할당 전략을 사용하도록 구성된 경우에만 관련이 있어요. 그렇지 않으면 사용 가능한 Spot 용량을 얻을 가능성이 점수와 일치하지 않아요.

점수에 Local Zones가 포함되어 있다면 후속 Spot 요청을 같은 Local Zones를 사용하도록 구성하세요. 그렇지 않으면 용량을 얻을 가능성이 점수와 일치하지 않을 수 있어요.

Spot 배치 점수는 지침 역할을 하며 어떤 점수도 Spot 요청이 완전히 또는 부분적으로 충족될 것이라고 보장하지는 않지만, 최상의 결과를 얻으려면 다음 정보를 사용할 수 있어요.

참고

대상 용량을 vCPU 수 또는 메모리 양으로 지정하고 Spot 배치 점수 구성에서 인스턴스 유형을 지정했다면, 현재 Auto Scaling 그룹, EC2 Fleet, 또는 Spot Fleet에서 이 구성을 만들 수 없다는 점에 유의하세요. 대신 WeightedCapacity 매개 변수를 사용해 인스턴스 가중치를 수동으로 설정해야 해요.

  • capacity-optimized 할당 전략을 사용합니다. 어떤 점수든 플릿 요청이 모든 가용 영역(리전 간 용량 요청 시) 또는 단일 가용 영역(한 가용 영역에서 용량을 요청하는 경우)을 사용하도록 구성되고, Spot 용량 요청이 성공하려면 capacity-optimized Spot 할당 전략을 사용한다고 가정해요. lowest-price 같은 다른 할당 전략을 사용하면 사용 가능한 Spot 용량을 얻을 가능성이 점수와 일치하지 않아요.
  • 점수에 즉시 조치합니다. Spot 배치 점수 권장 사항은 요청 시점의 사용 가능한 Spot 용량을 반영하며, Spot 용량 변동으로 인해 같은 구성이라도 다른 시점에 계산하면 다른 점수가 나올 수 있어요. 점수 10이 Spot 용량 요청이 성공할 가능성이 매우 높지만 보장되지는 않음을 의미하지만, 최상의 결과를 위해 점수에 즉시 조치할 것을 권장해요. 또한 용량 요청을 시도할 때마다 새로운 점수를 얻을 것을 권장해요.

더 알아보기