Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
AWSにおけるコンテナサービスの変化と利用ユーザに求められることとは?
yoshitaka KOITABASHI
December 09, 2022
Technology
8
1.1k
AWSにおけるコンテナサービスの変化と利用ユーザに求められることとは?
yoshitaka KOITABASHI
December 09, 2022
Tweet
Share
Other Decks in Technology
See All in Technology
USB PD で迎える AC アダプター大統一時代
puhitaku
2
1.8k
plotlyで動くグラフを作る
kosshi
0
740
もし本番ネットワークをまるごと仮想環境に”コピー”できたらうれしいですか? / janog51
corestate55
0
330
ML PM, DS PMってどんな仕事をしているの?
line_developers
PRO
1
210
cdk deployに必要な権限ってなんだ?
kinyok
0
140
日本ディープラーニング協会主催 NeurIPS 2022 技術報告会講演資料
tdailab
0
1k
創業1年目のスタートアップでAWSコストを抑えるために取り組んでいること / How to Keep AWS Costs Down at a Startup
yuj1osm
3
2k
OCIコンテナサービス関連の技術詳細 /oke-ocir-details
oracle4engineer
PRO
0
760
SPA・SSGでSSRのようなOGP対応!
simo123
2
150
それでもどうしてRecoilを使うのか / Harajuku.ts Meetup Recoil
okunokentaro
13
3.7k
PCL (Point Cloud Library)の基本となぜ点群処理か_2023年_第2版.pdf
cvmlexpertguide
0
130
SmartHRからOktaへのSCIM連携で作り出すHRドリブンのアカウント管理
jousysmiler
1
110
Featured
See All Featured
Optimizing for Happiness
mojombo
365
64k
VelocityConf: Rendering Performance Case Studies
addyosmani
317
22k
How GitHub (no longer) Works
holman
298
140k
Statistics for Hackers
jakevdp
785
210k
For a Future-Friendly Web
brad_frost
166
7.7k
Building Applications with DynamoDB
mza
85
4.9k
Large-scale JavaScript Application Architecture
addyosmani
499
110k
Producing Creativity
orderedlist
PRO
335
37k
How New CSS Is Changing Everything About Graphic Design on the Web
jensimmons
214
12k
Infographics Made Easy
chrislema
235
17k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
13
5.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
226
130k
Transcript
AWSにおけるコンテナサービスの変化と 利用ユーザに求められることとは? KOITABASHI Yoshitaka 2022/12/9 yoshii0110 1
2022/12/9 yoshii0110 2 KOITABASHI Yoshitaka @yoshii0110 Full Cycle Developer KDDIアジャイル開発センター株式会社
AWS App Runner, AWS Fargate, Amazon SQS 🥷 🏢 💕
本日のセッションで話すこと・・・ • 話すこと • AWS におけるコンテナサービスについて • AWS App Runner
/ AWS Copilot やばいという話 • 責任共有モデルの話 • コンテナセキュリティと補助ツール • 話さないこと • コンテナについてや AWS の各コンテナサービスの詳細 • コンテナイメージ以外のセキュリティ 2022/12/9 yoshii0110 3
AWS におけるコンテナサービス 2022/12/9 yoshii0110 4 コンテナオーケストレーションサービス イメージレジストリ データプレーン 関連サービス Copilot
CLI AWS Proton AWS App Mesh AWS Cloud Map AWS App Runner Amazon CloudWatch Container Insights Amazon ECS Amazon EKS Amazon ECR
コンテナサービス周りの変化 2014 2015 2016 2017 2018 2019 2020 2021 2022
2022/12/9 yoshii0110 5 Amazon ECS Amazon ECR AWS Fargate Amazon EKS AWS Copilot AWS App Runner AWS Proton
各サービスを組み合わせると 2022/12/9 yoshii0110 6 Amazon EKS Amazon ECR Amazon ECS
Container Container Container Container Container Container Container Container コンテナの 実行環境 コンテナ オーケストレータ イメージレジストリ AWS Fargate Amazon EC2
Amazon ECS を使用したアーキテクチャ例 2022/12/9 yoshii0110 7 • ネットワークの設定 • Amazon
VPC • ELB など • コンテナ実行環境の設定 • Amazon EC2 • AWS Fargate • オンプレ (AWS Outposts/ EKS Anywhere / ECS Anywhere) • Edge / 5G (AWS Local Zone / AWS Wavelength) • コンテナイメージのBuild から Deploy の自動化設定 • Codeシリーズ
めんどくさくないですか? 2022/12/9 yoshii0110 8
AWS App Runner 2022/12/9 yoshii0110 9 Webアプリを仕様に合わせデプロイすると・・・? • コンテナ管理とかVPC周り •
ALB、NLB • scaling • 自動化するならcodebuildとか • => App Runnerがこれらをまとめて (隠蔽して) 提供してくれる。
AWS App Runner 上で アプリケーションをデプロイ 2022/12/9 yoshii0110 10
AWS App Runner 上のアプリケーションにおける ネットワーク設定 2022/12/9 yoshii0110 11
AWS Copilot • Amazon ECS CLI の後継にあたるもの • ECS CLI
は、Amazon ECS 環境に対する コンテナデプロイのためのツール • AWS Copilot がなぜ登場したのかいうと、 より ECS (App Runnerへのデプロイも対応)でコンテナを実行したいとなった時の ワークフローをシンプルにするためというモチベーションがある 2022/12/9 yoshii0110 12 https://github.com/aws/copilot-cli/
AWS Copilot を触ってみると Copilot CLI のインストール 2022/12/9 yoshii0110 13 Dockerfileを用意
Copilot CLI のコマンド実行
AWS Copilot で作成した資源の見え方 2022/12/9 yoshii0110 14 • 既存のコンテナサービスへのデプロイのワークフローを シンプルにするだけなので、資源自体は存在
責任共有モデル 2022/12/9 yoshii0110 15 https://aws.amazon.com/jp/compliance/shared-responsibility-model/
責任共有モデルの違い 2022/12/9 yoshii0110 16 App Language Runtime OS EC2 Instance
Hypervisor Hypervisor Customer responsibility AWS responsibility Amazon EC2 Amazon ECS AWS Fargate AWS App Runner Physical Server(s) Physical Server(s) Physical Server(s) ALB CI/CD App Language Runtime App Language Runtime Container Orchestration Agent OS EC2 Instance Customer responsibility AWS responsibility Container Orchestrator ALB CI/CD ALB CI/CD Hypervisor App Language Runtime App Language Runtime Container Orchestration Agent OS EC2 Instance Container Orchestrator Physical Server(s) ALB CI/CD Hypervisor App Language Runtime App Language Runtime Container Orchestration Agent OS EC2 Instance Container Orchestrator OR Auto Scaling Auto Scaling
コンテナセキュリティの全体像 2022/12/9 yoshii0110 17 コンテナイメージ イメージレジストリ オーケストレータ 実行されている コンテナ コンテナのホスト
• イメージの脆弱性 • イメージの設定内容 • シークレットな情報 • etc.. • レジストリへの接続 • レジストリ内のイメージ • 認証認可 • etc.. • 管理者アクセス • オーケストレータノードの 信頼性 • etc.. • ランタイムの脆弱性 • コンテナへのアクセス • アプリの脆弱性 • etc.. • 共有カーネル • ホスト OS の脆弱性 • 不適切な ユーザアクセス権限 • ホスト OS ファイルシス テムの改ざん • etc.. NIST SP800-190「アプリケーションコンテナセキュリティガイド」 https://www.ipa.go.jp/files/000085279.pdf
コンテナイメージ作成の補助となる静的解析ツール ① 2022/12/9 yoshii0110 18 https://docs.docker.jp/develop/develop-images/dockerfile_best-practices.html hadolint • Dockerfile の静的解析を行なってくれる
lint ツール • Dockerfile のベストプラクティスに従っているかをチェック • VS Codeのエクステンションも存在 https://github.com/hadolint/hadolint brew 経由でのインストール Hadolint の実行コマンド例
コンテナイメージ作成の補助となる静的解析ツール ② 2022/12/9 yoshii0110 19 dockle • コンテナイメージのセキュリティ診断ツール • コンテナイメージの静的解析
• ベストプラクティスに従っているかをチェック • またベースとする OS イメージの設定内容に関するもチェック https://github.com/hadolint/hadolint brew 経由でのインストール dockle の実行コマンド例
コンテナイメージ作成の補助となる脆弱性スキャンツール ① 2022/12/9 yoshii0110 20 Trivy • コンテナイメージの脆弱性スキャン • OS
パッケージと言語特有の依存関係に対するスキャン • Dockerfile を含む IaC の静的解析 https://github.com/hadolint/hadolint brew 経由でのインストール trivy の実行コマンド例
コンテナイメージ作成の補助となる脆弱性スキャンツール ② 2022/12/9 yoshii0110 21 Amazon Inspector • コンテナイメージの脆弱性スキャン •
基本スキャン イメージをプッシュしたタイミングで手動/自動で実施 • 拡張スキャン イメージのプッシュ時および継続的に Inspector による プログラミング言語のパッケージを含めたスキャンも実施 https://docs.aws.amazon.com/ja_jp/inspector/latest/use r/enable-disable-scanning-ecr.html
まとめ • AWS におけるコンテナサービスの変化 • 責任共有モデルの aws 側が責任を持つ領域が増えたサービスが 生まれている •
正直利用するときはユースケースに依存 => カスタマイズを細かくしたいなどの要件を満たせないといった場合がある • より運用が楽になるサービスを使えるのであれば検討を • その際にユーザ側に求められる責任範囲には注視する 2022/12/9 yoshii0110 22
一緒に働くメンバー大募集中!! 2022/12/9 yoshii0110 23 全社員がアジャイルネイティブ。 今年設立したばかりの会社!!🏢 ワイワイやっているので、興味あればぜひ!✨