

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Spot 配置分數的運作方式
<a name="how-sps-works"></a>

當您使用 Spot 配置分數功能時，首先要針對 Spot 執行個體指定運算需求，然後 Amazon EC2 會傳回 Spot 請求可能成功的前 10 個區域或可用區域。每個區域或可用區域的分數範圍從 1 到 10，其中 10 表示您的 前 Spot 請求很可能成功，1 表示您的 Spot 請求不可能成功。

**Topics**
+ [步驟 1：指定您的 Spot 需求](#sps-specify-requirements)
+ [步驟 2：篩選 Spot 配置分數回應](#get-sps)
+ [步驟 3：檢閱建議](#sps-recommendations)
+ [步驟 4：使用建議](#sps-use-recommendations)

## 步驟 1：指定您的 Spot 需求
<a name="sps-specify-requirements"></a>

首先，您可以指定所需的目標 Spot 容量和運算需求，如下所示：

1. **指定目標 Spot 容量，並選擇性指定目標容量單位。**

   您可以根據執行個體或 vCPU 的數量或 MiB 中的記憶體容量來指定所需的目標 Spot 容量。若要以 vCPU 數目或記憶體數量指定目標容量，您必須將目標容量單位指定為 `vcpu` 或 `memory-mib`。否則，其會預設為執行個體的數量。

   根據 vCPU 數目或記憶體數量來指定目標容量，您可以在計算總容量時使用這些單位。例如，如果想要混合使用不同大小的執行個體，您可以將目標容量指定為 vCPU 總數。Spot 配置分數功能接著會透過其 vCPU 數目來考量請求中的每個執行個體類型，並在加總目標容量時計算 vCPU 總數，而不是執行個體總數。

   例如，假設您指定的目標容量總計為 30 個 vCPU，而執行個體類型清單包含 c5.xlarge (4 個 vCPU)、m5.2xlarge (8 個 vCPU) 和 r5.large (2 個 vCPU)。若要達到總數 30 個的 vCPU，您可以取得 2 c5.xlarge (2\*4 個 vCPU)、2 m5.2xlarge (2\*8 個 vCPU) 和 3 r5.large (3\*2 個 vCPUs) 的混合。

1. **指定執行個體類型或執行個體屬性。**

   您可以指定要使用的執行個體類型，也可以指定運算需求所需的執行個體屬性，然後讓 Amazon EC2 識別具有這些屬性的執行個體類型。這就是所謂的屬性型執行個體類型選項。

   您無法在相同的 Spot 配置分數請求中同時指定執行個體類型和執行個體屬性。

   如果指定執行個體類型，則您必須至少指定三種不同的執行個體類型，否則 Amazon EC2 將傳回低 Spot 配置分數。同樣地，如果您指定執行個體屬性，它們必須解析為至少三種不同的執行個體類型。

如需指定 Spot 需求的不同方式範例，請參閱 [範例組態](work-with-spot-placement-score.md#sps-example-configs)。

## 步驟 2：篩選 Spot 配置分數回應
<a name="get-sps"></a>

Amazon EC2 會計算每個區域或可用區域的 Spot 配置分數，並傳回 Spot 請求可能成功的前 10 個區域或前 10 個可用區域。預設值是傳回得分區域的清單。如果您計劃將所有 Spot 容量啟動至單一可用區域，請求得分可用區域的清單很有用。

您可以指定區域篩選條件來縮小將在回應中傳回的區域。

您可以結合區域篩選條件和得分可用區域的請求。如此一來，得分可用區域僅限於您已篩選的區域。若要找出區域中得分最高的可用區域，請僅指定該區域，然後回應將傳回該區域中所有可用區域的得分清單。

## 步驟 3：檢閱建議
<a name="sps-recommendations"></a>

每個區域或可用區域的 Spot 配置分數是根據目標容量、執行個體類型的組成、歷史和目前 Spot 使用趨勢，以及請求的時間來計算。由於 Spot 容量持續波動，因此在不同時間計算時，相同的 Spot 配置分數請求可能會產生不同的分數。

區域和可用區域的分數範圍是從 1 到 10。分數 10 表示您的 Spot 請求很有可能 (但不保證) 成功。分數 1 表示您的 Spot 請求完全不可能成功。對於不同的區域或可用區域，可能會傳回相同的分數。

如果傳回低分數，您可以編輯運算需求並重新計算分數。您也可以在一天中的不同時間，針對相同的運算需求，請求 Spot 配置分數建議。

## 步驟 4：使用建議
<a name="sps-use-recommendations"></a>

僅在 Spot 請求的組態與 Spot 配置分數組態 (目標容量、目標容量單位，以及執行個體類型或執行個體屬性) 完全相同，且該請求設定為使用 `capacity-optimized` 配置策略時，Spot 配置分數才相關。否則，取得可用 Spot 容量的可能性將不符合分數。

雖然 Spot 配置分數充當指導方針，而且沒有任何分數保證您的 Spot 請求會完全或部分實現，但您可以使用下列資訊來取得最佳結果：
+ **使用相同組態** – 僅在 Auto Scaling 群組、EC2 Fleet 或 Spot Fleet 中的 Spot 請求組態 (目標容量、目標容量單位，以及執行個體類型或執行個體屬性) 與您為了取得 Spot 配置分數而輸入的組態相同時，Spot 配置分數才相關。

  如果您在 Spot 配置分數請求中使用了屬性型執行個體類型選取，則可以使用屬性型執行個體類型選取，來設定 Auto Scaling 群組、EC2 Fleet 或 Spot Fleet。如需詳細資訊，請參閱[使用參數型執行個體類型選項建立混合執行個體群組](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-mixed-instances-group-attribute-based-instance-type-selection.html)和 [指定屬性，為 EC2 機群或 Spot 機群選取執行個體類型](ec2-fleet-attribute-based-instance-type-selection.md)。
**注意**  
如果您根據 vCPU 數目或記憶體數量指定目標容量，並在 Spot 配置分數組態中指定了執行個體類型，請注意，您目前無法在 Auto Scaling 群組、EC2 Fleet 或 Spot Fleet 中建立此組態。反之，您必須使用 `WeightedCapacity` 參數，手動設定執行個體加權。
+ **使用 `capacity-optimized` 分配策略** – 任何分數都假設您的機群請求將設定為使用所有的可用區域 (用於跨區域請求容量) 或單一可用區域 (如果在某個可用區域請求容量) 和 `capacity-optimized` Spot 分配策略，以便您可以成功請求 Spot 容量。如果您使用其他配置策略 (例如 `lowest-price`)，取得可用 Spot 容量的可能性將不符合分數。
+ **立即對分數採取行動** – Spot 配置分數建議會反映請求時的可用 Spot 容量，並且由於 Spot 容量波動，因此在不同時間計算時，相同的組態可能會產生不同的分數。雖然分數 10 表示您的 Spot 容量請求很可能 (但不保證) 成功，但為了取得最佳結果，我們建議您立即對分數採取行動。我們也建議您在每次嘗試容量請求時取得全新的分數。