【AWS】コンピューティングサービス一覧 | 主要サービス編(特徴・使い分け・読み方)【AWS認定試験 SAA/DVA/CLF対策】
本ページでは、AWSが提供するコンピューティングサービスを一覧で整理します!
EC2やLambdaといった主要なものから、App RunnerやLightsailといった少しマイナーなものまで、俯瞰的に整理してみました。

AWS 認定クラウドプラクティショナー
(AWS Certified Cloud Practitioner, CLF)
AWS 認定ソリューションアーキテクト アソシエイト
(AWS Certified Solutions Architect – Associate, SAA)
AWS 認定デベロッパー アソシエイト
(AWS Certified Developer – Associate, DVA)
AWSのコンピューティングサービス一覧
AWSのコンピューティングサービスを調べると、下記のように大量のサービスが出てきます。申し訳程度に書いてある解説も分かりにくいですし、全て横並びに書かれてしまうとサービス間の関係性も見えこないため、整理していきます。

中核となるサービス
まず、中核となるサービスは下記の通りです。
仮想サーバーを提供(IaaS)
コンテナの実行環境を提供(PaaS/CaaS)
サーバーレスでプログラム実行環境を提供(FaaS)
AWSでシステムを構築するとき、このどれかはほぼ必ず使用されると言ってもいいくらい、重要なサービス達です。AWS認定試験(Cloud Practitioner、Associate系3試験)でも頻出となっています。
その他サービス
他のサービスには、上記の中核となるサービスから派生したサービスであったり、これらを使いやすくする便利サービスが多いです。
EC2の関連サービス
- EC2 Auto Scaling
- EC2 スポット (Spot Instance)
ECS/EKSの関連サービス
- Fargate
- ECS/EKS Anyware
- ECR
開発や運用などをより簡単にしてくれるサービス
- App Runner
- Lightsail
- Elastic Beanstalk
- AWS Batch

以下では、これらを順に整理していきます。
EC2と関連サービス



EC2 (Elastic Compute Cloud)
EC2 (Elastic Compute Cloud, イーシーツー) は、仮想サーバーを提供するコンピューティングサービスです。インスタンスという単位でサーバーが管理されます。
IaaS (Infrastructure as a Service)に分類され、CPU、メモリ、ストレージ、OSなどを自由に選択し、ユーザー自身で管理を行います。そのカスタマイズの柔軟性が魅力です。
Auto Scaling
EC2 Auto Scaling(オートスケーリング)は、EC2で利用できる機能の一つで、負荷に応じてEC2インスタンスを自動的に増減する仕組みです。事前に設定したルールに基づいてスケールイン/アウトを実行してくれます。時間帯などによって負荷が増減する場合に最適です。
Spot Instance
EC2 Spot Instance(スポットインスタンス)は、EC2のインスタンスの購入方式の一つで、AWS側で余ったEC2リソースを安く使える方式です。余りを利用するので、余りが少なくなったら予告なく止められる可能性があり、用途はある程度限られます。たとえば機械学習の学習処理は時間とお金がかかるため、安く利用可能なスポットインスタンスと相性が良いです。

スポットインスタンス以外には以下の方式がありますね。
- オンデマンドインスタンス:
デフォルト設定の、従量課金制の方式 - リザーブドインスタンス:
1年or3年の使用期間を指定して、割安に使用する方式
ECS/EKSと関連サービス




ECS (Elastic Container Service)
EC2 (Elastic Container Service, イーシーエス) は、Dockerコンテナの実行環境を提供するコンピューティングサービスです。
PaaS (Platform as a Service)や CaaS(Container as a Service)に分類され、コンテナ化されたアプリケーションを簡単にデプロイ・管理できます。
デプロイ先を選ぶことができ、それぞれ関連サービスとして名前が付いていたりします。FargateやECS Anywareは下で解説します。
- EC2(設定を細かく制御できるが、EC2インスタンスの管理が必要)
- Fargate(サーバーレスで、より手軽に利用)
- オンプレミス環境(= ECS Anyware)
EKS (Elastic Kubernetes Service)
EKS (Elastic Kubernetes Service, イーケーエス) は、KubernetesをAWSでマネージド実行するサービスです。
ECSはAWS独自の仕組みのコンテナ実行を管理する一方、EKSはKubernetesで管理します。基本的にECSよりも複雑で、Kubernetes経験者が利用を選択するイメージと思っておいて大丈夫です。
EKSもECSと同様にデプロイ先を選ぶことができ、FargateやEKS Anywareを利用可能です。
Fargate
Fargate(ファーゲート)は、ECSやEKSで利用できるサーバーレスのコンテナ実行環境です。有名なサービスですが、単体で使う訳ではなく、ECSやEKSと併せて使うというポイントを押さえておきましょう。
ECSやEKSをEC2にデプロイするとEC2インスタンスの管理が必要になりますが、Fargateを利用することでそれが不要(AWSがやってくれる)になります。
ECS Anyware / EKS Anyware
ECS Anyware/EKS Anyware(イーシーエス エニーウェア/イーケーエス エニーウェア)は、ECSやEKSの仕組みをオンプレミス環境で構築するサービスです。既存のオンプレミス環境のリソースを活用したいけど、その他の諸々はAWSにお任せしたい、というニーズに応えることができます。
ECR (Elastic Container Registry)
ECR (Elastic Container Registry) は、Dockerコンテナイメージを保存、管理、デプロイするためのDockerコンテナレジストリサービスです。Dockerには、コンテナイメージを管理するレジストリという仕組みがあり、ECRではその管理をAWSが行ってくれます。
あくまで「コンテナイメージを管理する仕組み」ですので、ECR自体が実行環境を提供しているわけではありません。ECSやEKSと一緒に利用されるサービスとなっています。
Lambda

Lambda (ラムダ) は、サーバーレスでプログラム実行環境を提供するサービスです。FaaS (Function as a Service)に分類され、ユーザーはプログラムのソースコードをアップロードするだけで利用可能です。
サーバーレスアーキテクチャの中核を担うサービスとなっています。
Lambdaについてはこちらの記事でも紹介していますので、必要に応じて参照してください。

その他のコンピューティングサービス
記事のボリュームが大きくなってしまったため、こちらは別記事で紹介予定しています。興味のある方はご覧ください!

まとめ
ここまで、AWSの主要コンピューティングサービスであるEC2、ECS、EKS、Lambdaとその関連サービスをご紹介しました。
ひとつひとつのサービスに対する理解も重要ですが、適切にサービスを使い分けるには、提供サービスの全体像(ラインナップ)を俯瞰的に捉えておくことが大事だと思います。特にコンピューティングサービスは、他と組み合わせて使うような関連サービスが多く、その関係性を理解しておくと知識が定着しやすいと思います。
本記事が、少しでもその理解の助けになれば幸いです。
