SlideShare a Scribd company logo
1 of 49
Download to read offline
Cloud Onr
Cloud OnAir
Cloud OnAir
Cloud Run Deep Dive
GCP で実践するモダンなサーバーレスアプリケーション開発
2019 年 9 月 12 日 放送
Agenda
Cloud OnAir
1
3
2
4
Cloud Run とは?
Cloud Run Technical Tips
他の GCP サーバーレスコンピュートとの使い分け
まとめ
Cloud OnAir
Cloud OnAir
Cloud Run とは?
Cloud OnAir
Cloud Run とは?
Cloud Run
Knative をベースにした
GCP の新しいサーバーレスコンピュート
Beta
Cloud OnAir
GCP のサーバーレスコンピュート
App Engine
Apps
Cloud Functions
Functions
Cloud Run
Containers
NEW!
Cloud OnAir
2 つの Cloud Run
Cloud Run
完全にサーバーレス
管理するクラスタは無し
使った分だけお支払い
Cloud Run on GKE
GKE のクラスタ上でサーバーレス
費用は GKE のクラスタに含まれる
本日はこちらを中心に説明
Cloud OnAir
主な特徴
高速なデプロイ
ステートレスなコンテナ
高速に 0 to N スケール
数秒でデプロイし URL を付与
サーバーレス、ネイティブ
管理するサーバーはなし
コードに集中
言語やライブラリの制約なし
きっちり使った分だけお支払い
高いポータビリティ
どこでも同じ Developer Experience
フルマネージでも GKE のクラスタ上でも
Knative API の一貫性
ロックインの排除
Cloud OnAir
Cloud Run を利用可能なリージョン東京含む、世界 4 リージョンで利用可能
asia-northeast1
europe-west1
us-east1
us-central1
利用可能なリージョン ( 2019.08.23 時点 )
Cloud OnAir
Cloud OnAir
Demo
サービスのデプロイ
Cloud OnAir
ユースケース
パブリック
• Web App
• API endpoint
プライベート
• マイクロサービス
• 非同期処理のワーカー
• データ処理(軽微な ETL )
• Mobile backend
• Webhook
Cloud OnAir
リソースモデル
Revision A-1
Revision A-2
Revision A-3
Revision B-1
Revision B-2
Container
InstanceContainer
InstanceContainer
Instance
Requests
Service A @region A
Service B @region B
Service
Cloud Run の主リソース
Service 毎に Endpoint を提供
自動で設定される a.run.app ドメイン、
もしくはカスタム ドメインが選択可能
Revision
デプロイするごとに生成される
コンテナ イメージとデプロイ時に指定される環境変数
やパラメーターから構成される。
Container Instance
実際にリクエストを受けるコンテナ、requests の数に
応じて自動的にスケール
GCP Project X
Cloud OnAir
課金の考え方
Instance
Billable Time
Instance Time
Billable
Non-billable
Request 1
Start
Request 1
End
Request 2
Start
Request 2
End
Cloud OnAir
Cloud OnAir
Cloud Run Technical Tips
Cloud OnAir
Cloud OnAir
Container Runtime Contract
Cloud OnAir
● Linux x86_64 ABI をサポート
● 0.0.0.0 かつ、環境変数 PORT に対してリッスン
● リクエストを受信してから 4 分以内に HTTP サーバーを起動する必要
● レスポンスタイムアウトはデフォルト 5 分 ( 最大 15 分 )
コンテナに関する決まりごと
Container
Instance
Must listen on
0.0.0.0: $PORT
App /HTTP
Server
Default response timeout:
5 mins
Must start within 4 mins
once requests come
Cloud OnAir
● CPU
○ デフォルト 1vCPU
○ 変更不可
● メモリ
○ デフォルト 256 MB
○ 変更可、最小 128 MB 〜 最大 2 GB
● ファイルシステム
○ 読み書き可能
○ コンテナインスタンスに割り当てられたメモリ上を利用
○ データの永続性なし
コンテナのスペック
https://cloud.google.com/run/docs/reference/container-contract
Cloud OnAir
Cloud Run では各コンテナインスタンスがオートスケーリングにより
増減するため、アプリケーションはステートレスであることが
推奨されている。
アプリケーションはステートレスに
Database
Key Value
Store
OR / AND
Container
Instance
App /HTTP
Server セッション情報は
DB や KVS に保存
Cloud OnAir
System Call
Cloud Run のコンテナインスタンスは
gVisor によりサンドボックス化されている
ため、コンテナアプリケーションからの
System Call が可能。
ただし一部の System Call は
サポートされていない可能性があるので、
その際はサポートまで。
https://gvisor.dev/docs/user_guide/compati
bility/linux/amd64/
Container
gVisor
Host
System calls
Limited system calls
Secure
isolation
}
Cloud OnAir
Cloud OnAir
Cloud Run サービスの利用
Cloud OnAir
HTTPS によるアクセス
Service A
https://servicea-q6vo4odwpq-an.a.run.app
サービスを新規デプロイすると
FQDN と SSL 証明書が割り当てられ、HTTPS でアクセス可能
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello
Cloud OnAir
IAM による認証
IAM Service A
認証
デフォルトで IAM によるアクセス認証が有効
role: "roles/run.invoker"
member: "cloudtaro@..."
Header:
"Authorization: bearer ID_TOKEN"
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello
HTTPS
Cloud OnAir
一般公開する場合
サービスをデプロイする際に、--allow-unauthenticated オプションを
指定し、認証なしアクセスを許可する
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello 
--allow-unauthenticated
IAM Service A
role: "roles/run.invoker"
member: "allUsers"
HTTPS
Cloud OnAir
メッセージングサービスとの連携
Cloud Pub / Sub から Cloud Run のサービスに対して
イベントのプッシュを行う
IAM Service A
Cloud Pub / Sub
role: "roles/run.invoker"
member: "pubsub@..."
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello
認証
HTTPS
Cloud OnAir
非同期処理
Cloud Tasks の HTTP タスク ハンドラとして
Cloud Run のサービスを利用する
IAM Service A
Cloud Tasks
role: "roles/run.invoker"
member: "cloudtasks@..."
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello
認証
HTTPS
Cloud OnAir
定期実行
Cloud Scheduler から定期的に Cloud Run のサービスを呼び出す
IAM Service A
Cloud Scheduler
role: "roles/run.invoker"
member: "cloudscheduler@..."
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello
認証
HTTPS
Cloud OnAir
Cloud OnAir
Cloud Run から
他のサービスを利用
Cloud OnAir
サービスアカウントの利用
サービスアカウントを使って他の GCP サービスへアクセス
サービスのデプロイ時に任意のサービスアカウントを指定することが可能
Service A
Container
Instance
App /HTTP
Server
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello 
--service-account “run-storage@...”
from google.cloud import storage
storage_client - storage.Client()
Bucket =
storage_client.get_bucket(BUCKET_NAME)
app.py
Cloud Storage 等
他の GCP サービス
デフォルトのサービスアカウントはCompute
Engine のデフォルトサービス
アカウント
API
Cloud OnAir
別の Cloud Run サービスへのアクセス
Service A
Cloud Run から他の Cloud Run サービスを呼び出す場合も IAM 認証を利用可能
メタデータサーバーから ID トークンを入手し、ヘッダーに付けてリクエスト
Container
Instance
App /HTTP
Server
app.py
IAM
Service B
token_response = get(token_request_url, 
headers=token_request_headers)
jwt = token_response.content.decode("utf-8")
receiving_service_headers =
{'Authorization': 'bearer {}'.format(jwt)}
response = get(receiving_service_url,
headers=receiving_service_headers)
HTTPS
Cloud OnAir
Cloud SQL への接続
Service A
アプリケーションから UNIX ソケット経由で Cloud SQL Proxy へ接続可能
第2世代の MySQL インスタンス or PostgreSQL インスタンス を推奨
Container
Instance
App / HTTP
Server
import MySQLdb
db =
MySQLdb.connect(unix_socket=‘/cloudsql
/[CONNECTION NAME]’,
user=CLOUDSQL_USER,
passwd=CLOUDSQL_PASSWD)
$ gcloud beta run deploy servicea 
--image gcr.io/cloudrun/hello 
--add-cloudsql-instances INSTANCE-ID
Cloud SQL
app.py
Cloud OnAir
シークレット管理
現在 Cloud KMS は Cloud Run を直接的にサポートしていない
予めKMSで暗号化したシークレットを Cloud Storage に保存し、
必要時にダウンロードして復号化する方法がワークアラウンドとして
利用できる。
Cloud Run Cloud Storage
Cloud KMS
① 暗号化されたシークレットを取得
② 暗号化されたシークレットを復号化
③ App が復号化した
シークレットを利用
Cloud OnAir
シークレット管理 ~ Berglas
Berglas を使うことでアプリケーション自体から Cloud Storage や Cloud KMS へ
のアクセスやシークレットのハンドリングロジックを排除し、
シークレット管理をシンプルに行うことが可能に
Cloud Run Cloud Storage
Cloud KMS
① 暗号化されたシークレットを取得
② 暗号化されたシークレットを復号化
③ App が復号化した
シークレットを利用
Berglas でラップ
Cloud OnAir
Cloud OnAir
Concurrency と
オートスケーリング
Cloud OnAir
Concurrency
Concurrency とは同時の 1 つの Container Instance に投げられる
リクエストの最大数
Google Cloud Functions など一般的な FaaS は
一度に1つのリクエストしかハンドルできない。
なので "concurrency = 1".
Cloud Run の場合、 concurrency の値を 1 から 80 まで設定できる
(default: 80) ので、1 つの コンテナインスタンス で同時に
複数のリクエストを処理することが出来る
最適な Concurrency 値は実装に依存するので、
本番利用前に十分に検証し確認する必要がある
Service A v1
concurrency = 1
Service A v2
concurrency = 20
Cloud OnAir
オートスケーリング
Cloud Run ではリクエスト数に応じて特に明示的に設定を
していなくてもオートスケーリングを行う
リクエストがしばらく (体感 5 分) 無い場合、コンテナインスタンスが 0 になる
Service A
繁忙期
Service A
リクエストがない時間帯
コンテナインスタンス
のデフォルト最大数は
1000
Cloud OnAir
コールドスタート
Cloud Run は サービス特性上コールドスタートが多くなる場合がある
コールドスタートとは一からコンテナを起動しリクエストを受けられる
状態になるまでのことを指し、この時間が長いとレスポンスタイムなどに
影響がある
以下の方法によりコールドスタートによる影響を軽減する
1. Concurrency 数の最適化によるオートスケール時のコールドスタート数削減
2. Cloud Scheduler などを利用して定期的にリクエストを Cloud Run に投げることで
コンテナインスタンスが 0 になることを防ぐ
3. コンテナ自体の起動時間を短くする
Cloud OnAir
Cloud OnAir
Demo
オートスケーリング
Cloud OnAir
Cloud OnAir
カスタムドメイン
Cloud OnAir
Custom Domain
デフォルトでは run.app のサブドメインが割り当てられるが、
お客様自身のドメインを使うことも可能
SSL 証明書は Let’s Encrypt で自動的に払い出される ( 5 ~ 10分掛かる )
GET https://hwpy.crun.gcpx.org
hwpy.crun.gcpx.org IN CNAME ghs.googlehosted.com.
DNS
resolve
1 つのサービスに対して複数のドメインをマッピングすることが可能
Hostヘッダー毎のリクエストルーティングなどに便利
Cloud OnAir
Cloud OnAir
ビルド、デプロイ
Cloud OnAir
Cloud Build
サーバーレスな CI/CD プラットフォーム
お客様が VM を用意したりキャパシティの管理をする必要はない
柔軟なビルドステップ
あらゆるサーバーレス CLI ツールをビルドステップとして組み込むことが可能
デベロッパーフレンドリー
開発者が使い慣れた Git のイベントに応じたトリガー
Cloud OnAir
Cloud Build を利用した CI /CD ワークフロー
Cloud Source
Repositories
Cloud Build Google Container
Registry
Cloud Run開発者
ソースコード管理に Cloud Source Repositories
ビルドとデプロイに Cloud Build
コンテナイメージ管理に Google Container Registry
を利用し、CI/CD ワークフローをサーバーレスに構築可能
$ git commit
$ git push
Trigger $ docker push
get container
image
Cloud OnAir
Cloud OnAir
モニタリング、ロギング
Cloud OnAir
Stackdriver サポート
Error ReportingLoggingMonitoring
Metric を Revision 単位で
選択可能
CPU/Memory の
Allocaiton や request
count や request latency
など計測可能
Revision 単位で
アクセスログや
コンテナの終了などの
イベントログを
確認可能
Cloud Run で実行されて
いるアプリの中で
発生した Exception など
を拾いレポート
Cloud OnAir
Cloud OnAir
Demo
Stackdriver によるメトリックスとログの確認
Cloud OnAir
Cloud OnAir
他の GCP サーバーレスコンピュートとの
使い分け
Cloud OnAir
各サービスの特徴
● ソースコードベース
● Web / API
● ユーザー数・ナレッジの
多さ
● 1 プロジェクトにつき
1 リージョンの縛り
● ソースコードベース
● イベントドリブン
● あくまで関数
● 最大 9 分の実行時間
● 1 concurrency /
instance
● コンテナベース
● Web / API
● ランタイム制約、
ロックインなし
● 最大 15 分 の実行時間
● 1 プロジェクトで複数リー
ジョン利用可能
Cloud Functions Google App Engine Cloud Run
Cloud OnAir
公式使い分けチャート
https://cloud.google.com/serverless-options
Cloud OnAir
Cloud OnAir
まとめ
Cloud OnAir
● Cloud Run はコンテナをサーバーレスに使える便利なサービス
● 従来の PaaS / FaaS にあった言語ランタイム及び
ライブラリに制約がない
● 0 to N のスケーリングや小さめのスペックなどの特徴を考慮の上、ご利
用ください
● 今後の機能拡充にご期待ください!
まとめ

More Related Content

What's hot

PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)Koichiro Matsuoka
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoTakayuki Shimizukawa
 
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)NTT DATA Technology & Innovation
 
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5Takahiro YAMADA
 
Java EE から Quarkus による開発への移行について
Java EE から Quarkus による開発への移行についてJava EE から Quarkus による開発への移行について
Java EE から Quarkus による開発への移行についてShigeru Tatsuta
 
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)NTT DATA Technology & Innovation
 
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと  @ gcpug 湘南[External] 2021.12.15 コンテナ移行の前に知っておきたいこと  @ gcpug 湘南
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南Google Cloud Platform - Japan
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & AppsGoogle Cloud Platform - Japan
 
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみるDSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみるAtsushi KOMIYA
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~Shinji Takao
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーToru Makabe
 
Multicastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃないMulticastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃないKenta Yasukawa
 
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートOracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートオラクルエンジニア通信
 
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)Masaya Tahara
 
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築gree_tech
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Etsuji Nakai
 
Flutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたものFlutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたものRecruit Lifestyle Co., Ltd.
 
Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方Taku Miyakawa
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Masahito Zembutsu
 

What's hot (20)

PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for Django
 
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
 
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
 
Java EE から Quarkus による開発への移行について
Java EE から Quarkus による開発への移行についてJava EE から Quarkus による開発への移行について
Java EE から Quarkus による開発への移行について
 
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
 
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと  @ gcpug 湘南[External] 2021.12.15 コンテナ移行の前に知っておきたいこと  @ gcpug 湘南
[External] 2021.12.15 コンテナ移行の前に知っておきたいこと @ gcpug 湘南
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
 
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみるDSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
 
Multicastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃないMulticastが出来ないならUnicastすればいいじゃない
Multicastが出来ないならUnicastすればいいじゃない
 
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデートOracle Cloud Infrastructure:2022年1月度サービス・アップデート
Oracle Cloud Infrastructure:2022年1月度サービス・アップデート
 
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
 
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
 
Flutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたものFlutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたもの
 
Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方Javaのログ出力: 道具と考え方
Javaのログ出力: 道具と考え方
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
 

Similar to [Cloud OnAir] Cloud Run Deep Dive ~ GCP で実践するモダンなサーバーレス アプリケーション開発 ~ 2019年9月12日 放送

[Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送
[Cloud OnAir]   最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送[Cloud OnAir]   最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送
[Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送
[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送
[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送
[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送
[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送
[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送
[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送Google Cloud Platform - Japan
 
[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送
[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送
[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送
[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送
[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送Google Cloud Platform - Japan
 
Windows Phone で Active Directory 認証 2011.12.1版
Windows Phone で Active Directory 認証 2011.12.1版Windows Phone で Active Directory 認証 2011.12.1版
Windows Phone で Active Directory 認証 2011.12.1版junichi anno
 
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送
[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送
[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送
[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送
[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...
[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...
[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...Google Cloud Platform - Japan
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Preferred Networks
 
これからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしようこれからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしよう真吾 吉田
 
[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...
[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...
[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...Google Cloud Platform - Japan
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsYoshio Terada
 
AWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API GatewayAWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API GatewayShinpei Ohtani
 

Similar to [Cloud OnAir] Cloud Run Deep Dive ~ GCP で実践するモダンなサーバーレス アプリケーション開発 ~ 2019年9月12日 放送 (20)

[Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送
[Cloud OnAir]   最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送[Cloud OnAir]   最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送
[Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2018年11月8日 放送
 
What’s new in cloud run 2021 後期
What’s new in cloud run 2021 後期What’s new in cloud run 2021 後期
What’s new in cloud run 2021 後期
 
[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送
[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送
[Cloud OnAir] Google Cloud Next '18 in Tokyo サーバレス特集 2018年9月27日 放送
 
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送
 
[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送
[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送
[Cloud OnAir] Google Cloud とつなぐ色々な方法 〜 つなぐ方法をゼロからご紹介します〜 2019年1月31日 放送
 
[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送
[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送
[Cloud OnAir] ゼロから始める Cloud Run 〜概要から実践まで全てをお届けします〜 2020 年 2 月 20 日放送
 
[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送
[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送
[Cloud OnAir] Anthos で実現する ハイブリッドクラウド 〜 Cloud Service Mesh 編 〜 2019年9月5日 放送
 
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送
 
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
 
[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送
[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送
[Cloud OnAir] Google Cloud の考える次世代ハイブリッドクラウドとは? 2019年8月22日 放送
 
Windows Phone で Active Directory 認証 2011.12.1版
Windows Phone で Active Directory 認証 2011.12.1版Windows Phone で Active Directory 認証 2011.12.1版
Windows Phone で Active Directory 認証 2011.12.1版
 
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
 
[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送
[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送
[Cloud OnAir] GCP でできる Lift & Shift 〜 移行支援ツールも各種ご紹介 〜 2019年1月17日 放送
 
[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送
[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送
[Cloud OnAir] Dive to Google Kubernetes Engine 2018年8月2日 放送
 
[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...
[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...
[Cloud OnAir] Google Compute Engine に Deep Dive! 基本から運用時のベストプラクティスまで 2018年7月1...
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
 
これからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしようこれからのクラウドネイティブアプリケーションの話をしよう
これからのクラウドネイティブアプリケーションの話をしよう
 
[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...
[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...
[Cloud OnAir] [Cloud OnAir] 最新版 GCP ではじめる、サーバーレスアプリケーションの開発。 2020年5月28日 放送 20...
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab Contents
 
AWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API GatewayAWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API Gateway
 

More from Google Cloud Platform - Japan

Google Cloud でアプリケーションを動かす.pdf
Google Cloud でアプリケーションを動かす.pdfGoogle Cloud でアプリケーションを動かす.pdf
Google Cloud でアプリケーションを動かす.pdfGoogle Cloud Platform - Japan
 
【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編
【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編
【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編Google Cloud Platform - Japan
 
[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ 〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送
[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ  〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ  〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送
[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ 〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...
[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...
[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...Google Cloud Platform - Japan
 
[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送
[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送
[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送
[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送
[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送
[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送
[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...
[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...
[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...Google Cloud Platform - Japan
 
[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送
[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送
[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送
[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送
[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送Google Cloud Platform - Japan
 
明日から役立つ BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: Online
明日から役立つ  BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: Online明日から役立つ  BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: Online
明日から役立つ BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: OnlineGoogle Cloud Platform - Japan
 
今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: Online
今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: Online今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: Online
今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: OnlineGoogle Cloud Platform - Japan
 
『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: Online
『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: Online『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: Online
『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: OnlineGoogle Cloud Platform - Japan
 
DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...
DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...
DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...Google Cloud Platform - Japan
 
[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送
[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送
[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送Google Cloud Platform - Japan
 
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送Google Cloud Platform - Japan
 

More from Google Cloud Platform - Japan (20)

ServerlessDays Tokyo 2022 Virtual.pdf
ServerlessDays Tokyo 2022 Virtual.pdfServerlessDays Tokyo 2022 Virtual.pdf
ServerlessDays Tokyo 2022 Virtual.pdf
 
20221105_GCPUG 女子会 Kubernets 編.pdf
20221105_GCPUG 女子会 Kubernets 編.pdf20221105_GCPUG 女子会 Kubernets 編.pdf
20221105_GCPUG 女子会 Kubernets 編.pdf
 
Google Cloud でアプリケーションを動かす.pdf
Google Cloud でアプリケーションを動かす.pdfGoogle Cloud でアプリケーションを動かす.pdf
Google Cloud でアプリケーションを動かす.pdf
 
【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編
【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編
【Dialogflow cx】はじめてみよう google cloud dialogflow cx 編
 
Google Cloud で実践する SRE
Google Cloud で実践する SRE  Google Cloud で実践する SRE
Google Cloud で実践する SRE
 
[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ 〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送
[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ  〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ  〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送
[Cloud OnAir] 事例紹介 : 株式会社マーケティングアプリケーションズ 〜クラウドへのマイグレーションとその後〜 2020年12月17日 放送
 
[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...
[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...
[Cloud OnAir] 【実演】Google Cloud VMware Engine と VMware ソリューションを組み合わせたハイブリッド環境の...
 
[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送
[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送
[Cloud OnAir] Google Workspace でできる データ分析と業務自動化のご紹介 2020年12月3日 放送
 
[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送
[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送
[Cloud OnAir] Google Cloud へのマイグレーション ツールの紹介 2020年11月26日 放送
 
[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送
[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送
[Cloud OnAir] Google Cloud における RDBMS の運用パターン 2020年11月19日 放送
 
[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...
[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...
[Cloud OnAir] 事例紹介: 株式会社オープンハウス 〜Google サービスを活用したオープンハウスの AI の取り組み〜 2020年11月1...
 
[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送
[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送
[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送
 
[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送
[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送
[Cloud OnAir] Google Cloud の AI / IoT 最新事例紹介 2020年10月22日 放送
 
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送
 
明日から役立つ BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: Online
明日から役立つ  BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: Online明日から役立つ  BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: Online
明日から役立つ BigQuery ML 活用 5 つのヒント | Google Cloud INSIDE Games & Apps: Online
 
今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: Online
今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: Online今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: Online
今だから知りたい BigQuery 再入門 | Google Cloud INSIDE Games & Apps: Online
 
『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: Online
『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: Online『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: Online
『MAGELLAN BLOCKS』を使って BigQuery を使い倒す!| Google Cloud INSIDE Games & Apps: Online
 
DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...
DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...
DeNA のデータ活用を支える BigQuery データの民主化とガバナンス強化の軌跡 | Google Cloud INSIDE Games & App...
 
[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送
[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送
[Cloud OnAir] Talks by DevRel Vol.4 データ管理とデータ ベース 2020年8月27日 放送
 
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送
 

Recently uploaded

「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦Sadao Tokuyama
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 

Recently uploaded (12)

2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 
2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 

[Cloud OnAir] Cloud Run Deep Dive ~ GCP で実践するモダンなサーバーレス アプリケーション開発 ~ 2019年9月12日 放送

  • 1. Cloud Onr Cloud OnAir Cloud OnAir Cloud Run Deep Dive GCP で実践するモダンなサーバーレスアプリケーション開発 2019 年 9 月 12 日 放送
  • 2. Agenda Cloud OnAir 1 3 2 4 Cloud Run とは? Cloud Run Technical Tips 他の GCP サーバーレスコンピュートとの使い分け まとめ
  • 4. Cloud OnAir Cloud Run とは? Cloud Run Knative をベースにした GCP の新しいサーバーレスコンピュート Beta
  • 5. Cloud OnAir GCP のサーバーレスコンピュート App Engine Apps Cloud Functions Functions Cloud Run Containers NEW!
  • 6. Cloud OnAir 2 つの Cloud Run Cloud Run 完全にサーバーレス 管理するクラスタは無し 使った分だけお支払い Cloud Run on GKE GKE のクラスタ上でサーバーレス 費用は GKE のクラスタに含まれる 本日はこちらを中心に説明
  • 7. Cloud OnAir 主な特徴 高速なデプロイ ステートレスなコンテナ 高速に 0 to N スケール 数秒でデプロイし URL を付与 サーバーレス、ネイティブ 管理するサーバーはなし コードに集中 言語やライブラリの制約なし きっちり使った分だけお支払い 高いポータビリティ どこでも同じ Developer Experience フルマネージでも GKE のクラスタ上でも Knative API の一貫性 ロックインの排除
  • 8. Cloud OnAir Cloud Run を利用可能なリージョン東京含む、世界 4 リージョンで利用可能 asia-northeast1 europe-west1 us-east1 us-central1 利用可能なリージョン ( 2019.08.23 時点 )
  • 10. Cloud OnAir ユースケース パブリック • Web App • API endpoint プライベート • マイクロサービス • 非同期処理のワーカー • データ処理(軽微な ETL ) • Mobile backend • Webhook
  • 11. Cloud OnAir リソースモデル Revision A-1 Revision A-2 Revision A-3 Revision B-1 Revision B-2 Container InstanceContainer InstanceContainer Instance Requests Service A @region A Service B @region B Service Cloud Run の主リソース Service 毎に Endpoint を提供 自動で設定される a.run.app ドメイン、 もしくはカスタム ドメインが選択可能 Revision デプロイするごとに生成される コンテナ イメージとデプロイ時に指定される環境変数 やパラメーターから構成される。 Container Instance 実際にリクエストを受けるコンテナ、requests の数に 応じて自動的にスケール GCP Project X
  • 12. Cloud OnAir 課金の考え方 Instance Billable Time Instance Time Billable Non-billable Request 1 Start Request 1 End Request 2 Start Request 2 End
  • 13. Cloud OnAir Cloud OnAir Cloud Run Technical Tips
  • 15. Cloud OnAir ● Linux x86_64 ABI をサポート ● 0.0.0.0 かつ、環境変数 PORT に対してリッスン ● リクエストを受信してから 4 分以内に HTTP サーバーを起動する必要 ● レスポンスタイムアウトはデフォルト 5 分 ( 最大 15 分 ) コンテナに関する決まりごと Container Instance Must listen on 0.0.0.0: $PORT App /HTTP Server Default response timeout: 5 mins Must start within 4 mins once requests come
  • 16. Cloud OnAir ● CPU ○ デフォルト 1vCPU ○ 変更不可 ● メモリ ○ デフォルト 256 MB ○ 変更可、最小 128 MB 〜 最大 2 GB ● ファイルシステム ○ 読み書き可能 ○ コンテナインスタンスに割り当てられたメモリ上を利用 ○ データの永続性なし コンテナのスペック https://cloud.google.com/run/docs/reference/container-contract
  • 17. Cloud OnAir Cloud Run では各コンテナインスタンスがオートスケーリングにより 増減するため、アプリケーションはステートレスであることが 推奨されている。 アプリケーションはステートレスに Database Key Value Store OR / AND Container Instance App /HTTP Server セッション情報は DB や KVS に保存
  • 18. Cloud OnAir System Call Cloud Run のコンテナインスタンスは gVisor によりサンドボックス化されている ため、コンテナアプリケーションからの System Call が可能。 ただし一部の System Call は サポートされていない可能性があるので、 その際はサポートまで。 https://gvisor.dev/docs/user_guide/compati bility/linux/amd64/ Container gVisor Host System calls Limited system calls Secure isolation }
  • 19. Cloud OnAir Cloud OnAir Cloud Run サービスの利用
  • 20. Cloud OnAir HTTPS によるアクセス Service A https://servicea-q6vo4odwpq-an.a.run.app サービスを新規デプロイすると FQDN と SSL 証明書が割り当てられ、HTTPS でアクセス可能 $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello
  • 21. Cloud OnAir IAM による認証 IAM Service A 認証 デフォルトで IAM によるアクセス認証が有効 role: "roles/run.invoker" member: "cloudtaro@..." Header: "Authorization: bearer ID_TOKEN" $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello HTTPS
  • 22. Cloud OnAir 一般公開する場合 サービスをデプロイする際に、--allow-unauthenticated オプションを 指定し、認証なしアクセスを許可する $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello --allow-unauthenticated IAM Service A role: "roles/run.invoker" member: "allUsers" HTTPS
  • 23. Cloud OnAir メッセージングサービスとの連携 Cloud Pub / Sub から Cloud Run のサービスに対して イベントのプッシュを行う IAM Service A Cloud Pub / Sub role: "roles/run.invoker" member: "pubsub@..." $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello 認証 HTTPS
  • 24. Cloud OnAir 非同期処理 Cloud Tasks の HTTP タスク ハンドラとして Cloud Run のサービスを利用する IAM Service A Cloud Tasks role: "roles/run.invoker" member: "cloudtasks@..." $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello 認証 HTTPS
  • 25. Cloud OnAir 定期実行 Cloud Scheduler から定期的に Cloud Run のサービスを呼び出す IAM Service A Cloud Scheduler role: "roles/run.invoker" member: "cloudscheduler@..." $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello 認証 HTTPS
  • 26. Cloud OnAir Cloud OnAir Cloud Run から 他のサービスを利用
  • 27. Cloud OnAir サービスアカウントの利用 サービスアカウントを使って他の GCP サービスへアクセス サービスのデプロイ時に任意のサービスアカウントを指定することが可能 Service A Container Instance App /HTTP Server $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello --service-account “run-storage@...” from google.cloud import storage storage_client - storage.Client() Bucket = storage_client.get_bucket(BUCKET_NAME) app.py Cloud Storage 等 他の GCP サービス デフォルトのサービスアカウントはCompute Engine のデフォルトサービス アカウント API
  • 28. Cloud OnAir 別の Cloud Run サービスへのアクセス Service A Cloud Run から他の Cloud Run サービスを呼び出す場合も IAM 認証を利用可能 メタデータサーバーから ID トークンを入手し、ヘッダーに付けてリクエスト Container Instance App /HTTP Server app.py IAM Service B token_response = get(token_request_url,  headers=token_request_headers) jwt = token_response.content.decode("utf-8") receiving_service_headers = {'Authorization': 'bearer {}'.format(jwt)} response = get(receiving_service_url, headers=receiving_service_headers) HTTPS
  • 29. Cloud OnAir Cloud SQL への接続 Service A アプリケーションから UNIX ソケット経由で Cloud SQL Proxy へ接続可能 第2世代の MySQL インスタンス or PostgreSQL インスタンス を推奨 Container Instance App / HTTP Server import MySQLdb db = MySQLdb.connect(unix_socket=‘/cloudsql /[CONNECTION NAME]’, user=CLOUDSQL_USER, passwd=CLOUDSQL_PASSWD) $ gcloud beta run deploy servicea --image gcr.io/cloudrun/hello --add-cloudsql-instances INSTANCE-ID Cloud SQL app.py
  • 30. Cloud OnAir シークレット管理 現在 Cloud KMS は Cloud Run を直接的にサポートしていない 予めKMSで暗号化したシークレットを Cloud Storage に保存し、 必要時にダウンロードして復号化する方法がワークアラウンドとして 利用できる。 Cloud Run Cloud Storage Cloud KMS ① 暗号化されたシークレットを取得 ② 暗号化されたシークレットを復号化 ③ App が復号化した シークレットを利用
  • 31. Cloud OnAir シークレット管理 ~ Berglas Berglas を使うことでアプリケーション自体から Cloud Storage や Cloud KMS へ のアクセスやシークレットのハンドリングロジックを排除し、 シークレット管理をシンプルに行うことが可能に Cloud Run Cloud Storage Cloud KMS ① 暗号化されたシークレットを取得 ② 暗号化されたシークレットを復号化 ③ App が復号化した シークレットを利用 Berglas でラップ
  • 32. Cloud OnAir Cloud OnAir Concurrency と オートスケーリング
  • 33. Cloud OnAir Concurrency Concurrency とは同時の 1 つの Container Instance に投げられる リクエストの最大数 Google Cloud Functions など一般的な FaaS は 一度に1つのリクエストしかハンドルできない。 なので "concurrency = 1". Cloud Run の場合、 concurrency の値を 1 から 80 まで設定できる (default: 80) ので、1 つの コンテナインスタンス で同時に 複数のリクエストを処理することが出来る 最適な Concurrency 値は実装に依存するので、 本番利用前に十分に検証し確認する必要がある Service A v1 concurrency = 1 Service A v2 concurrency = 20
  • 34. Cloud OnAir オートスケーリング Cloud Run ではリクエスト数に応じて特に明示的に設定を していなくてもオートスケーリングを行う リクエストがしばらく (体感 5 分) 無い場合、コンテナインスタンスが 0 になる Service A 繁忙期 Service A リクエストがない時間帯 コンテナインスタンス のデフォルト最大数は 1000
  • 35. Cloud OnAir コールドスタート Cloud Run は サービス特性上コールドスタートが多くなる場合がある コールドスタートとは一からコンテナを起動しリクエストを受けられる 状態になるまでのことを指し、この時間が長いとレスポンスタイムなどに 影響がある 以下の方法によりコールドスタートによる影響を軽減する 1. Concurrency 数の最適化によるオートスケール時のコールドスタート数削減 2. Cloud Scheduler などを利用して定期的にリクエストを Cloud Run に投げることで コンテナインスタンスが 0 になることを防ぐ 3. コンテナ自体の起動時間を短くする
  • 38. Cloud OnAir Custom Domain デフォルトでは run.app のサブドメインが割り当てられるが、 お客様自身のドメインを使うことも可能 SSL 証明書は Let’s Encrypt で自動的に払い出される ( 5 ~ 10分掛かる ) GET https://hwpy.crun.gcpx.org hwpy.crun.gcpx.org IN CNAME ghs.googlehosted.com. DNS resolve 1 つのサービスに対して複数のドメインをマッピングすることが可能 Hostヘッダー毎のリクエストルーティングなどに便利
  • 40. Cloud OnAir Cloud Build サーバーレスな CI/CD プラットフォーム お客様が VM を用意したりキャパシティの管理をする必要はない 柔軟なビルドステップ あらゆるサーバーレス CLI ツールをビルドステップとして組み込むことが可能 デベロッパーフレンドリー 開発者が使い慣れた Git のイベントに応じたトリガー
  • 41. Cloud OnAir Cloud Build を利用した CI /CD ワークフロー Cloud Source Repositories Cloud Build Google Container Registry Cloud Run開発者 ソースコード管理に Cloud Source Repositories ビルドとデプロイに Cloud Build コンテナイメージ管理に Google Container Registry を利用し、CI/CD ワークフローをサーバーレスに構築可能 $ git commit $ git push Trigger $ docker push get container image
  • 43. Cloud OnAir Stackdriver サポート Error ReportingLoggingMonitoring Metric を Revision 単位で 選択可能 CPU/Memory の Allocaiton や request count や request latency など計測可能 Revision 単位で アクセスログや コンテナの終了などの イベントログを 確認可能 Cloud Run で実行されて いるアプリの中で 発生した Exception など を拾いレポート
  • 44. Cloud OnAir Cloud OnAir Demo Stackdriver によるメトリックスとログの確認
  • 45. Cloud OnAir Cloud OnAir 他の GCP サーバーレスコンピュートとの 使い分け
  • 46. Cloud OnAir 各サービスの特徴 ● ソースコードベース ● Web / API ● ユーザー数・ナレッジの 多さ ● 1 プロジェクトにつき 1 リージョンの縛り ● ソースコードベース ● イベントドリブン ● あくまで関数 ● 最大 9 分の実行時間 ● 1 concurrency / instance ● コンテナベース ● Web / API ● ランタイム制約、 ロックインなし ● 最大 15 分 の実行時間 ● 1 プロジェクトで複数リー ジョン利用可能 Cloud Functions Google App Engine Cloud Run
  • 49. Cloud OnAir ● Cloud Run はコンテナをサーバーレスに使える便利なサービス ● 従来の PaaS / FaaS にあった言語ランタイム及び ライブラリに制約がない ● 0 to N のスケーリングや小さめのスペックなどの特徴を考慮の上、ご利 用ください ● 今後の機能拡充にご期待ください! まとめ