集群放置群組中的容量保留 - Amazon Elastic Compute Cloud

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

集群放置群組中的容量保留

您可以在集群放置群組中建立容量保留,以便為您的工作負載預留 Amazon EC2 運算容量。集群放置群組具有低網路延遲和高網路輸送量的優點。

在集群放置群組中建立容量保留,可確保在需要時可隨時存取集群放置群組中的運算容量。這非常適合為需要運算擴展的高效能 (HPC) 工作負載預留容量。它可讓您縮小叢集的規模,同時確保容量仍然可供您使用,以便在需要時進行擴展。

限制

在集群放置群組中建立容量保留時,請注意下列事項:

  • 如果現有的容量保留不在放置群組中,您無法修改容量保留以保留放置群組中的容量。若要預留置放群組中的容量,您必須在置放群組中建立容量保留。

  • 在置放群組中建立容量保留後,您不能將其修改為置放群組之外的預留容量。

  • 您可以透過修改置放群組中的現有容量保留或在置放群組中建立附加容量保留來增加置放群組中的預留容量。但是,這會增加出現容量不足錯誤的可能性。

  • 您不能分享已在集群放置群組中建立的容量保留。

  • 您無法刪除具有 active 容量預留的集群放置群組。您必須取消您在集群放置群組中建立的所有容量保留之後,才可將其刪除。

使用集群放置群組中的容量保留

要開始對集群放置群組使用容量保留,請執行以下步驟。

注意

如果要在現有集群放置群組中建立容量保留,請跳過步驟 1。然後,對於步驟 2 和 3,指定現有集群放置群組的 ARN。如需如何尋找現有叢集置放群組之 ARN 的相關資訊,請參閱檢視放置群組資訊

步驟 1:(有條件) 建立與容量保留搭配使用的集群放置群組

僅當您需要建立新的集群放置群組時,才執行此步驟。要使用現有的集群放置群組,請跳過此步驟,然後對於步驟 2 和 3,請使用該集群放置群組的 ARN。如需如何尋找現有叢集置放群組之 ARN 的相關資訊,請參閱檢視放置群組資訊

您可以使用下列其中一種方法來建立集群放置群組。

Console
使用主控台來建立集群放置群組
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Placement Groups (置放群組),然後選擇 Create placement group (建立置放群組)。

  3. 對於 Name (名稱),指定置放群組的描述性名稱。

  4. 對於 Placement strategy (置放策略),選擇 Cluster (叢集)。

  5. 選擇 Create group (建立群組)。

  6. 在「放置群組」表格的「群組 ARN」資料欄中,記下您所建立之叢集置放群組的 ARN。您將需要它來進行下一步。

AWS CLI
使用建立叢集置放群組 AWS CLI

使用 create-placement-group 命令。對於 --group-name,指定置放群組的描述性名稱,然後為 --strategy 指定 cluster

下列範例會建立一個名為 MyPG 且使用 cluster 置放策略的置放群組。

C:\> aws ec2 create-placement-group \ --group-name MyPG \ --strategy cluster

記下命令輸出中傳回的置放群組 ARN,因為下一個步驟會需要此 ARN。

步驟 2:在集群放置群組中建立容量保留

在集群放置群組中建立容量保留的方式與建立任何容量保留的方式相同。但是,您還必須指定要在其中建立容量保留的集群放置群組的 ARN。如需詳細資訊,請參閱 建立 容量預留

考量事項
  • 指定的集群放置群組必須處於 available 狀態。如果集群放置群組處於 pendingdeletingdeleted 狀態,請求將失敗。

  • 容量保留和集群放置群組必須位於相同的可用區域中。如果建立容量保留請求指定的可用區域不同於集群放置群組的可用區域,則請求將失敗。

  • 您只能為集群放置群組支援的執行個體類型建立容量保留。若您指定不支援的執行個體類型,請求就會失敗。如需詳細資訊,請參閱 集群放置群組的規則與限制

  • 如果您在集群放置群組中建立 open 容量保留,並且存在具有相符屬性 (置放群組 ARN、執行個體類型、可用區域、平台和租期) 的現有執行中執行個體,這些執行個體就會自動在容量保留中執行。

  • 如果符合以下條件之一,則您建立容量預留的請求可能會失敗:

    • Amazon EC2 沒有足夠的容量可滿足請求。請稍後再試、嘗試其他可用區域,或是嘗試較小的容量。如果您的工作負載因應各種執行個體類型和大小,請嘗試不同的執行個體屬性。

    • 請求的數量超過所選執行個體系列的隨需執行個體限制。請提高執行個體系列的隨需執行個體限制,然後再試一次。如需詳細資訊,請參閱 隨需執行個體配額

您可以使用下列其中一種方法來在集群放置群組中建立容量保留。

Console
使用主控台建立容量預留
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 選擇 容量預留,接著選擇 Create 容量預留 (建立 容量預留)

  3. 在 [建立容量保留] 頁面上,視需要指定執行個體類型、平台、可用區域、租用、數量和結束日期。

  4. 放置群組中,選取要在其中建立容量保留的叢集置放群組的 ARN。

  5. 選擇建立

如需詳細資訊,請參閱 建立 容量預留

AWS CLI
若要使用建立容量保留 AWS CLI

使用 create-capacity-reservation 命令。對於 --placement-group-arn,指定要在其中建立容量保留的集群放置群組的 ARN。

$ aws ec2 create-capacity-reservation \ --instance-type instance_type \ --instance-platform platform \ --availability-zone az \ --instance-count quantity \ --placement-group-arn placement_group_ARN

如需詳細資訊,請參閱 建立 容量預留

步驟 3:在集群放置群組中啟動執行個體

在集群放置群組中的容量保留內啟動執行個體,其方式與在任何容量保留中啟動執行個體相同。但是,您還必須指定要在其中啟動執行個體的集群放置群組的 ARN。如需詳細資訊,請參閱 建立 容量預留

考量事項
  • 如果容量保留為 open,您無需在執行個體啟動請求中指定容量保留。如果執行個體具備與指定置放群組中的容量保留相符的屬性 (置放群組 ARN、執行個體類型、可用區域、平台和租期),則執行個體將自動在容量保留中執行。

  • 如果容量保留僅接受目標執行個體啟動,則除了請求中的集群放置群組之外,還必須指定目標容量保留。

  • 如果容量保留位於容量保留群組中,則除了請求中的集群放置群組之外,還必須指定目標容量保留群組。如需詳細資訊,請參閱 使用 容量預留 群組

您可以使用下列其中一種方法,將執行個體啟動至集群放置群組中的容量保留。

Console
使用主控台以現有的容量預留啟動執行個體
  1. 請遵循程序啟動執行個體,但在完成下列步驟以指定置放群組和容量保留的設定之前,請勿啟動執行個體。

  2. 展開進階詳細資料並執行下列操作:

    1. 在「放置」群組中,選取要在其中啟動執行個體的叢集置放群組。

    2. 對於 Capacity Reservation (容量保留),根據容量保留的組態選取下列其中一個選項:

      • 啟 — 將執行個體啟動至叢集置放群組中具有相符屬性和足夠容量的任何open容量保留。

      • 按 ID 鎖定 — 將執行個體啟動至僅接受目標執行個體啟動的容量保留。

      • 按群組鎖定 — 在選取的容量保留群組中,將執行個體啟動至具有相符屬性和可用容量的任何容量保留。

  3. Summary (摘要) 面板中,檢閱您的執行個體組態,然後選擇 Launch instance (啟動執行個體)。如需詳細資訊,請參閱 使用新的啟動執行個體精靈啟動執行個體

如需詳細資訊,請參閱 使用現有的 容量預留 啟動執行個體

AWS CLI
使用將執行個體啟動到現有的容量保留 AWS CLI

使用 run-instances 命令。如果您需要針對特定容量保留或容量保留群組,請指定 --capacity-reservation-specification 參數。對於 --placement,指定 GroupName 參數,然後指定您在上述步驟建立的置放群組的名稱。

以下命令將執行個體啟動到集群放置群組中的 targeted 容量保留內。

$ aws ec2 run-instances \ --image-id ami_id \ --count quantity \ --instance-type instance_type \ --key-name key_pair_name \ --subnet-id subnetid \ --capacity-reservation-specification CapacityReservationTarget={CapacityReservationId=capacity_reservation_id} \ --placement "GroupName=cluster_placement_group_name"

如需詳細資訊,請參閱 使用現有的 容量預留 啟動執行個體