使用執行個體加權來管理EC2叢集或 Spot 叢集的成本和效能 - Amazon Elastic Compute Cloud

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

使用執行個體加權來管理EC2叢集或 Spot 叢集的成本和效能

透過執行個體權重,您可以為EC2叢集或 Spot 叢集中的每個執行個體類型指派加權,以表示其相對於彼此的運算容量和效能。根據權重,叢集可以使用指定執行個體類型的任意組合,只要它能夠滿足所需的目標容量即可。這可以幫助您管理車隊的成本和性能。

重量代表執行個體類型貢獻總目標容量的容量單位。

範例:使用執行個體加權進行績效管理

假設您的叢集有兩種執行個體類型,而且您為每個執行個體類型指派不同的權重,以反映每種執行個體類型需要多少才能達到相同效能,如下所示:

  • m5.large— 重量:1

  • m5.2xlarge-重量:4

通過分配這些權重,你說你需要 4 m5.large 個實例來實現與 1 相同的性能m5.2xlarge

若要計算指定目標容量需要每個執行個體類型的執行個體數目,請使用下列公式:

target capacity / weight = number of instances

如果您的目標容量為 8 個單位,則艦隊可以使用m5.large或或m5.2xlarge兩者混合來滿足目標容量,如下所示:

  • 8 m5.large 個執行個體 (8 個容量/重量為 1 = 8 個執行個體)

  • 2 m5.2xlarge 個執行個體 (8 個容量/重量為 4 = 2 個執行個體)

  • m5.large和一 m5.2xlarge

範例:使用執行環境加權進行成本管理

根據預設,您指定的價格是每執行個體小時。使用執行個體權重功能時,您指定的價格是每單位小時。您可以透過將執行個體類型價格除以它所代表的單位數,來計算每單位小時的價格。叢集會計算要啟動的執行個體數目,方法是將目標容量除以執行個體權重。如果結果不是整數,則機群會將其捨入到下一個整數,以便您的機群大小不低於其目標容量。即使所啟動的執行個體容量超過所請求的目標容量,該機群也可以選取您在啟動規格中指定的任何集區。

下表包含計算範例,以判斷目標容量為 10 之車隊的每單位價格。

執行個體類型 執行個體權重 目標容量 已啟動的執行個體數目 每個執行個體小時的價格 每個單位小時的價格
r3.xlarge

2

10

5

(10 除以 2)

0.05 USD

$0.025

(.05 除以 2)

r3.8xlarge

8

10

2

(10 除以 8,將結果四捨五入)

0.10 USD

$0.0125

(.10 除以 8)

請依照下列方式使用叢集執行個體加權,以履行時每單位最低價格在集區中佈建您想要的目標容量:

  1. 以執行個體 (預設值) 或您選擇的單位 (例如 v CPU、記憶體、儲存體或輸送量) 設定叢集的目標容量。

  2. 設定每單位價格

  3. 為每個啟動規格指定權重,即執行個體類型代表目標容量的單位數。

執行個體權重範例

請考慮使用下列組態的叢集要求:

  • 目標容量為 24

  • 執行個體類型為 r3.2xlarge 且權重為 6 的啟動規格

  • 執行個體類型為 c3.xlarge 且權重為 5 的啟動規格

權重表示執行個體類型代表目標容量的單位數。如果第一次啟動規格提供每單位最低價格 (r3.2xlarge每執行個體小時的價格除以 6),叢集就會啟動其中四個執行個體 (24 除以 6)。

如果第二次啟動規格提供每單位最低價格 (c3.xlarge每執行個體小時的價格除以 5),叢集就會啟動其中五個執行個體 (24 除以 5,結果四捨五入)。

執行個體權重與分配策略

請考慮使用下列組態的叢集要求:

  • 目標容量為 30 個 競價型執行個體

  • 執行個體類型為 c3.2xlarge 且權重為 8 的啟動規格

  • 執行個體類型為 m3.xlarge 且權重為 8 的啟動規格

  • 執行個體類型為 r3.xlarge 且權重為 8 的啟動規格

艦隊將啟動四個實例(30 除以 8,結果四捨五入)。採用 diversified 策略,機群會在三個集區的每一個集區啟動一個執行個體,並且三個集區任一個中的第四個執行個體會提供最低的每單位價格。