web-dev-qa-db-ja.com

AWSECSクラスターインスタンスのスワップスペースの使用

AWSインスタンスを最適化して統合しようとしています。これの一部には、予約を最適に利用するために、インスタンスクラスを(可能な場合)標準化することが含まれます。

M5dクラスEC2を使用し、エフェメラルストレージを使用して超高速スワップスペースを使用するアプリケーションが多数あります。また、現在r5クラスのEC2を使用しているECSクラスターも多数あります。

スワップスペースがECSクラスターインスタンスに役立つかどうか誰かが知っているかどうか疑問に思っていますか? dockerがスワップスペースを効率的に使用できる場合は、より大きく高価な「r5」クラスインスタンスを使用するのではなく、より安価な汎用「d」インスタンスを使用できる可能性があります。

1
user1751825

ECSでは、タスクごとにメモリ予約を指定する必要があり、ECSでは使用可能なメモリをオーバーサブスクライブできません。つまりインスタンスに4GB RAMがあり、OS用に少し(たとえば0.5GB)を取り除いた場合、タスク用に3.5GBが残ります。1.5GBタスクと2GBタスクを作成できますが2x2GBタスクを持つことはできません。

つまり、ECSノードでスワップスペースが使用されることはほとんどありません。タスクは使用可能なメモリに収まる必要があります。

また、r5m5dよりも高価であるかどうかも疑問です-CPUまたはRAMのどちらに制約されているかによって異なります。今日の時点でr5.large、16GB RAMは$ 0.126/hrですが、同等のm5d.xlarge16GBの場合RAMコストは$ 0.226/hr-かなり高くなります。M5DではRAM、CPU、ディスクの両方を使用できるため、RAMに最適化されたR5クラスよ​​りも高価です。

もし私があなたなら、リザーブドインスタンスよりもはるかに高い柔軟性を提供する AWS保存プラン を見ていきます。インスタンスクラス、サイズを選択でき、Fargateでコンテナを実行することもできます。

お役に立てば幸いです:)

2
MLu