本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:在容量區塊中啟動執行個體
本教學課程將逐步引導您完成必須執行的所有步驟,以便 EC2 Fleet 在容量區塊中啟動您的執行個體。如需容量區塊的更多資訊,請參閱ML 的容量區塊。
您可以使用即時類型的 EC2 Fleet,在容量區塊中啟動執行個體。如需詳細資訊,請參閱 使用「instant」類型的 EC2 Fleet。
大多數情況下,EC2 Fleet 請求的目標容量應小於或等於您鎖定之容量區塊的預留可用容量。超出容量區塊預留上限的目標容量請求將無法滿足。如果目標容量請求超出容量區塊預留上限,您會收到容量不足例外狀況,告知您請求超出容量區塊的預留上限。
注意
對於容量區塊,EC2 Fleet 將不會撤回至針對所需的目標剩餘容量啟動隨需執行個體。
如果 EC2 Fleet 無法在可用的預留容量區塊中滿足所要求的目標容量,EC2 Fleet 會盡可能滿足容量需求,並傳回能夠啟動的執行個體。您可以再次重複呼叫 EC2 Fleet,直到佈建所有執行個體為止。
設定 EC2 Fleet 請求後,您必須等待至容量區塊預留的開始日期。如果您請求 EC2 Fleet 啟動至尚未啟動的容量區塊,則會收到容量不足錯誤。
預留的容量區塊啟用後,您就可以執行 EC2 Fleet 的 API 呼叫,並根據您選取的參數將執行個體佈建到容量區塊中。在容量區塊中執行的執行個體會繼續執行,直到您透過單獨的 Amazon EC2 API 呼叫停止或終止這些執行個體,或 Amazon EC2 在容量區塊預留結束時終止這些執行個體。
考量事項
-
同一
CreateFleet
請求不支援多個容量區塊。 -
不支援在使用
OnDemandTargetCapacity
或SpotTargetCapacity
時,同時將capacity-block
設為DefaultTargetCapacity
。 -
如果將
DefaultTargetCapacityType
設為capacity-block
,則無法提供OnDemandOptions::CapacityReservationOptions
。一旦提供,便會發生例外狀況。
建立啟動範本
啟動範本 ID 會在下列步驟中使用。如需詳細資訊,請參閱 建立啟動範本。
若要設定啟動範本,請針對 InstanceMarketOptionsRequest
將 MarketType
設為 capacity-block
。設定 CapacityReservationID
參數,指定您要鎖定的容量區塊預留 ID。
建立 EC2 Fleet
建立檔案 config.json
,並為其 EC2 Fleet 採用以下組態。在下列範例中,以您自己的資源識別符取代資源識別符。
{
"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 Fleet。