多種執行個體類型的配置策略 - Amazon EC2 Auto Scaling

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

多種執行個體類型的配置策略

當您使用多個執行個體類型時,您可以管理 Amazon EC2 Auto Scaling 如何從可能的執行個體類型中滿足隨需和 Spot 容量。若要這麼做,您可以指定配置策略

若要檢閱混合執行個體群組的最佳作法,請參閱建立混合執行個體群組的設定概觀

Spot 執行個體

Amazon EC2 Auto Scaling 提供下列 Spot 執行個體的配置策略:

price-capacity-optimized (建議)

價格和容量最佳化分配策略會考慮價格和容量,來選擇最不可能中斷且價格最低的 Spot 執行個體集區。

建議您在剛開始時使用此策略。如需詳細資訊,請參閱 AWS 部落格中的 EC2 Spot 執行個體 price-capacity-optimized 配置策略簡介

capacity-optimized

Amazon EC2 Auto Scaling 使用啟動中執行個體數目的最佳容量來請求來自集區的 Spot 執行個體。

使用 Spot 執行個體,定價會依據長期的供需趨勢隨時間慢慢改變。但是,容量會即時波動。capacity-optimized 策略會查看即時容量資料並預測哪些資料為最多可用,從而自動將 Spot 執行個體啟動到最可用的集區。這有助於最大程度減少工作負載的可能中斷,因為重新啟動工作和檢查點可能會導致較高的中斷成本。若要讓某些執行個體類型先啟動的機會較高,請使用 capacity-optimized-prioritized

capacity-optimized-prioritized

您可以按照從最高到最低優先順序,對啟動範本覆寫設定執行個體類型的順序 (從清單中的第一個到最後一個)。Amazon EC2 Auto Scaling 會竭盡全力遵循執行個體類型優先順序,但會先針對容量最佳化。對於必須將中斷可能性降至最低的工作負載來說,這是一個很好的選擇,對於某些執行個體類型的偏好也很重要。如果隨需分配策略設定為 prioritized,則在滿足隨需容量時會套用相同的優先順序。

lowest-price

Amazon EC2 Auto Scaling 使用可用區域內價格最低的集區來請求 Spot 執行個體,跨越您為最低價集區設定指定的 N 個 Spot 集區。例如,如果您指定四個執行個體類型和四個可用區域,則您的 Auto Scaling 群組最多可以存取 16 個 Spot 集區。(每個可用區域四個。) 如果您為分配策略指定兩個 Spot 集區 (N = 2),則 Auto Scaling 群組 可以利用每個可用區域中最便宜的兩個集區,來滿足 Spot 容量。

由於此策略僅考慮執行個體價格,而不考慮容量可用性,因此可能會導致高中斷率。

Amazon EC2 Auto Scaling 會盡最大努力從您指定的 N 個集區中提取 Spot 執行個體。但是,如果集區在滿足您的目標容量之前用完 Spot 容量,Amazon EC2 Auto Scaling 會透過從下一個最便宜的集區中進行提取來繼續滿足您的請求。為達到所需的容量,您可能會從超過您指定的集區 N 數量中接收 Spot 執行個體。同樣地,如果大多數集區沒有 Spot 容量,則您可能會從少於您指定的集區 N 數量中接收完整的所需容量。

注意

如果設定 Spot 執行個體為在開啟 AMD SEV-SNP 的情形下啟動,則需要支付額外的小時用量費,相當於所選執行個體類型隨需小時費率的 10%。如果配置策略使用價格作為輸入,則 Amazon EC2 Auto Scaling 不會包含此額外費用;僅使用 Spot 價格。

隨需執行個體

Amazon EC2 Auto Scaling 提供以下可用於隨需執行個體的分配策略:

lowest-price

Amazon EC2 Auto Scaling 根據當前的隨需價格自動在每個可用區域中部署最便宜的執行個體類型。

為滿足您所需的容量,您可能會在每個可用區域中收到多個執行個體類型的隨需執行個體。這取決於您請求多少容量。

prioritized

滿足隨需容量時,Amazon EC2 Auto Scaling 會根據啟動範本覆寫清單中的執行個體類型順序,決定先使用哪一種執行個體類型。例如,假設您按以下順序指定三個啟動範本覆寫:c5.largec4.largec3.large。當您的隨需執行個體啟動時,Auto Scaling 群組會按以下順序來滿足隨需容量:c5.largec4.large,然後是 c3.large

管理隨需執行個體的優先順序時,請考慮下列事項:

  • 您可以預先支付使用量費用,使用 Savings Plans 或預留執行個體取得隨需執行個體的顯著折扣。如需詳細資訊,請參閱 Amazon EC2 定價頁面。

  • 對於預留執行個體,如果 Amazon EC2 Auto Scaling 啟動相符的執行個體類型,則適用於一般隨需執行個體定價的折扣費率。因此,如果您有適用於 c4.large 的未使用預留執行個體,您可以設定執行個體類型優先順序,將預留執行個體類型的最高優先順序指定給某個 c4.large 執行個體類型。當 c4.large 執行個體啟動時,您可享有預留執行個體的定價。

  • 透過 Savings Plans,使用 Amazon EC2 Instance Savings Plans 或 Compute Savings Plans 時,會套用一般隨需執行個體定價的折扣費率。透過 Savings Plans,在排定執行個體類型的優先順序時可享有更大的靈活性。只要您使用 Savings Plans 涵蓋的執行個體類型,就可以按任何優先順序對其進行設定。您也可以偶爾變更執行個體類型的整個順序,同時仍可獲得 Savings Plans 折扣費率。如需 Savings Plans 的詳細資訊,請參閱 Savings Plans 使用者指南

配置策略如何使用權重

當您在覆寫 ("DesiredCapacityType": "vcpu"或群組層級) 中指定WeightedCapacity參數"DesiredCapacityType": "memory-mib"時,配置策略的運作方式與其他 Auto Scaling 群組的運作方式完全相同。

唯一的差別是,當您選擇lowest-priceprice-capacity-optimized策略時,您的執行個體來自每個可用區域中每單位價格最低的執行個體集區。如需詳細資訊,請參閱 設定 Auto Scaling 群組以使用執行個體權重

例如,假設您有一個 Auto Scaling 群組,該群組有多個具有不同 vCPU 數量的執行個體類型。而您使用 lowest-price 作為 Spot 和隨需分配策略。如果您選擇根據每個執行個體類型的 vCPU 計數指派權重,則在履行時,Amazon EC2 Auto Scaling 將根據您所指派的權重值,啟動具有最低價格 (例如,每 vCPU) 的執行個體類型。如果是 Spot 執行個體,則意味著每個 vCPU 的最低 Spot 價格。如果是隨需執行個體,則意味著每個 vCPU 的最低隨需價格。