はじめに
AWS Certified Cloud Practitioner では、個々のサービスを細かく実装できるかよりも、「このサービスは何をするものか」「どの場面で選ぶべきか」を正しく区別できるかが重要です。コンテナ関連では、Amazon ECR、Amazon ECS、Amazon EKS、AWS Fargate が混同されやすい代表例です。
結論から言うと、4つは同じカテゴリのサービスではありません。ECRは保存場所、ECS/EKSはコンテナを管理する仕組み、Fargateはコンテナを実行するためのサーバーレス基盤です。この切り分けができると、試験問題の選択肢をかなり絞りやすくなります。
まずは一表で整理
| サービス | 一言でいうと | 主な役割 | 試験での見分け方 |
|---|---|---|---|
| Amazon ECR | コンテナイメージの保管庫 | Docker/OCIイメージを保存・配布する | 「イメージを保存したい」「レジストリ」がキーワード |
| Amazon ECS | AWS独自のコンテナ運用サービス | コンテナのデプロイ、管理、スケーリング | 「Kubernetes不要」「AWSでシンプルに運用」がキーワード |
| Amazon EKS | KubernetesをAWSで使うサービス | Kubernetesクラスターをマネージドで運用する | 「Kubernetes」「Pod」「既存K8s資産」がキーワード |
| AWS Fargate | コンテナ向けサーバーレス実行基盤 | サーバー管理なしでコンテナを実行する | 「EC2を管理したくない」「サーバーレスで実行」がキーワード |
前提知識:用語を短く整理
- コンテナイメージ:アプリを動かすための実行パッケージ。アプリ本体や必要なライブラリをまとめたもの。
- レジストリ:コンテナイメージを保存しておく場所。
- オーケストレーション:どのコンテナを、どこで、何個、どうやって動かし続けるかを管理すること。
- Kubernetes:コンテナ運用のための広く使われるオープンソース基盤。
Amazon ECRとは
Amazon ECR(Elastic Container Registry)は、AWSが提供するマネージドなコンテナイメージレジストリです。DockerイメージやOCIイメージを保存し、必要なときに取り出せます。
重要なのは、ECRは「実行するサービス」ではないという点です。あくまでイメージの置き場所です。たとえば、開発チームがアプリのコンテナイメージを作成し、それをECRにpushし、ECSやEKSがそのイメージをpullして実行する、という流れになります。
試験では、「コンテナイメージを安全に保管したい」、「プライベートレジストリがほしい」といった文脈なら、ECRが正解候補になります。
試験ポイント
- ECR = イメージの保存場所
- コンテナの実行やオーケストレーションはしない
- ECS/EKSと組み合わせて使うことが多い
Amazon ECSとは
Amazon ECS(Elastic Container Service)は、AWSが提供するフルマネージドのコンテナオーケストレーションサービスです。コンテナ化したアプリケーションをデプロイし、必要な数だけ起動し、負荷に応じてスケーリングするといった管理を行います。
ECSはAWS独自のコンテナ運用サービスであり、Kubernetesを前提にしません。そのため、「AWS上でコンテナを使いたいが、Kubernetesの学習や運用までは必要ない」というケースで理解しやすいサービスです。
また、ECSは実行基盤としてEC2を使うことも、Fargateを使うこともできます。ここが試験での重要ポイントです。ECSとFargateは競合サービスではなく、組み合わせて使える関係です。
試験ポイント
- ECS = コンテナを管理する仕組み
- Kubernetesが不要なら有力候補
- 実行基盤はEC2でもFargateでもよい
Amazon EKSとは
Amazon EKS(Elastic Kubernetes Service)は、AWS上でKubernetesをマネージドで実行するためのサービスです。Kubernetesそのものを一から自前で構築・運用する負担を減らしつつ、Kubernetesの標準的な仕組みを利用できます。
つまり、EKSは「Kubernetesを使いたい」という要件があるときの選択肢です。たとえば、既に他環境でKubernetesベースの運用をしている、Kubernetesの知識や運用資産を活かしたい、というケースではEKSが適しています。
試験では、問題文に「Kubernetes」、「Pod」、「既存のKubernetes環境との整合性」といった要素が出てきたら、EKSが候補になります。
試験ポイント
- EKS = KubernetesをAWSで使うサービス
- ECSと違い、Kubernetesの概念が前提になる
- Kubernetesベースの運用が必要なときに選ぶ
AWS Fargateとは
AWS Fargateは、コンテナ向けのサーバーレスなコンピューティングエンジンです。コンテナを動かすためにEC2インスタンスを自分で用意・パッチ適用・スケーリング管理しなくても、必要な分だけコンテナを実行できます。
ここで最も大切なのは、Fargateはオーケストレーションサービスではないという点です。ECSやEKSのように「どのコンテナをどう管理するか」を決めるのではなく、そのコンテナをサーバー管理なしで実行する基盤です。
そのため、試験では「サーバーを管理したくない」、「コンテナ向けのサーバーレス実行環境がほしい」という文脈ならFargateが有力です。
試験ポイント
- Fargate = コンテナの実行基盤
- ECSまたはEKSと組み合わせて使う
- 単体で「コンテナ管理サービス」ではない
4つの関係を流れで理解する
試験対策では、次の流れで覚えると整理しやすくなります。
- アプリをコンテナ化してイメージを作る
- イメージをAmazon ECRに保存する
- Amazon ECS または Amazon EKSで、どう動かすかを管理する
- 実際の実行基盤としてEC2またはAWS Fargateを使う
つまり、ECR → ECS/EKS → Fargateというように、役割の階層が異なります。
試験で特に混同しやすい比較
ECR と ECS/EKS/Fargate の違い
ECRは保存、他の3つは実行・管理に関係するサービスです。問題文に「イメージの保存」とあればECR、「コンテナをどう動かすか」ならECS/EKS/Fargate側を考えます。
ECS と EKS の違い
どちらもコンテナを管理するサービスですが、ECSはAWS独自の運用モデル、EKSはKubernetesベースです。問題文にKubernetesが明示されていなければ、Cloud PractitionerではECSを選ぶ問題も多くなります。
ECS/EKS と Fargate の違い
ECS/EKSは管理の仕組み、Fargateは実行基盤です。したがって、「ECS on Fargate」や「EKS on Fargate」のように併用できます。ここを別カテゴリとして整理できるかどうかが、試験では重要です。
よくあるひっかけ
- ECRを選んでしまう誤り:イメージを保存したい問題には正しいが、コンテナを実行したい問題では不正解。
- Fargateをオーケストレーションサービスだと思う誤り:Fargateは実行基盤であり、ECS/EKSの代わりではない。
- ECSとEKSを同じものだと思う誤り:Kubernetesが必要かどうかで区別する。
- FargateとLambdaを同じサーバーレスとだけ見て混同する誤り:Fargateはコンテナ向け、Lambdaは関数実行向けで前提が異なる。
試験直前の暗記フレーズ
- ECR = 保存
- ECS = AWS流でコンテナ管理
- EKS = Kubernetesでコンテナ管理
- Fargate = サーバー管理なしでコンテナ実行
まとめ
Cloud Practitioner対策では、細かな設定項目よりも、各サービスの役割の違いを明確に言えることが重要です。特にコンテナ分野では、ECRは保管庫、ECS/EKSは管理、Fargateは実行基盤という切り分けを確実に覚えておくと、選択肢の見極めがしやすくなります。
問題文で「何を保存したいのか」「何を管理したいのか」「何を実行したいのか」を見抜ければ、この4サービスは整理して判断できます。
参考情報(AWS公式)
- https://aws.amazon.com/jp/certification/certified-cloud-practitioner/
- https://docs.aws.amazon.com/ja_jp/AmazonECR/latest/userguide/what-is-ecr.html
- https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/Welcome.html
- https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/capacity-launch-type-comparison.html
- https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/what-is-eks.html
- https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/fargate.html
- https://aws.amazon.com/jp/fargate/
