決定任務大小 - Amazon Elastic Container Service

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

決定任務大小

在 Amazon ECS 上部署容器時,最重要的選擇之一就是您的容器和任務大小。您的容器和工作大小對於擴充和容量規劃都是必不可少的。在 Amazon ECS 中,有兩個資源指標用於容量:CPU 和記憶體。CPU 的測量單位為完整 vCPU 的 1/1024 (其中 1024 個單位等於 1 個整個 vCPU)。記憶體以 MB 為單位測量。在您的作業定義中,您可以宣告資源保留與限制。

當您宣告保留區時,您會宣告工作所需的最小資源量。您的工作至少會收到所要求的資源量。您的應用程式可能會使用比您宣告的保留區更多的 CPU 或記憶體。但是,這受到您也聲明的任何限制。使用大於保留金額稱為大量批次。在 Amazon ECS 中,保證保留。例如,如果您使用 Amazon EC2 執行個體提供容量,則 Amazon ECS 不會在無法履行保留的執行個體上放置任務。

限制是您的容器或任務可以使用的 CPU 單元或內存量上限。任何嘗試使用更多的 CPU 超過此模擬會導致節流。任何嘗試使用更多內存都會導致容器被停止。

選擇這些值可能很具挑戰性。這是因為最適合您應用程式的值在很大程度上取決於應用程式的資源需求。負載測試您的應用程序是成功的資源需求規劃和更好地了解您的應用程序的要求的關鍵。

無狀態的應用程式

對於水平調整的無狀態應用程式 (例如負載平衡器後面的應用程式),建議您先決定應用程式在提供要求時所耗用的記憶體數量。若要執行此操作,您可以使用傳統工具,例如pstop或監控解決方案,例如 CloudWatch 容器深入解析。

決定 CPU 保留區時,請考慮如何調整應用程式以符合業務需求。您可以使用較小的 CPU 保留區,例如 256 個 CPU 單位 (或 1/4 vCPU),以細微的方式向外擴充,將成本降至最低。但是,它們的擴展速度可能不夠快,無法滿足顯著的需求峰值。您可以使用較大的 CPU 保留區來更快速地進行擴充和擴充,因此更快地符合需求尖峰。不過,較大的 CPU 保留費用較高。

其他應用

對於無法水平擴充的應用程式 (例如單一工作者或資料庫伺服器),可用容量和成本代表您最重要的考量。您應該根據負載測試指示您需要服務流量以符合服務層級目標,選擇記憶體和 CPU 的數量。Amazon ECS 可確保應用程式放置在具有足夠容量的主機上。