コンテナの運用、正直面倒だ。Kubernetesは強力だけど学習コストが高い。そこでECS(Elastic Container Service)とFargateの出番だ。
ECSはAWSのコンテナオーケストレーションサービス。Dockerイメージをプッシュするだけで、あとはAWSがコンテナの配置やスケーリングをやってくれる。Fargateはサーバーレスのコンテナ実行環境で、EC2インスタンスの管理すら不要。コンテナを動かすためだけにサーバーをプロビジョニングしなくていい。
ECSのいいところ:
- AWSとの統合 — ALBとの連携、CloudWatchログ、IAMロール、全部シームレス。
- 学習コストが低い — タスク定義(JSON)を書くだけでOK。k8sのYAML地獄が嫌な人向け。
- Fargateならサーバー管理ゼロ — パッチ適用もスケーリングもAWSにお任せ。
料金はFargateの場合、vCPUとメモリの組み合わせで従量課金。0.25vCPU/512MBの最小構成なら月$10以下。個人開発でも手が出る。
僕はバックエンドAPIを全部ECS Fargateに載せてる。もうEC2にSSHしてDockerコマンドを叩く生活には戻れない。