Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第84回 雲勉【オンライン:初心者向け】ECS入門 ~ CloudFront + ELB + ...
Search
Y.Sumikura
September 16, 2022
Technology
1
3.2k
第84回 雲勉【オンライン:初心者向け】ECS入門 ~ CloudFront + ELB + ECS FargateでWebサイトを公開 ~
Y.Sumikura
September 16, 2022
Tweet
Share
More Decks by Y.Sumikura
See All by Y.Sumikura
第103回 雲勉【オンライン】インフラエンジニアにおける ChatGPT の便利な使い方と注意点
sumikurayurie1125
1
290
第101回 雲勉【オンライン】VPC から始めるネットワーク入門
sumikurayurie1125
0
180
第99回 雲勉【オンライン:初心者向け】Infrastructure as Code (IaC) 入門 〜TerraformとAnsibleを使ってみよう〜
sumikurayurie1125
0
240
第96回 雲勉【オンライン:初心者向け】インフラエンジニアのKubernetes入門
sumikurayurie1125
0
250
第8回 雲勉LT【オンライン:中級者向け】AthenaでS3上のデータとDynamoDBのデータを結合する
sumikurayurie1125
0
370
第93回 雲勉【オンライン:初心者向け】CI/CDって結局何なの?インフラエンジニアがCode3兄弟を学ぶ
sumikurayurie1125
11
3.4k
第7回 雲勉LT【オンライン:初心者向け】サーバレスコンテナサービス Lambda, Fargate, App Runnerの特徴、違いを解説
sumikurayurie1125
3
660
第6回 雲勉LT【オンライン:初心者向け】2022年 気になったアップデート情報:「RDSコンソールの、EC2ワンクリック接続オプション」について
sumikurayurie1125
0
190
第5回 雲勉LT【オンライン:初心者向け】GCのサービスだけでCI_CDを構築してみよう
sumikurayurie1125
0
72
Other Decks in Technology
See All in Technology
QA組織のAI戦略とAIテスト設計システムAITASの実践
sansantech
PRO
1
210
SaaSに宿る21g
kanyamaguc
2
180
Bref でサービスを運用している話
sgash708
0
200
昔話で振り返るAWSの歩み ~S3誕生から20年、クラウドはどう進化したのか~
nrinetcom
PRO
0
110
AI時代のシステム開発者の仕事_20260328
sengtor
0
300
How to install a gem
indirect
0
1.8k
Laravelで学ぶOAuthとOpenID Connectの基礎と実装
kyoshidaxx
4
1.9k
GitHub Advanced Security × Defender for Cloudで開発とSecOpsのサイロを超える: コードとクラウドをつなぐ、開発プラットフォームのセキュリティ
yuriemori
1
110
韓非子に学ぶAI活用術
tomfook
3
1.1k
「捨てる」を設計する
kubell_hr
0
420
SaaSの操作主体は人間からAIへ - 経理AIエージェントが目指す深い自動化
nishihira
0
110
CloudFrontのHost Header転送設定でパケットの中身はどう変わるのか?
nagisa53
1
220
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
860
Abbi's Birthday
coloredviolet
2
5.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Done Done
chrislema
186
16k
Mobile First: as difficult as doing things right
swwweet
225
10k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
150
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
エンジニアに許された特別な時間の終わり
watany
106
240k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.7k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
160
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Transcript
第84回 雲勉 2022/09/15 アイレット株式会社 ECS入門 ~ CloudFront + ELB +
ECS FargateでWebサイトを公開 ~
0. 自己紹介 2 松田 啓佑 • 所属 ◦ クラウドインテグレーション事業部 構築第2セクション
• 普段の業務 ◦ AWSを中心としたインフラ設計/構築/運用 ◦ NewRelic/Datadogを利用した監視の設計/実装 • 好きなAWSサービス ◦ ECS ◦ StepFunctions
本日のゴール 3 - ECSとFargateが何かを理解する - ECSを利用した基本的なシステム構築手法をイメージできるようになる
本日のアジェンダ 4 - 0. 自己紹介 - 1. ECS、Fargateとは(19:05-19:25) - 2.
ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する (19:25-50) - 3. 質疑応答 (19:50-20:00)
5 1. ECS、Fargateとは
1. ECS、Fargateとは 6 • ECSとは ◦ AWSが提供するフルマネージドコンテナオーケストレーションサービス ◦ オーケストレーション =
管理
1. ECS、Fargateとは 7 オーケストレーションがない世界(管理対象1つ) 管理対象が少なければ問題はないが....
1. ECS、Fargateとは 8 オーケストレーションサービスがない世界(管理対象複数) 対象が増えると管理が煩雑になり、オペレーションミス発生などを招いてしまう!
1. ECS、Fargateとは 9 オーケストレーションがある世界 面倒な管理作業はオーケストレーションサービスにお任せ!
1. ECS、Fargateとは 10 • ECS(Elastic Container Service)とは ◦ AWSが提供するフルマネージドコンテナオーケストレーションサービス ◦
オーケストレーション = 管理 ◦ コンテナをいい感じに管理してくれるサービス
1. ECS、Fargateとは 11 AWSのオーケストレーションサービス • ECS(Elastic Container Service) ◦ 小/中規模ワークロード向け
◦ AWS独自ソフトウェアがベース • EKS(Elastic Kubernetes Service) ◦ 大規模ワークロード向け ◦ Kubernetesがベース
1. ECS、Fargateとは 12 • ECSとは ◦ AWSが提供するフルマネージドコンテナオーケストレーションサービス ◦ オーケストレーション =
管理 ◦ コンテナをいい感じに管理してくれるサービス • Fargateとは ◦ ECSで利用可能なサーバレスコンテナ実行環境 ◦ ECSの基盤となるインスタンスの管理をオフロードする ◦ つまり管理者はインスタンスの運用から解放される
1. ECS、Fargateとは 13 • AWSのコンテナサービスはコントロールプレーンとデータプレーンの2つで構成される • コントロールプレーン = ECS、データプレーン =
Fargate • データプレーンには2種類ある [コントロールプレーン] コンテナを管理する機能 [データプレーン] コンテナが稼働する リソース環境
1. ECS、Fargateとは 14 [ データプレーン EC2 ] • インスタンスを管理する必要がある •
インスタンスを柔軟に設定/調整することができる [ EC2 ] [ Fargate ] [ データプレーン Fargate ] • インスタンスの管理が不要! • EC2に比べて若干コストが高い
1. ECS、Fargateとは 15 [ データプレーン EC2 ] • インスタンスを管理する必要がある •
インスタンスを柔軟に設定/調整することができる [ EC2 ] [ Fargate ] [ データプレーン Fargate ] • インスタンスの管理が不要 • EC2に比べて若干コストが高い 特別な理由がない限りは Fargateを使うべし!
1. ECS、Fargateとは 16 - クラスター - タスク - タスク定義 -
サービス ECSの構成要素
1. ECS、Fargateとは 17 - クラスター - タスク - タスク定義 -
サービス ECSの構成要素 [クラスター] - サービスとタスクを分離するための論理グループ - 実行環境やIAM権限の境界線 クラスター = ただの箱
1. ECS、Fargateとは 18 - クラスター - タスク - タスク定義 -
サービス ECSの構成要素 [タスク] - アプリケーションの実行単位 - 1つ以上のコンテナから構成される - (同じタスクのコンテナは同じホスト上で稼働する ) タスク = アプリケーションを実行するコンテナ群
1. ECS、Fargateとは 19 - クラスター - タスク - タスク定義 -
サービス ECSの構成要素 [タスク定義] - タスクを構成するテンプレート - アプリケーションを構成する 1つ以上のコンテナを定義する - JSON形式で記述される タスク定義 = タスクの金型
1. ECS、Fargateとは 20 - クラスター - タスク - タスク定義 -
サービス ECSの構成要素 [サービス] - 起動タイプを指定(Fargate or EC2) - タスク実行数を定義 - タスク数を維持 - ELBと連携 サービス = タスクの管理人
1. ECS、Fargateとは 21 コンテナの実行方法 ECSにおいてコンテナを実行させる方法は2つ • タスクから実行 ◦ コンテナが終了したら、タスクも終了 ◦
バッチ処理などにて利用する • サービスから実行 ◦ 指定したタスク数を維持する ◦ ELBなどの他サービスとの連携が可能 ◦ Webアプリケーションなどの常時起動処理にて利用する
1. ECS、Fargateとは 22 ECSで稼働するアプリケーションの更新方法
1. ECS、Fargateとは 23 ECSで稼働するアプリケーションの更新方法 タスク定義の新しいリビジョンを作成して、サービスにてリビジョンの指定を更新する
24 2. ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する
2. ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する 25 ◆実施すること NGINXコンテナをECS Fargate上で稼働させ、CloudfrontとALBを利用して インターネットにWebサーバを公開する! ◆ゴール WebブラウザからCloudfrontのエンドポイントに接続したら、NGINXのWebサイトが
ブラウザに表示される!
2. ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する 26 - 0. 事前準備 - 1. 構築
- 1.1 コンテナイメージの作成、ECRへPUSH - 1.2 ALBの作成 - 1.3 クラスターの作成 - 1.4 タスク定義の作成 - 1.5 サービスの作成 - 1.6 Cloudfrontディストリビューションの作成
2. ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する 27 成果物
2. ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する 28 - 0. 事前準備 - 1. 構築
- 1.1 コンテナイメージの作成、ECRへPUSH - 1.2 ALBの作成 - 1.3 クラスターの作成 - 1.4 タスク定義の作成 - 1.5 サービスの作成 - 1.6 Cloudfrontディストリビューションの作成
2. ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する 29 ネットワーク周りのリソースを作成する - VPC - インターネットGW -
サブネット(ルートテーブル) - Public x 2 - デフォルトルート : インターネットGW - Private x 2 - デフォルトルート:NAT GW - NAT GW - セキュリティグループ - ALB用 - Ingress : 80 : ALL - Egress : ALL : ALL - ECS用 - Ingress : 80 : from ALB sg - Egress : ALL : ALL
2. ECS Fargate、ELB、CloudFrontを使用してWebサイトを公開する 30 - 0. 事前準備 - 1. 構築
- 1.1 コンテナイメージの作成、ECRへPUSH - 1.2 ALBの作成 - 1.3 クラスターの作成 - 1.4 タスク定義の作成 - 1.5 サービスの作成 - 1.6 Cloudfrontディストリビューションの作成
31 3. 質疑応答