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
Google CloudとAWSのコンテナ実行環境比較
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
tokku5552
February 22, 2024
Programming
0
230
Google CloudとAWSのコンテナ実行環境比較
Google CloudとAWSのコンテナ実行環境比較
2023/2/22 【Google Cloud】GDG Tokyo Monthly Online Tech Talksにて登壇
tokku5552
February 22, 2024
Tweet
Share
More Decks by tokku5552
See All by tokku5552
他責思考で考える、EMとICの本音
tokku5552
1
170
高スループット・低レイテンシを実現する技術
tokku5552
3
16k
AWS CDKのススメ
tokku5552
1
540
Messaging APIのメッセージオブジェクトを検証できるChrome拡張機能を作った話
tokku5552
1
140
FlutterにLINEログインを仕込んで通知メッセージを送る
tokku5552
2
1k
AWS CDK × Reactでliffをつくる
tokku5552
1
570
Flutterで単体テストを行う方法とGitHub Actionsを使った自動化
tokku5552
1
120
ネットワーク基礎 - WEBページが表示されるまで
tokku5552
1
300
インフラエンジニアのお仕事(オンプレ)
tokku5552
0
160
Other Decks in Programming
See All in Programming
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1.1k
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
250
The free-lunch guide to idea circularity
hollycummins
0
180
20260315 AWSなんもわからん🥲
chiilog
2
150
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
510
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
380
「抽象に依存せよ」が分からなかった新卒1年目の私が Goのインターフェースと和解するまで
kurogenki
0
120
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
560
Docコメントで始める簡単ガードレール
keisukeikeda
1
120
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
290
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
550
TipKitTips
ktcryomm
0
170
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Utilizing Notion as your number one productivity tool
mfonobong
4
260
The untapped power of vector embeddings
frankvandijk
2
1.6k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
990
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
110
Designing Powerful Visuals for Engaging Learning
tmiket
0
280
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
GraphQLとの向き合い方2022年版
quramy
50
14k
Music & Morning Musume
bryan
47
7.1k
Transcript
Google CloudとAWSの コンテナ実行環境比較 【Google Cloud】GDG Tokyo Monthly Online Tech Talks
2024/2/22 徳田真之介
自己紹介 徳田真之介 (とっく - @tokkuu) • 株式会社 Cyber Agent ◦
AI事業本部 • 好きな技術 ◦ TypeScript/Go/App Runner/Cloud Run ◦ Flutter/Firebase • 趣味など ◦ 3歳の娘のパパ ◦ ポーカー(超初心者) 2
はじめに
はじめに • AWS -> Google Cloudへの載せ替えを検討する際に整理した内容 ◦ 比較する単位の合わせ方や観点は主観で選んでます • 開発段階なので、実際運用してみた知見は含まれません
• アプリケーションエンジニア(バックエンドメイン)のみのチームで運用するという観点 なので、専属のSREやプラットフォームエンジニアが居る場合は結論が異なると思 います • zennの記事「Amazon ECSとApp RunnerとCloud runの比較」 https://zenn.dev/tokku5552/articles/diff-aws-google-cloud
背景 • AWSで構築していた広告配信シ ステム(DSP)をGoogle Cloudで構 築している。 • まだリリース前なので運用した所 感などはないが、開発段階での 気付きなどをシェア。
5 https://speakerdeck.com/tokku5552/gao-surupututodi-reitensiwoshi-xian-suruji-shu
Real Time Biddingの流れ 6 SSP ユーザー DSP ①インプレッション ②リクエスト AD
• ユーザーが広告を表示しようとしていることをSSPが検 知。 • SSPはDSP(複数)に対してリクエストを行う。
Real Time Biddingの流れ 7 SSP ユーザー 広告主 キャンペーン1 キャンペーン2 キャンペーン3
DSP ①インプレッション ②リクエスト ③入札(内部) ¥100 ¥120 ¥90 AD AD AD AD • DSPに予め登録しておいた広告の候補を内部で精査し て、いくらで入札するかを決定。(インナーオークション)
Real Time Biddingの流れ 8 SSP ユーザー 広告主 キャンペーン1 キャンペーン2 キャンペーン3
DSP ①インプレッション ②リクエスト ③入札(内部) ④入札(外部) ¥100 ¥120 ¥90 ¥120 AD AD AD AD AD • SSPに対して入札額と広告の情報を返却
Real Time Biddingの流れ 9 SSP ユーザー 広告主 キャンペーン1 キャンペーン2 キャンペーン3
DSP ①インプレッション ②リクエスト ③入札(内部) ④入札(外部) ⑤落札 DSP(A社) ¥100 ¥120 ¥90 ¥120 ¥110 AD AD AD AD AD AD • 他のDSPと比べて一番高い額で落札
Real Time Biddingの流れ 10 SSP ユーザー 広告主 キャンペーン1 キャンペーン2 キャンペーン3
DSP ①インプレッション ②リクエスト ③入札(内部) ④入札(外部) ⑥掲載 ⑤落札 DSP(A社) ¥100 ¥120 ¥90 ¥120 ¥110 AD AD AD AD AD AD
Real Time Biddingの流れ 11 SSP 秒間 数十万リクエスト に対して 50ms でレスポンス
ユーザー 広告主 キャンペーン1 キャンペーン2 キャンペーン3 DSP ①インプレッション ②リクエスト ③入札(内部) ④入札(外部) ⑥掲載 ⑤落札 DSP(A社) ¥100 ¥120 ¥90 ¥120 ¥110 AD AD AD AD AD AD
12 AWSでの構成
チーム体制 • プロダクト立ち上げというのもあり 実際に手を動かしているエンジニ アは3名 • FE・BE・SREなどのポジションはな く、全員全部やるスタイル (一応みんなBEがメイン) •
EKSやGKEなどのKubernetes サービスは除外 13 エンジニア 3名 PM・Biz
比較
Amazon ECS (on Fargate) • Amazon ECSはフルマネージドの コンテナオーケストレーションサービス • 稼働する場所(キャパシティ)をEC2か
Fargateか選べる。 • AWS Fargateはサーバーレスのコンテナ実行 環境。 15
App Runner • AWSが提供するフルマネージドの コンテナアプリケーションサービス • ECSよりも管理すべき部分が少なく、GitHubのリ ポジトリもしくはECRなどのイメージリポジトリと接 続して、CD環境が勝手に作られる。 •
カスタムドメインやHTTPSリダイレクト、Secret Manager、WAFもサポート (最近) • DSPシステムに採用できるほどではないが、 Cloud Runに近いので比較 16
Cloud Run • Google Cloudが提供するフルマネージドなコ ンテナ実行環境 • 対応している言語であればDockerfileなしで もデプロイ可能 •
コールドスタートが可能 17
18 サービス 最大vCPU 最大メモリ スケーリング上限 ECS on Fargate 16vCPU 120GB
5000(サービスあたりのタスク 数) App Runner 4vCPU 12GB 25 Cloud Run 8vCPU 32GB 1000(CPUやメモリによって変 動) 設定できるリソースとスケーラビリティ • App RunnerはDSPというワークロードには向いていなさそう • 元のシステムでの稼働実績としてはCloud Runで賄える
19 サービス 料金 1ヶ月あたりの料金目安 (1vCPU/1GBと仮定) 備考 AWS Fargate(ECS) Linux/ARM・東京リージョン vCPU当たり0.04045USD/h
メモリ1GBあたり0.00442USD/h 32.3064 USD App RunnerやCloud Runと 同じ構成にするには他のリ ソースが必須(ALBとか) App Runner アジアパシフィック (東京) リージョン 料金は 0.009 USD/GB 時および 0.081 USD/vCPU 時 64.8 USD 常時アクティブな場合の料 金 Cloud Run $0.00001800 / vCPU 秒 $0.00000200 / GiB 秒 51.84 USD 無料枠あり 料金による比較 • 実際の課金額はカタログスペックと逆転することもありそう
その他のポイント • App Runnerはimage uriにlatestタグを指定 しておくと、latestのイメージを更新するだけ で勝手にデプロイが走ってくれる • Cloud Buildの使い勝手が良い(主観)
• ECS、Cloud Runはサイドカーに対応している (App Runnerだけしてない...) 20
Cloud Runのメリット・デメリット(主観) • App RunnerとCloud Runはインフラ側の管理コストが かなり低く感じる • 管理コストに対して対応できるワークロードの幅が良 い(広く対応できる)
• Cloud Build使いやすい ◦ モノレポでも使えそう。 Code Pipeline系はモノレポだと厳し かった。 21 • VPCとの接続が分かりづらい • FireLens的なの欲しい メリット デメリット
Podcastやってます! https://podcasters.spotify.com/pod/show/5rh9uag8ah エンジニアがもがくラジオ エンジニアのキャリアなどについて雑談している Podcastです Spotify/Apple Podcast/Google Podcast/Amazon Musicなど主要スタンドで配信中!