本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon ECS 的 Amazon EC2 容器執行個體
Amazon ECS 容器執行個體是執行 Amazon ECS 容器代理程式並註冊至叢集的 Amazon EC2 執行個體。當使用 EC2 啟動類型、外部啟動類型或 Auto Scaling 群組容量提供者來透過 Amazon ECS 執行任務時,您的任務會放置在作用中的容器執行個體。您必須負責容器執行個體的管理與維護。
雖然您可以建立自己的 Amazon EC2 執行個體 AMI,以符合在 Amazon ECS 上執行容器化工作負載所需的基本規格,但 Amazon ECS 最佳化 AMIs 是由 AWS 工程師在 Amazon ECS 上預先設定和測試。這是讓您快速上手並在 AWS 上執行容器最簡單的方法。
當您使用主控台建立叢集時,Amazon ECS 會使用與所選作業系統相關聯的最新 AMI,為您的執行個體建立啟動範本。
當您使用 AWS CloudFormation 建立叢集時,SSM 參數是 Auto Scaling 群組執行個體的 Amazon EC2 啟動範本的一部分。您可以設定範本使用動態 Systems Manager 參數來決定要部署的 Amazon ECS Optimized AMI。此參數可確保每次部署堆疊時,都會檢查是否有需要套用至 EC2 執行個體的可用更新。如需如何使用 Systems Manager 參數的範例,請參閱《 使用者指南》中的使用 Amazon ECS 最佳化 Amazon Linux 2023 AMI 建立 Amazon ECS 叢集。 AWS CloudFormation
您可以從與應用程式相容的執行個體類型中選擇。使用容量較大的執行個體,您可以同時啟動更多任務。使用較小的執行個體,您可以更精細地橫向擴展以節省成本。您不需要選擇適合叢集中所有應用程式的單一 Amazon EC2 執行個體類型。反之,您可以建立多個 Auto Scaling 群組,其中每個群組都有不同的執行個體類型。然後,您可以為每個群組建立 Amazon EC2 容量提供者。
使用下列準則來決定要使用的執行個體系列類型和執行個體類型:
-
排除不符合應用程式特定需求的執行個體類型或執行個體系列。例如,如果您的應用程式需要 GPU,您可以排除任何沒有 GPU 的執行個體類型。
-
考慮需求,包括網路輸送量和儲存。
-
考慮 CPU 和記憶體。一般而言,CPU 和記憶體必須足夠容納至少一個要執行任務的複本。
Spot 執行個體
相較於隨需執行個體,Spot 容量可大幅節省成本。Spot 容量是指超額容量,其價格明顯低於隨需或預留容量。Spot 容量適用於批次處理和機器學習工作負載,以及開發和預備環境。更一般來說,它適用於任何能容忍暫時停機的工作負載。
了解下列結果,因為 Spot 容量可能無法隨時可用。
-
在需求極高期間,Spot 容量可能無法使用。這可能會導致 Amazon EC2 Spot 執行個體啟動延遲。在這些事件中,Amazon ECS 服務會重試啟動任務,而 Amazon EC2 Auto Scaling 群組也會重試啟動執行個體,直到所需的容量可用為止。Amazon EC2 不會以隨需容量取代 Spot 容量。
-
當容量的整體需求增加時,Spot 執行個體和任務可能只會以兩分鐘警告終止。在傳送警告之後,任務應該在執行個體完全終止之前,視需要開始依序關機。這有助於將錯誤的可能性降至最低。如需正常關機的詳細資訊,請參閱使用 ECS 正常關機
。
若要協助減少 Spot 容量短缺,請考慮下列建議:
-
使用多個區域和可用區域:Spot 容量會因區域和可用區域而異。您可以透過在多個區域和可用區域執行工作負載來提高 Spot 可用性。如果可能,請在您執行任務和執行個體的區域中,在所有可用區域中指定子網路。
-
使用多個 Amazon EC2 執行個體類型:當您將混合執行個體政策與 Amazon EC2 Auto Scaling 搭配使用時,會在您的 Auto Scaling 群組中啟動多個執行個體類型。這可確保在需要時能滿足 Spot 容量的請求。為了將可靠性最大化並將複雜性最小化,請在混合執行個體政策中使用 CPU 和記憶體數量大致相同的執行個體類型。這些執行個體可以來自不同世代,也可以是相同基礎執行個體類型的變體。請注意,它們可能擁有您可能不需要的其他功能。這類清單的範例可能包括 m4.large、m5.large、m5a.large、m5d.large、m5n.large、m5dn.large 和 m5ad.large。如需詳細資訊,請參閱「Amazon EC2 Auto Scaling 使用者指南」中的具備多個執行個體類型及購買選項的 Auto Scaling 群組。
-
使用容量最佳化的 Spot 配置策略:使用 Amazon EC2 Spot,您可以在容量和成本最佳化配置策略之間進行選擇。如果您在啟動新執行個體時選擇容量最佳化策略,Amazon EC2 Spot 會在所選可用區域中選取具有最高可用性的執行個體類型。這有助於降低執行個體在啟動後立即終止的可能性。
如需如何在容器執行個體上設定 Spot 終止通知的詳細資訊,請參閱: