

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

# 了解 Spot 機群的自動擴展
<a name="spot-fleet-automatic-scaling"></a>

**重要**  
Spot Fleet 使用沒有計劃投資的舊版 API。我們建議您改用 EC2 Fleet 或 Auto Scaling 群組。如需詳細資訊，請參閱[最好的機群方法是什麼？](which-fleet-method-to-use.md)。

*自動擴展*讓您的 Spot 機群可根據需求增加或減少其目標容量。Spot 機群可以利用自動擴展，在指定的範圍內啟動執行個體 (擴展) 或終止執行個體 (縮減)，以回應一個或多個擴展政策。

透過結合 Amazon EC2、Amazon CloudWatch 和 Application Auto Scaling API 可實現 Spot Fleet 的自動擴展。Spot Fleet 請求是使用 Amazon EC2 建立的，警示是使用 CloudWatch 建立的，而擴展政策是使用 Application Auto Scaling 建立的。

**自動擴展的類型**

Spot Fleet 支援以下類型的自動擴展：
+ [目標追蹤擴展](spot-fleet-target-tracking.md) – 透過為特定指標設定目標值，增加或減少機群目前的容量。這類似於您家中溫控器維持溫度的方式 — 您只要選擇所需溫度，溫控器就會完成其餘的動作。
+ [步進擴展](spot-fleet-step-scaling.md) – 根據一組擴展調整 (也稱為步進調整)，來增加或減少機群目前的容量，其會根據警示違規的程度而有不同。
+ [排程的擴展](spot-fleet-scheduled-scaling.md) – 根據日期和時間，來增加或減少機群目前的容量。

## 考量事項
<a name="considerations-for-spot-fleet-automatic-scaling"></a>

針對您的 Spot 機群使用自動擴展時，請考慮下列事項：
+ **執行個體權重** – 如果您要使用[執行個體權重](ec2-fleet-instance-weighting.md)，請記住，Spot 機群可視需要超過目標容量。已實現的容量可以是浮點數，但目標容量必須是整數，因此 Spot Fleet 會四捨五入為下一個整數。如果檢視警示觸發時擴展政策的結果，您必須將這些行為列入考量。例如，假設目標容量為 30、已實現的容量為 30.1，則規模調整政策會減掉 1。當警示觸發時，自動擴展程序會從 30.1 減掉 1 而得出 29.1，然後再四捨五入為 30，因此不需採取規模調整動作。在另一個範例中，假設選擇了 2、4 和 8 的執行個體權重，而目標容量為 10，但沒有可用的權重 2 執行個體，因此 Spot Fleet 針對已實現的容量 12 佈建權重為 4 和 8 的執行個體。如果規模調整政策將目標容量減少了 20%，而且警示已觸發，則自動擴展程序會從 12 減掉 12\*0.2 而得出 9.6，然後再四捨五入為 10，因此不需採取規模調整動作。
+ **冷卻時間** – 您為 Spot 機群建立的擴展政策支援冷卻時間。這是在擴展活動完成之後，先前的觸發相關擴展活動還能影響未來擴展活動的秒數。如果使用向外擴展政策，則在冷卻時間仍有效時，由先前起始冷卻時間的向外擴展事件所新增的容量，會在計算時列入下次向外擴展所需容量的一部分。這種做法的目的是連續的向外擴展 (但並非過度)。如果使用向內擴展政策，在冷卻時間尚未到期之前，會利用此期間來封鎖請求中後續的擴展。這種做法的目的是保守地進行擴展，以保障應用程式的可用性。不過，如果在向內擴展後的冷卻時間內，有另一個警示觸發了向外擴展政策，則自動擴展功能會立即擴展可擴展的目標。
+ **使用詳細監控** – 建議您依據每分鐘更新的執行個體指標進行擴展，因為這樣能更快速地響應使用率變更。5 分鐘頻率的擴展指標可能會導致較慢的回應時間和用到過時的指標資料進行擴展。若要將執行個體的指標資料每隔 1 分鐘傳送至 CloudWatch，您必須指定啟用執行個體的詳細監控。如需詳細資訊，請參閱[管理 EC2 執行個體的詳細監控](manage-detailed-monitoring.md)及[使用已定義的參數建立 Spot 機群請求](create-spot-fleet.md#create-spot-fleet-advanced)。
+ **AWS CLI** – 如果您使用 AWS CLI 來設定 Spot Fleet 的擴展，您將使用[應用程式自動擴展](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling)命令。