Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
第175回 雲勉 Amazon ECS入門:コンテナ実行の基本を学ぶ
Search
iret.kumoben
September 17, 2025
Technology
180
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
第175回 雲勉 Amazon ECS入門:コンテナ実行の基本を学ぶ
下記、勉強会での資料です。
https://youtu.be/uGiKbg92gYI
iret.kumoben
September 17, 2025
More Decks by iret.kumoben
See All by iret.kumoben
第182回 雲勉 【Gemini 3.0 Pro】AI ベンチマーク徹底比較!他モデルに比べ優れている点まとめ
iret
0
130
第181回 雲勉 WEB制作者のちょっとした面倒をAWSで解決!Amazon S3とAWS Lambda活用術
iret
0
110
第180回 雲勉 Abuse report の調査・確認方法について
iret
0
130
第179回 雲勉 AI を活用したサポートデスク業務の改善
iret
0
180
第178回 雲勉 Amazon EKSをオンプレで! Amazon EKS Anywhere 実践構築ガイド
iret
1
150
第177回 雲勉 IdP 移行を楽に!Amazon Cognito でアプリへの影響をゼロにするアイデア
iret
0
150
第176回 雲勉 VPC 間サービス接続を考える!Private Service Connect 入門
iret
0
130
第174回 雲勉 Google Agentspace × ADK Vertex AI Agent Engineにデプロイしたエージェントを呼び出す
iret
0
200
第173回 雲勉 ノーコードで生成 AI アプリを構築!Google Cloud AI Applications(旧 Vertex AI Agent Builder)入門
iret
0
180
Other Decks in Technology
See All in Technology
2026-09-08 そのJavaモダナイゼーション、AIに丸投げで大丈夫?IBM Bobで変わる品質と効率
yutanonaka
1
200
猫でもわかるKiro Web
kentapapa
1
110
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
310
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
1
300
エージェントはローカル、検証はMicroVM — Lambda MicroVMsでつくるServerless CI
fujioka6789
3
800
Kiro Meetup #8 Kiro アップデート (2026/3/21〜2026/9/24)
katzueno
1
240
AWS FinOps Agent 結局何が得意なの?
siromi
0
170
Vibe Coding で作ったプロダクトをどう安全に動かすか / How to Safely Run Products Built with Vibe Coding
glidenote
0
670
Mastering Agentic Development: Harness Engineering for Effective Coding Agents
konippi
3
570
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
1
510
DORA_Metrics.pdf
wagnerfusca
1
100
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
12k
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
2
34k
Are puppies a ranking factor?
jonoalderson
2
3.9k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
530
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Embracing the Ebb and Flow
colly
88
5.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
4.9k
Building the Perfect Custom Keyboard
takai
2
890
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
710
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
490
Automating Front-end Workflow
addyosmani
1369
210k
Transcript
第175回 雲勉 Amazon ECS入門:コンテナ実行の基本を学ぶ
講師自己紹介 ◼ 水野 永遠 • エンタープライズクラウド事業部 • 2024年度 アイレット 新卒入社
• インフラエンジニアとしてAWS環境の設計・構築に従事 • ご質問は YouTubeのコメント欄で受け付けております。 後日回答させていただきます! 2
アジェンダ 1. 受講対象とゴールについて 2. ECSの基本 3. 実行パターンと構築の流れ 4. 他サービスとの連携 5.
まとめ 3
1. 受講対象とゴールについて 4
1.受講対象とゴールについて ◼ 対象者 • 受講対象:Amazon ECS(以降、ECSと称する。) に初めて触れる方/少し触れたが整理したい方 ◼ ゴール •
ECSの全体像(クラスター/タスク/サービスなど)が説明できる • 動作するまでの構成や流れが掴める • 他のAWSサービスとのつながりがイメージできる 5
2. ECSの基本 6
2.ECSの基本 ◆ ECSとは? AWSが提供するマネージドなコンテナオーケストレーションサービス Amazon ECS 特徴 • フルマネージド:インフラ基盤の管理をAWSへ委任可能 •
高いスケーラビリティ: 負荷に応じた、コンテナ数の自動調整 • AWSサービスとの統合: 他のAWSサービスとのシームレスな連携 7
2.ECSの基本 ◆ コンテナとは? アプリケーションを動かすための環境をまとめる技術 ミドルウェア アプリ コンテナ コンテナエンジン ホストOS 物理サーバー
利点 • ポータビリティ: あらゆる環境での一貫した動作の実現 • 効率性: 仮想マシン比での高速な起動と、高いリソース集約率 ミドルウェア アプリ VM ハイパーバイザー ホストOS 物理サーバー ゲストOS ミドルウェア アプリ VM ゲストOS ミドルウェア アプリ VM ゲストOS ミドルウェア アプリ コンテナ ミドルウェア アプリ コンテナ 仮想マシン(VM)とコンテナの比較 8
2.ECSの基本 ◼ ECSを構成する主なコンポーネント • クラスター:タスクを実行するための、コンピューティングリソースの論理的な集合体 • タスク定義:「使用するイメージ」「CPU/メモリ」などを定義したテンプレート • タスク:タスク定義に基づいて起動された、コンテナの実行インスタンスそのもの •
サービス:タスクの常時稼働を維持・管理する機能 クラスター サービス タスク コンテナ タスク定義 •Memory: 2048 MiB •Image:your-account.dkr.ecr.ap-northeast- 1.amazonaws.com/your-app:v1.0 •CPU: 1 vCPU •Port Mappings: 80:8080 •Logging: CloudWatch Logs •IAM Role: ecsTaskExecutionRole, myAppTaskRole 設定値例 9
3. 実行パターンと構築の流れ 10
3.実行パターンと構築の流れ 11 ◼ ECSを構成する2つの起動タイプについて サーバーレス・コンピューティングエンジン ユーザーはサーバーのプロビジョニングやOSの管理を 一切意識することなく、タスクの実行に必要なリソー スを定義するだけでアプリケーションを実行できる アプリケーションの実行環境そのものを提供できる Fargate
起動タイプ EC2 起動タイプ EC2インスタンスの集合を、ECSのコンピューティン グリソースとして利用する方式 事前にEC2インスタンスを定義・起動し、クラス ターに登録しておく必要がある インフラストラクチャをユーザーが完全に制御し、 ワークロードに合わせて最適化できる
◼ Fargate と EC2の比較 凡例: ユーザー管理 / AWS管理 階層 /
項目 Fargateの場合 EC2の場合 備考(なぜ違いが生まれるか) アプリケーションコード どちらの実行方法でも、アプリ開発はユーザーの 役割 コンテナイメージの管理 (ビルド、Amazon ECRへの保管) Dockerイメージの作成と管理はユーザーが行う タスク定義 (CPU/メモリ、IAMロールなど) コンテナの設計図作成はユーザーが行う サーバーのキャパシティ管理 (インスタンス数の増減) Fargateの利点 EC2ではAuto Scaling Groupの設定が必要 ECSエージェント / ランタイム (Dockerなど) Fargateでは意識不要 EC2では導入・更新が必要 ホストOSの管理 (セキュリティパッチ適用など) FargateはOSを管理不要 EC2ではOSの選定と維持管理が必要 仮想サーバー (EC2インスタンス) Fargateではインスタンスを意識しない EC2ではインスタンスのタイプ選定・起動が必要 物理インフラ (データセンター、サーバー、ネットワーク) クラウドの基本的なメリット 物理的な管理はAWSが行う 3.実行パターンと構築の流れ 12
3.実行パターンと構築の流れ 13 ◼ ECSを利用したアプリケーション公開までの主要なステップ コンテナイメージの準備 STEP 01 タスク定義の作成 STEP 02
サービスの作成と公開 STEP 03 動作確認 STEP 04 アプリケーションコードを コンテナ化し、 AWSのコンテナレジストリ である「Amazon ECR」 (以降、ECRと称する。) にプッシュ(保管)する ECRに保管した イメージを使い、 CPU/メモリ要件 必要なIAMロール ポートマッピング などを定義した 「タスク定義」を 作成する タスクを常時稼働 させるための 「サービス」を作成 この際、外部からの トラフィックを 受け付けるための 「Application Load Balancer (ALB)」と連 携させる ALBに割り当てられた DNS名を使い、 ブラウザから アプリケーションに アクセスする
3.実行パターンと構築の流れ 14 ◼ 構成図
3.実行パターンと構築の流れ 15 ◼ 構成図 作業対象外:VPC、Subnet、 Internet Gateway、NAT Gateway、Security Group、ALBの作成 前提:作業対象外のリソースはすでに構築済みとする
3.実行パターンと構築の流れ 16 ◼ STEP 01:コンテナイメージの準備
3.実行パターンと構築の流れ 17 ◼ STEP 01:コンテナイメージの準備 「リポジトリを作成」をクリック
3.実行パターンと構築の流れ 18 ◼ STEP 01:コンテナイメージの準備 「リポジトリ名」を入力
3.実行パターンと構築の流れ 19 ◼ STEP 01:コンテナイメージの準備 リポジトリ作成完了 URIを控えておく
3.実行パターンと構築の流れ 20 ◼ STEP 01:コンテナイメージの準備 ②コンテナイメージがプッシュされていないことを確認 ①「images」をクリック
3.実行パターンと構築の流れ 21 ◼ STEP 01:コンテナイメージの準備 コンテナに配置するhtmlファイルと Dockerfileを作成
3.実行パターンと構築の流れ 22 ◼ STEP 01:コンテナイメージの準備 ① ECRへのログインとイメージのビルド ②イメージにタグ付けをし、ECRにプッシュ
3.実行パターンと構築の流れ 23 ◼ STEP 01:コンテナイメージの準備 イメージがプッシュされた後、 コンソール画面に表示されているか確認
3.実行パターンと構築の流れ 24 ◼ STEP 02:タスク定義の作成
3.実行パターンと構築の流れ 25 ◼ STEP 02:タスク定義の作成 「新しいタスク定義の作成」をクリック
3.実行パターンと構築の流れ 26 ◼ STEP 02:タスク定義の作成 タスク定義ファミリー名を入力 起動タイプ「AWS Fargate」を指定する
3.実行パターンと構築の流れ 27 ◼ STEP 02:タスク定義の作成 コンテナ名とECRのイメージURLを入力 ALB利用時のポート設定 コンテナポート :コンテナ内のアプリケーションがリクエストを受けるポート ALBリスナーポート
:ユーザーからのアクセスを受け付ける公開用の玄関口 役割分担:ALBで受けた通信を、このコンテナポートへ転送する構成
3.実行パターンと構築の流れ 28 ◼ STEP 02:タスク定義の作成 タスク定義の作成完了
3.実行パターンと構築の流れ 29 ◼ STEP 03:サービスの作成と公開 作業順 ① クラスター作成 ② サービス作成
③ タスク起動確認 ① ② ③
3.実行パターンと構築の流れ 30 ◼ STEP 03:サービスの作成と公開 ①クラスター作成 「クラスターの作成」をクリック
3.実行パターンと構築の流れ 31 ◼ STEP 03:サービスの作成と公開 ①クラスター作成 クラスター名を入力 AWS Fargateを選択
3.実行パターンと構築の流れ 32 ◼ STEP 03:サービスの作成と公開 ①クラスター作成 クラスターが作成されているか確認してください。
3.実行パターンと構築の流れ 33 ◼ STEP 03:サービスの作成と公開 ②サービス作成 「サービスの作成」をクリック
3.実行パターンと構築の流れ 34 ◼ STEP 03:サービスの作成と公開 ②サービス作成 作成したタスク定義ファミリーを選択 最新のタスク定義のリビジョンを選択 サービス名を入力
3.実行パターンと構築の流れ 35 ◼ STEP 03:サービスの作成と公開 ②サービス作成 事前に作成したVPC、Subnet、 Security Groupを指定
3.実行パターンと構築の流れ 36 ◼ STEP 03:サービスの作成と公開 ②サービス作成 必要なタスク数を入力 (複数のAZに配置する場合は「2」に設定)
3.実行パターンと構築の流れ 37 ◼ STEP 03:サービスの作成と公開 ②サービス作成 ALBとの関連付け 事前に作成したALBとターゲットグループを指定 これにより、ALBが受けたトラフィックが、 このサービスのタスクへ転送される構成となる。
3.実行パターンと構築の流れ 38 ◼ STEP 03:サービスの作成と公開 ②サービス作成 サービスの作成を確認
3.実行パターンと構築の流れ 39 ◼ STEP 03:サービスの作成と公開 ③タスク起動確認
3.実行パターンと構築の流れ 40 ◼ STEP 04:動作確認 DNS名をコピー
3.実行パターンと構築の流れ 41 ◼ STEP 04:動作確認 コンテナに配置したindex.htmlが表示されるか確認
4.他サービスとの連携 42
4.他サービスとの連携 ◼ ECSを中心としたエコシステムの形成 Amazon ECR Amazon VPC Amazon CloudWatch Amazon
ECS IAM 開発環境でビルドしたイメージを 本番環境へ 一貫性のあるデプロイパイプライン を実現 ログ、メトリクス、アラームを管理 コンテナのパフォーマンス監視から 異常検知、自動復旧まで、 統合された可観測性を確保 タスク実行に必要な権限だけを付与 最小権限の原則を徹底し、 セキュリティリスクを極小化 タスクをプライベートネットワークに 配置し、ALBや他タスクからの 通信のみ許可 堅牢なセキュリティを構築 ECSとECRの連携 ECSとIAMの連携 ECSと CloudWatch の連携 ECS と VPCの連携 43
5.まとめ 44
5.まとめ ◼ 本日のまとめ 【Point 2】アプリケーション公開までの流れ • アプリケーションのイメージをECRに保管 • 次にタスク定義でコンテナの仕様(設計図)を決定 •
設計図を元にサービスがタスクを起動 • 最終的にALBと連携させることで、インターネットへ公開される 【Point 1】ECSを構成する主要な要素 • クラスター:タスクが実行される「場所」 • タスク:実際に動いているコンテナの「実体」 • サービス:タスクの数を維持する「管理者」 • タスク定義:コンテナを定義する「設計図」 【Point 3】AWSサービス連携の重要性 • 適切に連携を行うことで、堅牢なセキュリティかつスケーラブルなシステムが実現できる 45