1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

勝手にAWS教室 4時間目:ECS・EKS・Fargate

1
Posted at

勝手にAWS教室 4時間目:ECS・EKS・Fargate

CleanShot 2026-04-18 at 14.31.19@2x.png

情報が古い場合があります。間違っている箇所がありましたらご教授いただけると幸いです。

「コンテナ」という言葉、現場でもよく飛び交いますよね。
「ECSとEKSって何が違うの?」「Fargateってどこに位置づけられるの?」と聞かれてパッと答えられない方、結構いるのではないでしょうか。

今回はコンテナの基本から、ECS・EKS・Fargateの違いを比喩でスッキリ整理していきます。

先にまとめ

  • コンテナとは:アプリと実行環境をまとめた「持ち運び段ボール」
  • ECR:段ボールを保管しておく倉庫
  • ECS:AWS独自の物流管理システム
  • EKS:業界標準の管理ツール(Kubernetes)をAWSで使えるようにしたもの
  • Fargate:サーバー管理を丸投げできる宅配便

そもそも「コンテナ」とは何か

コンテナとは、アプリケーションとその実行に必要なライブラリ・設定をひとまとめにした「箱」 です。

なぜコンテナが必要なのか

開発をしていると「自分のPCでは動くのに、本番サーバーでは動かない!」という問題がよく起きます。原因は、OSやライブラリのバージョンが環境ごとに違うからです。

コンテナは、アプリに必要なものを全部「箱」に詰め込んでしまうので、どこに持っていっても同じように動きます。

料理道具一式が入ったボックスに例えると、「包丁・まな板・調味料が全部入っている」ので、どのキッチン(サーバー)に持っていっても同じ料理が作れます。

CleanShot 2026-04-18 at 14.44.56@2x.png

ちなみに「仮想マシン(EC2)と何が違うの?」と思った方。仮想マシンは「家ごと建てる」のに対して、コンテナは「部屋だけ用意する」イメージです。家ごと建てるより軽くて速い、それがコンテナの強みです。

1. ECR = 段ボールの倉庫

コンテナの話に入る前に、まず保管場所の話をしておきます。

Amazon ECR(Elastic Container Registry) は、コンテナイメージを保管するAWSのサービスです。DockerHubのAWS版と思ってください。

コンテナを作るには「設計図」が必要で、それがコンテナイメージです。EC2でいうAMI(設計図)と同じ立ち位置ですね。

料理道具ボックスを作る前に「包丁はこれ、調味料はこれ」とレシピ付きのリストを用意しますよね。そのリストを保管しておく倉庫がECRです。

CleanShot 2026-04-18 at 15.58.36@2x.png

ECRに保管しておけば、いつでもそのイメージからコンテナを起動できます。

2. ECS = 物流センターの管理システム

コンテナが1個2個なら手動で管理できますが、本番環境では数十〜数百のコンテナが動くこともあります。
「どのサーバーでどのコンテナを何個動かすか」を人間が全部やるのは無理があります。

そこで登場するのが Amazon ECS(Elastic Container Service) です。
ECSは、複数のコンテナを管理・実行するAWS独自のオーケストレーションサービスです。

物流センターの管理システムに例えると、「倉庫Aに箱を3個、倉庫Bに2個、バランスよく配置して」と自動で指示してくれるイメージです。1個壊れたら自動で新しい箱を補充してくれたりもします。

CleanShot 2026-04-18 at 16.09.26@2x.png

ECSのいいところは AWSの他サービスとの連携がスムーズ なことです。ALB(ロードバランサー)やCloudWatch(監視)と簡単につながるので、AWS中心で構築しているならとても使いやすいです。

また、AWS独自のサービスなので学習コストが比較的低いのもポイントです。Kubernetesを知らなくても始められます。

3. EKS = 業界標準の管理ツール

Amazon EKS(Elastic Kubernetes Service) は、コンテナオーケストレーションの業界標準ツール「Kubernetes(K8s)」をAWSで簡単に使えるサービスです。

Kubernetesとは

Kubernetes(クバネティス、通称K8s)は、Googleが開発したオープンソースのコンテナ管理ツールです。
やっていることはECSと同じ「コンテナの管理」ですが、世界中で使われている業界標準という点が大きな違いです。

こんなロゴのやつです。

image.png
©https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Kubernetes_logo.svg

ECSが「AWS社内でしか使えない管理システム」なら、EKSは「業界標準の管理ツールをAWSの環境で使えるようにしたもの」です。転職しても、他のクラウドに移っても、同じ知識が使えます。

ECS vs EKS:どっちを選ぶ?

正直、これは現場でもよく議論になります。ざっくりとした判断基準はこんな感じです。

項目 ECS EKS
ベース AWS独自 Kubernetes(オープン)
学習コスト 低い 高い(K8sの知識が必要)
移植性 AWSのみ 他クラウドにも移せる
AWS連携 とてもスムーズ 可能だが設定が多い
向いている人 AWSだけで完結する人 マルチクラウドや大規模運用をする人

「AWSだけで使うし、シンプルに始めたい」→ ECS
「将来的に他のクラウドも使うかも、チームにK8s経験者がいる」→ EKS

迷ったらECSから始めるのが無難です。必要になってからEKSに移行することもできます。

4. Fargate = 宅配便への丸投げ

ここまでECSとEKSの話をしてきましたが、どちらを使うにしても「コンテナを動かすサーバー(EC2)」が必要です。
サーバーのOSアップデートやスケーリングの管理、正直めんどくさいですよね。

そこで登場するのが AWS Fargate です。

Fargateは、EC2インスタンス(サーバー)を意識せずにコンテナを実行できる仕組みです。ECSやEKSと組み合わせて使います。

ここが重要なのですが、FargateはECSやEKSの「代わり」ではなく、「起動タイプ」の選択肢です。

EC2起動タイプが「自分でキッチンを建てて、設備の管理もシェフの手配も全部やる」なら、Fargateは「レシピを渡すだけで、キッチンもシェフも全部用意してくれるケータリング業者」のイメージです。

CleanShot 2026-04-18 at 16.40.33@2x.png

EC2起動タイプ vs Fargate起動タイプ

項目 EC2起動タイプ Fargate起動タイプ
サーバー管理 自分で管理 AWSが管理
コスト 比較的安い やや高い
スケーリング 自分で設定 自動
向いている場面 コストを抑えたい・細かく制御したい 管理の手間を減らしたい

Lambdaの回で説明した「サーバーレス」の考え方と同じですね。サーバーの管理をAWSに任せる代わりに、少しコストが高くなる。このトレードオフはAWSのいろんなところで出てきます。

全体の関係図

ここまでの関係を整理すると、こんな構造になります。

ECR(イメージ保管庫)
  ↓ イメージを取得
ECS または EKS(コンテナ管理)
  ↓ コンテナを実行
EC2起動タイプ または Fargate起動タイプ(実行環境)

つまり、「何を動かすか(ECR)→ どう管理するか(ECS/EKS)→ どこで動かすか(EC2/Fargate)」という3層構造です。

まとめ

概念 比喩 一言ポイント
コンテナ 持ち運び段ボール アプリと実行環境をまとめた箱
ECR 段ボールの倉庫 コンテナイメージの保管場所
ECS 物流管理システム AWS独自のコンテナオーケストレーター
EKS 業界標準管理ツール Kubernetesのマネージドサービス
Fargate 宅配便への丸投げ サーバー管理不要でコンテナ実行
EC2起動タイプ 自分でトラック調達 安いが管理が必要

最後に

コンテナ周りは概念が多くてとっつきにくいですが、「段ボール → 倉庫 → 物流管理 → 配送方法」という流れで覚えてしまえば意外とシンプルです。

現場で「ECSとEKSどっちがいい?」と聞かれたら、「AWSだけで完結するならECS、K8sの知識があるか将来マルチクラウドにするならEKS」と答えておけば、だいたい合ってると思います。

現在までに投稿してきた「勝手にAWS教室」はこちらにまとめてあります。
興味がある方はご覧ください。

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?