本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
控制縮減期間應終止的 Auto Scaling 執行個體
Amazon EC2 Auto Scaling 使用終止政策來決定終止執行個體的順序。您可以使用預先定義的原則或建立自訂原則以符合您的特定需求。透過在保護中使用自訂政策或執行個體規模,您也可以防止 Auto Scaling 群組終止尚未準備好終止的執行個體。
目錄
Amazon EC2 Auto Scaling 使用終止政策時
以下各節說明 Amazon EC2 Auto Scaling 使用終止政策的案例。
事件中的規模
當 Auto Scaling 群組的所需容量有新的值 (低於群組目前容量) 時,就會發生比例。
在下列案例中發生的事件縮放:
-
使用動態擴展政策時,群組的大小會因指標值變更而減少
-
使用排程擴展時,群組的大小會因排程動作而減少
-
手動縮減群組的大小
下列範例顯示當發生事件規模時,終止原則的運作方式。
-
本例中的 Auto Scaling 群組具有一個執行個體類型、兩個可用區域以及兩個執行個體所需容量。它也具有動態擴展政策,可在資源使用率增加或減少時新增和移除執行個體。此群組中的執行個體會分佈在兩個可用區域,如下圖所示。
-
當自動擴展群組向外擴展時,Amazon EC2 Auto Scaling 會啟動一個新的執行個體。Auto Scaling 群組現在有三個執行個體,分佈在兩個可用區域,如下圖所示。
-
當自動擴展群組擴展時,Amazon EC2 Auto Scaling 會終止其中一個執行個體。
-
如果您未將特定終止政策指派給群組,Amazon EC2 Auto Scaling 會使用預設終止政策。它會選取含有兩個執行個體的可用區域,並終止從啟動設定、不同啟動範本或目前啟動範本最舊版本啟動的執行個體。如果執行個體是從相同的啟動範本和版本啟動,Amazon EC2 Auto Scaling 會選取最接近下一個帳單小時的執行個體並終止該執行個體。
執行個體重新整理
您可以啟動執行個體重新整理,以更新 Auto Scaling 群組中的執行個體。在執行個體重新整理期間,Amazon EC2 Auto Scaling 會終止群組中的執行個體,然後針對已終止的執行個體啟動替換。Auto Scaling 群組的終止政策可控制要優先取代哪些執行個體。
可用區域重新平衡
Amazon EC2 Auto Scaling 可在為您的自動 Auto Scaling 展群組啟用的可用區域之間平均平衡您的容量。這有助於減少可用區域中斷所造成的影響。如果跨可用區域的容量分配不平衡,Amazon EC2 Auto Scaling 會在啟用的可用區域中啟動執行個體,並在其他地方終止執行個體,以重新平衡 Auto Scaling 群組。終止政策會控制要優先終止哪些執行個體。
有許多可能的原因會造成可用區域之間的執行個體分佈失去平衡。
- 移除執行個體
-
如果您從 Auto Scaling 群組分開執行個體、將執行個體置於待命狀態,或明確終止執行個體並減少所需的容量,從而防止取代執行個體啟動,群組可能會呈現不平衡狀態。如果發生這種情況,Amazon EC2 Auto Scaling 會透過重新平衡可用區域來進行補償。
- 使用不同於原始指定的可用區域
-
如果您擴展 Auto Scaling 群組以包含其他可用區域,或變更使用哪些可用區域,Amazon EC2 Auto Scaling 會在新的可用區域中啟動執行個體並終止其他區域中的執行個體,以協助確保 Auto Scaling 群組均勻地跨越可用區域。
- 可用性中斷
-
可用性中斷並不常見。不過,如果某一個可用區域變成無法使用的狀態但稍後復原,則 Auto Scaling 群組會在可用區域間呈現不平衡狀態。Amazon EC2 Auto Scaling 會嘗試逐步重新平衡群組,重新平衡可能會終止其他區域中的執行個體。
例如,您的 Auto Scaling 群組具有一個執行個體類型、兩個可用區域以及兩個執行個體所需容量。在一個可用區域發生故障的情況下,Amazon EC2 Auto Scaling 會在運作良好的可用區域中自動啟動新執行個體,以取代運作狀態不良的可用區域中的執行個體。然後,當運作狀態不良的可用區域稍後返回健康狀態時,Amazon EC2 Auto Scaling 會自動在此區域中啟動新執行個體,進而終止未受影響區域中的執行個體。
注意
重新平衡時,Amazon EC2 Auto Scaling 會在終止舊執行個體之前啟動新執行個體,因此重新平衡不會影響應用程式的效能或可用性。
由於 Amazon EC2 Auto Scaling 會在終止舊執行個體之前嘗試啟動新執行個體,因此達到或接近指定的最大容量可能會阻礙或完全停止重新平衡活動。若要避免這個問題,系統在重新平衡活動時,可以暫時使用超過群組所指定容量上限的 10% (或可使用超過一個執行個體的容量,以容量較大者優先)。僅在群組位於或接近容量上限且需要重新平衡時,容量的邊界會延伸,因為使用者請求重新分區,或補償區域可用性問題。只要有需要重新平衡群組,邊界就會延伸。