Amazon-Web-Services
AWS ECS 集群實例的交換空間使用
我正在嘗試優化和整合我們的 AWS 實例。其中一部分涉及標準化(在可能的情況下)我們的實例類,以優化使用預留。
我們有許多使用 m5d 類 EC2 的應用程序,將臨時儲存用於超快速交換空間。我們還有許多 ECS 集群,它們目前正在使用 r5 類 EC2。
我想知道是否有人知道交換空間對 ECS 集群實例是否有用?如果 docker 能夠有效地使用交換空間,那麼這可能意味著我們可以使用更便宜的通用“d”實例,而不必使用更大更昂貴的“r5”類實例。
使用 ECS,您必須為每個任務指定記憶體預留,ECS 不會讓您超額訂閱可用記憶體。即,如果您的實例有 4GB RAM,而您為作業系統帶走了一點記憶體(比如 0.5GB),那麼您的任務就剩下 3.5GB。您可以創建 1.5GB 任務和 2GB 任務,但不能創建 2x 2GB 任務。
這意味著交換空間幾乎不會在 ECS 節點上使用 - 任務應該適合可用記憶體。
r5是否比m5d更貴也是值得懷疑的- 這取決於您是否受到 CPU 或 RAM 的限制。截至今天,具有 16GB RAM 的r5.large的成本為 0.126 美元/小時,而具有 16GB RAM 的類似m5d.xlarge的成本為 0.226 美元/小時 - 相當多。使用 M5D,您可以獲得 RAM、CPU 和磁碟,因此它比 RAM 優化的 R5 類更昂貴。
如果我是您,我會考慮AWS Saving Plans,它為您提供比預留實例更高的靈活性。您可以選擇實例類、大小,甚至可以在 Fargate 中執行您的容器。
希望有幫助:)