はじめに
AWS ECS Fargateは2017年にリリースされてから着実に進化を続けており、多くの企業がEC2からの移行を検討しています。しかし、過去にはFargateの制限や問題点が多く指摘されており、移行に二の足を踏んでいる方も多いのではないでしょうか。
今回は、2021年頃にRedditで話題になったEC2からFargate移行時の懸念事項について、2025年現在の状況を調査し、どの問題が解決され、どの制限が残っているのかをまとめました。
調査対象の懸念事項と現状
✅ 解決済みの問題
1. コスト問題
過去の状況: Fargateは EC2 よりもずっと高い
現在の状況: 従量課金制で、予約や長期契約なし。Spotインスタンス利用で最大70%削減可能
- Fargate Spotの登場により、大幅なコスト削減が可能になった
- Savings Plansで最大50%の割引も利用可能
- 短時間・断続的なワークロードでは、EC2よりもコスト効率が良い場合が多い
2. リソース設定の柔軟性
過去の状況: あらかじめ決められた設定しか使えない
現在の状況: 0.25 vCPU〜16 vCPU、512MB〜120GBメモリの柔軟な組み合わせ
- 当初の制限的な設定から大幅に拡張された
- 細かい粒度でリソースを調整可能
3. ストレージ容量制限
過去の状況: 20GBのディスク容量というハードリミット
現在の状況: 20 GB の一時ストレージがデフォルトで追加料金なし。より多くのストレージが必要な場合は設定可能
- デフォルト20GBに加えて、必要に応じて追加ストレージを設定可能
- 2021年にはEFSしか選択肢がなかったが、現在はより柔軟
4. デバッグ・トラブルシューティング
過去の状況: トラブルシューティングのためにサーバーに接続できなくなった
現在の状況: ECS Execでコンテナ内へのシェルアクセスが可能
- 2020年にECS Execが導入され、コンテナ内でのコマンド実行が可能になった
- CloudWatch Logsとの統合も充実
5. Windows Server対応
過去の状況: Fargate がまだ Windows コンテナをサポートしていない
現在の状況: WINDOWS_SERVER_2025_FULL, WINDOWS_SERVER_2022_FULL等をサポート
- 現在は最新のWindows Serverまでサポート
- レガシーアプリケーションの移行も可能
⚠️ ケースバイケースな問題
パフォーマンス
過去の状況: 同等のFargateサイズで実行したところ、より多くのインスタンスが必要になり、応答時間も長くなった
現在の状況: CPU・メモリが正確に割り当てられ、性能は予測可能だが、ワークロードによってはEC2の方が有利な場合もある
- ハードウェアの専有性やバーストキャパシティが重要なワークロードでは注意が必要
- 負荷テストでの事前検証を推奨
❌ 現在も残る制限事項
1. スワップメモリ未対応(重要)
スワップ設定パラメータはEC2起動タイプのタスク定義でのみサポートされており、Fargateでは未サポート
- メモリ制限を超えるとタスクが強制終了される
- メモリ使用量の急激なスパイクに対応できない
- 対策: 十分なメモリマージンを設けるか、メモリ監視を強化する必要がある
2. GPU未対応
GPU ワークロードには Amazon EC2 を使用してください。AWS Fargate では現在サポートされていません
- 機械学習の推論・学習処理には不適
- 代替案: SageMaker、Lambda(推論のみ)、EC2などを検討
3. 起動時間の課題
イメージプルとENI設定により起動に時間がかかる場合がある
- 大きなコンテナイメージでは起動時間が長くなる
- 対策: マルチステージビルドでイメージサイズを最小化
移行を検討すべきケース
Fargateが適している場面
- 断続的・バッチ処理のワークロード
- マイクロサービスアーキテクチャ
- 開発・テスト環境
- インフラ管理コストを削減したい場合
- スケーリングが頻繁に発生する場合
EC2を継続すべき場面
- GPU処理が必要
- メモリ使用量が不安定で急激にスパイクする
- 常時稼働で安定したパフォーマンスが必要
- 特定のハードウェア要件がある
まとめ
2025年現在、EC2からFargateへの移行に関する多くの懸念事項は解決されています。特にコストと運用面での改善は大きく、多くのケースでFargateのメリットが上回るようになりました。
ただし、スワップメモリ未対応とGPU未対応は依然として重要な制限事項です。これらが必要なワークロードでは慎重な検討が必要ですが、それ以外のケースでは積極的にFargateを検討する価値があります。
移行を検討される際は、実際のワークロードでの負荷テストを実施し、パフォーマンスとコストの両面から評価することをお勧めします。