本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:設定EC2叢集以將執行個體啟動至容量區塊
本教學課程將逐步引導您完成必須執行的步驟,讓EC2叢集將執行個體啟動至容量區塊。
在大多數情況下,EC2叢集請求的目標容量應小於或等於您目標的容量區塊保留區的可用容量。超出容量區塊預留上限的目標容量請求將無法滿足。如果目標容量請求超出容量區塊保留的限制,您將收到超出容量區塊保留限制的容量。Insufficient Capacity Exception
注意
對於容量區塊,EC2叢集不會在所需目標容量的剩餘部分後退至啟動隨需執行個體。
如果EC2叢集無法在可用容量區塊保留區中滿足要求的目標容量,EC2叢集將盡可能多地履行容量,並傳回能夠啟動的執行個體。您可以重複呼叫EC2叢集,直到佈建完所有執行個體為止。
設定EC2叢集要求之後,您必須等到容量區塊保留的開始日期為止。如果您向EC2叢集提出要求以啟動至尚未啟動的容量區塊,您將會收到Insufficient Capacity Error
.
容量區塊保留變為作用中後,您可以根據選取的參數API撥打EC2叢集呼叫,並將執行個體佈建到容量區塊中。在容量區塊中執行的執行個體會繼續執行,直到您手動停止或終止它們,或直到容量區塊保留結束時 Amazon EC2 終止執行個體為止。
如需容量區塊的更多資訊,請參閱ML 的容量區塊。
考量事項
-
將執行個體啟動到容量區塊時,只支援EC2叢集類型
instant
的叢集要求。如需詳細資訊,請參閱設定類型的EC2叢集 instant。 -
不支援相同EC2叢集要求中的多個容量區塊。
-
不支援在使用
OnDemandTargetCapacity
或SpotTargetCapacity
時,同時將capacity-block
設為DefaultTargetCapacity
。 -
如果將
DefaultTargetCapacityType
設為capacity-block
,則無法提供OnDemandOptions::CapacityReservationOptions
。一旦提供,便會發生例外狀況。
設定EC2叢集以將執行個體啟動至容量區塊
-
建立啟動範本。
在啟動範本中,執行下列動作:
-
對於
InstanceMarketOptionsRequest
,設定MarketType
為capacity-block
。 -
若要以容量區塊保留為目標,請針對
CapacityReservationID
指定容量區塊保留區識別碼。
記下啟動範本名稱和版本。您將在下一個步驟中使用此資訊。
如需建立啟動範本的詳細資訊,請參閱創建一個 Amazon EC2 啟動模板。
-
-
設定「EC2艦隊」。
為您的EC2叢集建立具有下列組態的檔案。
config.json
在下列範例中,以您自己的資源識別符取代資源識別符。如需配置EC2叢集的詳細資訊,請參閱建立 EC2 機群。
{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "
CBR-launch-template
", "Version": "1
" }, "Overrides": [ { "InstanceType": "p5.48xlarge
", "AvailabilityZone": "us-east-1a
" }, ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity":10
, "DefaultTargetCapacityType": "capacity-block" }, "Type": "instant" } -
啟動艦隊。
使用以下 create-fleet 命令。
aws ec2 create-fleet --cli-input-json file://config.json
如需詳細資訊,請參閱建立 EC2 機群。