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
AWS App Runnerがそろそろ本番環境でも使い物になりそう
Search
n1215
December 20, 2022
Programming
15k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS App Runnerがそろそろ本番環境でも使い物になりそう
LTで使ったAWS App Runnerのスライドです
n1215
December 20, 2022
More Decks by n1215
See All by n1215
面倒なのは嫌なのでコンテナのマネージドサービスの極振りしたいと思います。
n1215
8
3.6k
テスト環境のインフラ・運用コストを下げたい話〜全部入りEC2を超えていけ
n1215
4
2.2k
RoadRunnerの世界 〜 Yet Another Alt PHP-FPM
n1215
2
6k
ブラウザから始めるgRPC 〜 gRPC-WebにPHPを添えて
n1215
1
6.7k
PHP8時代のWebアプリケーションフレームワークの話をしよう
n1215
7
7.5k
PHPとEventSauceで始めるイベントソーシングアプリケーション
n1215
9
4.6k
形から入ったドメイン駆動設計によるゲーム開発の光と闇
n1215
13
8.3k
PHPでもgRPCサーバを立てたいだけの人生だった
n1215
7
10k
PSR-15 Request Handlerから理解するMiddlewareの仕組み
n1215
3
2.7k
Other Decks in Programming
See All in Programming
A2UI という光を覗いてみる
satohjohn
1
170
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
200
OS アップデート対応の取り組み方がもっと共有されてほしい
andpad
0
110
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
180
Oxlintのカスタムルールの現況
syumai
6
1.2k
はてなアカウント基盤 State of the Union
cockscomb
1
1.2k
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
160
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
7.1k
Creating Composable Callables in Contemporary C++
rollbear
0
180
AI時代のUIはどこへ行く?その2!
yusukebe
22
7.7k
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
770
自作OSでスライド発表する
uyuki234
0
3.3k
Featured
See All Featured
The browser strikes back
jonoalderson
0
1.3k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
210
Building Adaptive Systems
keathley
44
3.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Typedesign – Prime Four
hannesfritz
42
3.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Writing Fast Ruby
sferik
630
63k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
460
The Limits of Empathy - UXLibs8
cassininazir
1
380
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
200
Transcript
AWS App Runnerがそろそろ本番環境でも使い物 になりそう 2022年12月20日 (火) 株式会社Nextat 中榮健二 1
1. AWS App Runner 概要 2
AWS App Runner概要 https://aws.amazon.com/jp/apprunner/ 2021年5月にリリース コンテナ化されたウェブアプリケーションのフルマネージドサービス GitHubのリポジトリからのソースコードベースのデプロイとECRからのコンテナ ベースのデプロイに対応 バックエンドはFargate(Firecracker VM)
3
構成 参考:https://dev.classmethod.jp/articles/report-con406-reinvent2022/ 4
ECSとの違い デプロイパイプラインを自前で用意する必要がない ロードバランサーも組込みなのでALBなどを別途使う必要がない 1つのサービスに対し複数のコンテナを組み合わせられない オートスケールの設定項目 最小/最大インスタンス数、1コンテナあたりの同時リクエスト数の3項目 その他設定項目もECSと比べると細やかさはないがかなり楽 ECSタスクに相当するジョブの機能はない ECS Execに相当する機能はない
Arm(Graviton)、Windowsコンテナ未対応 5
2. 今年の注目のアップデート3つ 6
2022/02/08 カスタマーVPCへの接続が可能に https://docs.aws.amazon.com/apprunner/latest/relnotes/release-2022- 02-08-vpc.html VPCコネクタ対応 DynamoDBなどグローバルなリソースだけでなく、RDSなどVPC内のリソースが 使えるようになった 7
8
2022/10/28 マネージドランタイムの言語対応追加 https://aws.amazon.com/jp/about-aws/whats-new/2022/10/aws-app- runner-support-php-go-dot-net-ruby-managed-runtimes/ GitHubからの自動デプロイで利用される JavaとNode.jsのみだったところにPHP、Go、.NET、Rubyが追加 9
2022/10/31 プライベートアクセスが可能に https://aws.amazon.com/jp/about-aws/whats-new/2022/11/aws-app- runner-supports-privately-accessible-services-amazon-vpc/ インターネット経由の公開アクセスに限定されていたが、プライベートサービスを 選択するとVPC内からのアクセスに限定できるようになった VPCエンドポイント経由のアクセス CloudFront + WAFによる防御時の迂回路がなくなった
VPC内からアクセスするマイクロサービスをApp Runnerで作成することも可能 になった 10
Before 11
After 12
3. 料金など 13
料金について CloudFront + WAF + VPCエンドポイント(2AZ) + App Runner vCPU
1、メモリ2GB ずっと待機状態とすると5500円くらい(リクエスト時間に応じて料金増) CloudFront + WAF + ALB + ECS/Fargate vCPU0.5、メモリ1GB 6,500円くらい DBは未考慮、デプロイ・ビルドの料金(誤差)は別 プライベート構成にするとENIが高い(AZを減らせばもうちょい減る)がALBと トントンくらいか アクセス数の少ない社内アプリくらいであればECSより安そうな感じ 趣味で使うには高いか 14
改善されてほしい点 ゼロスケール https://github.com/aws/apprunner-roadmap/issues/9 ENIからFargateにアクセスする構成だとECS on Fargateと大差ない コールドスタート30秒くらいになりそうなのでしばらく無理そう Secrets Managerからの環境変数の読込 https://github.com/aws/apprunner-
roadmap/issues/6 最低スペック変更 https://github.com/aws/apprunner-roadmap/issues/25 vCPU 1 + メモリ2GBが最低スペックなので Arm対応 https://github.com/aws/apprunner-roadmap/issues/98 サイドカー対応(無理そう) https://github.com/aws/apprunner- roadmap/issues/71 PHPのマネージドランタイムでビルトインウェブサーバーを使わせるのをやめろ https://github.com/aws/apprunner-roadmap/issues/157 15
まとめ VPCコネクタによりRDSなどVPC内リソースへの接続に対応 プライベートエンドポイントによりWAFでの完全防御やマイクロサービスに対応 マネージドランタイムがGoなどにも対応 ECS/Fargateの代替として十分アリ AWS縛りがなければ Fly.io、Render、RailwayのようなPaaSかGCPの Cloud Runのほうが良さそう スケーリングや料金面はまだまだAWS
Lambdaが強い エンドポイントの多いHTTP APIを全部Lambdaにする構成は正直アンチパタ ーンだと思うのでコンテナ系のサービスには頑張ってほしい 16
ご清聴ありがとうございました 17