本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用執行個體縮減保護來控制執行個體終止
執行個體縮減保護可讓您控制 Amazon EC2 Auto Scaling 可以終止的執行個體。此功能的常見使用案例是擴展容器型工作負載。如需詳細資訊,請參閱設計您的應用程式以正常處理執行個體終止。
根據預設,當您建立 Auto Scaling 群組時,執行個體縮減保護會停用。這表示 Amazon EC2 Auto Scaling 可以終止群組中的任何執行個體。
您可以在 Auto Scaling 群組上啟用執行個體縮減保護設定,一旦執行個體啟動,即可對其進行保護。當執行個體縮減保護啟動時,執行個體的狀態為 InService
。然後,若要控制哪些執行個體可以終止,請停用 Auto Scaling 群組中個別執行個體的縮減保護設定。這樣,您可以繼續保護某些執行個體免受不必要的終止。
考量事項
以下是使用執行個體縮減保護時的考量:
-
如果 Auto Scaling 群組中的所有執行個體都受到保護,免於縮減,且發生擴展,則會減少其所需的容量。不過,Auto Scaling 群組在停用執行個體擴展保護設定之前,無法終止所需的執行個體數量。在 中 AWS Management Console,如果 Auto Scaling 群組中的所有執行個體在發生擴展時都受到保護,則 Auto Scaling 群組的活動歷史記錄會包含下列訊息:
Could not scale to desired capacity because all remaining instances are protected from scale in.
-
如果您分離受保護的執行個體,使其不受縮減影響,則其執行個體在保護設定中的擴展將會遺失。當您再次將執行個體連接到群組時,它會繼承群組保護設定中的目前執行個體擴展。當 Amazon EC2 Auto Scaling 啟動新的執行個體,或將執行個體從暖集區移至 Auto Scaling 群組時,執行個體會在 Auto Scaling 群組的保護設定中繼承執行個體規模。
-
執行個體縮減保護並不保護以下的 Auto Scaling 執行個體:
-
如果執行個體未通過運作狀態檢查,則發生運作狀態檢查取代。如需詳細資訊,請參閱Auto Scaling 群組中的執行個體運作狀態檢查。
-
Spot 執行個體中斷。Spot 執行個體的容量無法再使用或 Spot 價格超過您的最高價時將被終止。
-
容量區塊保留結束。Amazon EC2 會回收容量區塊執行個體,即使其受到縮減保護。
-
透過
terminate-instance-in-auto-scaling-group
命令手動終止。如需詳細資訊,請參閱終止 Auto Scaling 群組中的執行個體 (AWS CLI)。 -
透過 Amazon EC2 主控台、CLI 命令和 API 操作手動終止。若要保護 Auto Scaling 執行個體不被手動終止,請啟用 Amazon EC2 終止保護。(這不會阻止 Amazon EC2 Auto Scaling 透過
terminate-instance-in-auto-scaling-group
命令終止執行個體或手動終止。) 如需在啟動範本中啟用 Amazon EC2 終止保護的詳細資訊,請參閱 使用進階設定建立啟動範本。
-
變更 Auto Scaling 群組的縮減保護
您可以啟用或停用 Auto Scaling 群組的執行個體縮減保護設定。當您啟用它時,群組啟動的所有新執行個體都會啟用執行個體縮減保護。
啟用或停用 Auto Scaling 群組的此設定不會影響現有的執行個體。
變更執行個體的縮減保護
根據預設,執行個體會從本身的 Auto Scaling 群組取得執行個體縮減保護設定。不過,您可以啟用或停用個別執行個體啟動後的執行個體縮減保護。
注意
請記住,執行個體縮減保護並不保證執行個體不會在人為錯誤時終止,例如,有人使用 Amazon EC2 主控台或 手動終止執行個體時 AWS CLI。若要保護執行個體不會意外終止,您可以使用 Amazon EC2 終止保護。不過,即使啟用終止保護和執行個體縮減保護,如果運作狀態檢查判斷執行個體狀態不佳或群組本身遭到意外刪除,則儲存到執行個體儲存體的資料仍可能會遺失。與任何環境一樣,最佳實務是經常備份您的資料,或在適合您的業務持續性需求時備份資料。