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
Cloud Run が作る世界 #devio2022
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Takaaki Tanaka
July 21, 2022
Technology
0
2.4k
Cloud Run が作る世界 #devio2022
DevelopersIO 2022のビデオセッションにて、「Cloud Run が作る世界」というテーマでお話しました。
Takaaki Tanaka
July 21, 2022
Tweet
Share
More Decks by Takaaki Tanaka
See All by Takaaki Tanaka
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
260
Zenn のウラガワ ~エンジニアのアウトプットを支える環境で Google Cloud が採用されているワケ~ #burikaigi #burikaigi_h
kongmingstrap
22
8.4k
AWS re:Invent 2024 ふりかえり
kongmingstrap
0
340
製造の課題に立ち向かう Manufacturing Data Engine と Manufacturing Connect の ご紹介
kongmingstrap
0
1.1k
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
830
JAWS-UG 福岡 #16 re:Invent 現地に行った人のお話 #jawsugfuk #jawsug
kongmingstrap
0
660
AppMod の開発のイマを知るために現地に潜入した私が見たものは・・・? #GoogleCloudNext
kongmingstrap
0
730
Kong Gateway から読みとく、 API統合・API連携サービスの最新情報 #devio2023
kongmingstrap
0
2.1k
Cloud Run に憧れて Google Cloud を推進している話 / CX事業本部で使われている技術
kongmingstrap
0
330
Other Decks in Technology
See All in Technology
Web Intelligence and Visual Media Analytics
weblyzard
PRO
1
6.8k
Vivre en Bitcoin : le tutoriel que votre banquier ne veut pas que vous voyiez
rlifchitz
0
360
ビジュアルプログラミングIoTLT vol.22
1ftseabass
PRO
0
140
Git Training GitHub
yuhattor
1
270
ALB「証明書上限問題」からの脱却
nishiokashinji
0
250
【northernforce#54】SalesforceにおけるAgentforceの位置づけ・事例紹介
yutosatou_kit
0
120
Claude Codeベストプラクティスまとめ
minorun365
42
24k
BiDiってなんだ?
tomorrowkey
2
480
SREの仕事を自動化する際にやっておきたい5つのポイント
jacopen
6
970
re:Inventで見つけた「運用を捨てる」技術。
ezaki
1
140
持続可能な開発のためのミニマリズム
sansantech
PRO
4
560
新規事業 toitta におけるAI 機能評価の話 / AI Feature Evaluation in toitta
pokutuna
0
260
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.4k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
280
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
560
Designing for humans not robots
tammielis
254
26k
GitHub's CSS Performance
jonrohan
1032
470k
Six Lessons from altMBA
skipperchong
29
4.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Producing Creativity
orderedlist
PRO
348
40k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.9k
Transcript
Cloud Run が作る世界 2022/7/22 CX事業本部MAD事業部 田中孝明
田中孝明 (Takaaki TANAKA) • CX事業本部 MAD事業部所属 • 福岡オフィス所属 • 好きな言語:
C++ / Swift • サウナ・スパ プロフェッショナル 2
3 MAD事業部と Google Cloud との関わり https://classmethod.jp/services/mad/
4 Cloud Run
5 Cloud Run • コンテナを直接実行できるマネージドコンピューティング プラットフォーム • コンテナイメージをビルドできるものであれば、任意のプ ログラミング言語で記述されたコードをデプロイできる
6 Cloud Run • Google Cloud 上の他のサービスと連携できる ◦ Pub/Sub ◦
Cloud Scheduler ◦ Cloud Tasks ◦ Eventarc
7 Cloud Run のデプロイ その1
8 Github からビルドして Cloud Run を実行 • ローカルでビルド&実行できるソースコードとDockerfile を用意する ◦
actix/actix-web (Rust) ◦ Dockerfile • Github のリポジトリにソースコードと Dockerfile を Push する https://github.com/kongmingstrap/cloud-run-sampler
9 Github からビルドして Cloud Run を実行 • Cloud Build のトリガーの設定
◦ 自分のリポジトリをソースに設定 ◦ Github の指定したブランチに Push すると、Artifact を作成するビルドが 走る ◦ タイムアウトがデフォルトだと10分な ので注意
10 Github からビルドして Cloud Run を実行 • Cloud Run のサービス作成
◦ Build した コンテナイメージを指定 ◦ その他の設定は必要に応じて
11 Github からビルドして Cloud Run を実行 • Cloud Run の起動が成功
◦ 指定のURLでアクセスできるようになります ◦ 以前のビルドしたバージョンに戻す場合も、リビジョンの切り 替えで可能
12 Cloud Run のデプロイ その2
13 Cloud Run が有効なケース • HTTP、HTTP/2、WebSocket、gRPC 経由で配信されるリク エスト、ストリーム、イベントのいずれかを提供されている こと •
ローカル永続ファイル システムを必要としない https://cloud.google.com/run/docs/fit-for-run?hl=ja
14 Cloud Run が有効なケース • 同時に実行しているアプリの複数のインスタンスを処理 するようにビルドされている • インスタンスごとに 8
個の CPU と 32 GiB のメモリを上限と し、それ以上を必要としない • コンテナ化されていること https://cloud.google.com/run/docs/fit-for-run?hl=ja
15 Cloud Run を実行する2つの方法
16 Cloud Run でコードを実行する2つの方法 • サービス ◦ Webリクエスト、イベントに応答するコードの実行に 使用 •
ジョブ (Preview) ◦ 作業(ジョブ)を実行し、作業の完了後に終了するコードの実 行に使用
17 サービス • 高速なリクエストベースの自動スケーリング • 使い捨てのコンテナファイルシステム • 従量課金制 ◦ リクエストベース
◦ インスタンスベース https://cloud.google.com/run/docs/overview/what-is-cloud-run?hl=ja#services
18 サービス • 用途 ◦ Webサイト・Webアプリケーション ◦ API とマイクロサービス ◦
ストリーミングデータ処理 https://cloud.google.com/run/docs/overview/what-is-cloud-run?hl=ja#services
19 ジョブ (Preview) • 一つのコンテナインスタンスで実行 • 独立した同一のコンテナインスタンスを実行することも可 能(配列ジョブ) https://cloud.google.com/run/docs/overview/what-is-cloud-run?hl=ja#jobs
20 ジョブ (Preview) • 用途 ◦ スクリプトやツール ◦ 配列ジョブ ◦
スケジュールされたジョブ • 第2世代の実行環境が必要 https://cloud.google.com/run/docs/overview/what-is-cloud-run?hl=ja#jobs
21 第2世代
22 Cloud Run 第2世代 (Preview) • 第1世代の実行環境はコールドスタート時間が高速でエ ミュレーションを行う ◦ 全てのOSのシステムコールが実行できるわけではなかった
• 第2世代の実行環境では、Linuxの完全な互換性が実現 ◦ CPUパフォーマンスの高速化 ◦ ネットワークパフォーマンスの高速化 ◦ 全てのシステムコール、名前空間、cgroupのサポートを含 む、Linuxとの互換性
23 Cloud Run 第2世代 (Preview) • ネットワークファイルシステムのサポート ◦ コンテナ内のディレクトリにマウントできる ◦
ホストシステムとコンテナ インスタンスの間でリソースを共有 し、コンテナ インスタンスがガベージ コレクションされた後も リソースを保持できる https://cloud.google.com/run/docs/tutorials/network-filesystems-filestore?hl=ja
24 Cloud Functions 第二世代 (Preview) • Cloud Run + Eventarc
を利用したインフラストラクチャ ◦ HTTP関数に対して、最大60分の実行時間 ◦ 最大 16GB の RAMと4つの vCPU を利用可能 ◦ 異なるリビジョンへのトラフィック分割 https://cloud.google.com/blog/ja/products/serverless/introducing-the-next-generation -of-cloud-functions
25 まとめ • ローカルで動かせる環境をそのままコードとして実行でき るので、開発者のマシンに依存しない開発が可能 • 第二世代の登場で、今までサーバーレスで実現できな かった処理も今後は選択肢になりうる • Cloud
Run は Google Cloud の別のサービス影響を及ぼ しているので、最新情報を追うと他のサービスのアップ デートもキャッチアップできる
None