MODULE 03 / COMPUTE OPTIONS

コードとコンテナ、 実行方法を選ぶ

EC2以外にも、コードやコンテナを動かす方法があります。制御したい範囲と、AWSに任せたい管理作業から選びます。

6つの学習セクション図解+比較表+復習公式資料確認:2026.10.06

このModuleで学ぶこと

01マネージド・サーバーレスを管理範囲で理解する

02Lambdaのイベント駆動と実行条件を説明する

03ECR・ECS / EKS・EC2 / Fargateの役割を分ける

04用途に応じて実行サービスを選ぶ

01

何を動かすか、 誰が管理するか

EC2では、OSやアプリケーションを細かく制御できる一方、ゲストOSの更新やインスタンスの構成を利用者が管理します。マネージドサービスでは、運用作業の一部をAWSに任せられます。管理を任せるほど、自由に変更できる基盤の範囲も変わります。

実行方式と管理の境界
方式 AWSに任せること 利用者に残ること
EC2 物理サーバー・仮想化基盤 ゲストOS・アプリ・構成・台数増減の設計
Lambda 通常の実行基盤・基盤のスケール コード・依存関係・権限・イベント処理
Fargate コンテナ実行用サーバーの管理 コンテナイメージ・リソース指定・サービス設定
公式資料:サービスによって変わる責任 ↗
02

イベントから、 コードを実行する

AWS Lambdaは、関数として用意したコードを実行するサービスです。画像のアップロード、APIからの呼び出し、ストリームの更新などをきっかけに処理できます。

画像を保存し、 メタデータを記録するFLOW
Amazon S3画像をアップロード
AWS Lambdaイベントで関数を実行
DynamoDB処理結果を保存
S3の通知とLambdaの呼び出し権限、DynamoDBへの書き込み権限を設定した例です。サービスを置くだけで連携するわけではありません。

関数にはコードと実行環境、トリガー、実行ロールなどを設定します。Java、Python、Node.jsなどのランタイムやカスタムランタイムを使えます。需要に応じた基盤の増減はAWSが行いますが、同時実行数などの上限は確認します。

向いている処理

リクエスト処理、画像のリサイズ、データ変換、通知など。必要なときに始まり、短時間で完了する処理に適しています。

選び直す場面

常時稼働するプロセスや、通常の関数の制限を超える長時間処理では、コンテナやバッチなどの実行方法を検討します。

公式資料:関数のタイムアウト ↗
03

コンテナは、 実行環境をまとめる

コンテナは、アプリのコード・ランタイム・ライブラリなどを、移植しやすい実行単位にまとめます。開発と本番で依存関係が異なり、「自分の環境では動く」という問題を減らせます。

イメージから、 実行中のコンテナへFLOW
コンテナイメージコード・実行環境・依存関係
コンテナイメージから起動する
イメージは配布する設計物、コンテナはその実行状態です。外部のデータ・秘密情報・環境固有の設定は別に管理します。

数が増えると、起動・停止、配置、状態の監視、更新、台数調整をまとめて管理する必要があります。これをコンテナオーケストレーションと呼びます。コンテナは仮想マシンそのものではなく、通常はホストOSのカーネルを共有します。

04

保存・管理・実行、 3つの役割を分ける

同じ「コンテナ」でも、 担当する仕事が違うROLE LAYERS
Amazon ECRイメージを保存・取得
Amazon ECS / EKSコンテナの配置と実行を管理
Amazon EC2 / Fargate実際の計算資源を提供
上から下への包含ではなく、3つの役割の整理です。ECRから取得したイメージを、選んだ実行基盤で動かします。
コンテナサービスの役割
選択する層 サービス 判断の軸
保存場所 Amazon ECR コンテナイメージを保管・配布する
オーケストレーション Amazon ECS AWSのサービスと統合し、コンテナを管理する
オーケストレーション Amazon EKS マネージドなKubernetesを使う
実行基盤 Amazon EC2 OS・ホストの構成を細かく制御する
実行基盤 AWS Fargate 対応する構成でホスト管理をAWSに任せる

ECSを選ぶことと、Fargateを選ぶことは別の判断です。ECSでもEC2を実行基盤にできます。EKSはKubernetesの制御プレーンを管理しますが、ワーカーノードやアプリの管理範囲は実行方法によって変わります。

公式資料:ECSと実行基盤 ↗
05

目的に合う、 実行サービスを選ぶ

すべての処理でEC2を直接組み立てる必要はありません。構築したい環境や運用方法が決まっている場合は、目的に合わせたサービスを使えます。

追加で知っておく4つの選択肢
サービス 何を助けるか 使う場面
Elastic Beanstalk コードと設定から実行環境を構築・管理 Webアプリのデプロイ。基盤のEC2等にもアクセスできる
AWS Batch ジョブのスケジュールと計算資源の調整 大量の計算・分析をまとめて実行する
Amazon Lightsail 簡単に始められる構成と料金体系 小規模なWebサイトやアプリを運用する
AWS Outposts AWS基盤をオンプレミスへ拡張 低遅延やデータの配置場所に要件がある
06

重要ポイントと、 理解の確認

  • マネージド・サーバーレスは、管理をAWSに任せる範囲の違い。
  • Lambdaはイベントをきっかけに関数を実行する。
  • ECRは保存、ECS / EKSは管理、EC2 / Fargateは実行基盤。
  • 目的別サービスも含め、制御と運用負荷のバランスで選ぶ。
Q1. サーバーレスでも、利用者に残る責任は?

コード、依存関係、データ、権限、処理の再試行や上限への対応などです。

Q2. ECSとFargateは、同じ層の代替サービス?

違います。ECSはコンテナの管理、Fargateは実行基盤です。ECSとEC2という組み合わせもあります。

Q3. ECRへイメージを保存すると、アプリも実行される?

保存だけでは実行されません。オーケストレーションと実行基盤を選んで起動します。

Q4. EC2の自由度が高いと、何が増える?

OSやホストの構成・更新など、利用者が管理する作業も増えます。

07

確認に使った、 公式資料

元データ:scripts/module3.txt。提供されたトランスクリプトを意味のまとまりで再構成し、誤解しやすい箇所を以下のAWS公式資料で確認しました(2026年10月6日)。実際の操作・仕様・料金は最新版を確認してください。