[Next 2019聴講メモ] Cloud Run ~Knativeを使った新しいサーバーレス
※※2019/08/14 追記 YouTubeに投稿されたセッションのリンクを追加しました。※※
Cloud Run ~Knativeを使った新しいサーバーレス
- 篠原一徳
- Google Cloud
- Anthos
- serverless
- k8s
- YouTube
そもそもserverlessって?(Googleの定義)
- no infra management
- インフラの管理はユーザーでは行わない
- fully managed security
- Google側でセキュリティ問題が完結している
- pay only for usage
- 従量課金制
googleのサーバーレスコンピュート
- Functions
- App engine
- Cloud Run
why Cloud Run?
- Cloud Run以外で起こる問題点
- 使用できる言語、ライブラリに制約
- ベンダーロックイン
- GPU/TPUなど特定のハードへのアクセスができない
- 解決のために
- Knative
- k8sクラスタにFaaS/PaaS実行環境を構築
- OSS(Google発祥)
- コンテナをサーバーレスライクに使える
- k8sクラスターのハードウェアリソースが使える(GPU/TPU)
- building block
- platform
- k8s
- istio
- Primitives(use Knative)
- build
- serving
- Events
- Products
- SAP
- Cloud Run
- Cloud Run on GKE
- etc
特徴
- 高速なデプロイ
- ステートレスなコンテナ
- 高速に0から無限にスケール
- 数秒でデプロイ
- サーバーレスネイティブ
- コードに集中できる
- ランタイムの制約がなくなる
- 高いポータビリティ
- コンテナベースのため
- Knativeベースであれば他ベンダーでも使える
2つのCloud Run
- Cloud Run
- 完全にサーバーレス
- 使った分だけ
- Borgが使われている
- VPCアクセスできない
- Cloud Run on GKE
- クラスターの費用に依存する
- VPCアクセスできる
- Google Cloud
- Anthos
- serverless
- k8s
- インフラの管理はユーザーでは行わない
- Google側でセキュリティ問題が完結している
- 従量課金制
- 使用できる言語、ライブラリに制約
- ベンダーロックイン
- GPU/TPUなど特定のハードへのアクセスができない
- Knative
- k8sクラスタにFaaS/PaaS実行環境を構築
- OSS(Google発祥)
- コンテナをサーバーレスライクに使える
- k8sクラスターのハードウェアリソースが使える(GPU/TPU)
- building block
- platform
- k8s
- istio
- Primitives(use Knative)
- build
- serving
- Events
- Products
- SAP
- Cloud Run
- Cloud Run on GKE
- etc
- platform
- ステートレスなコンテナ
- 高速に0から無限にスケール
- 数秒でデプロイ
- コードに集中できる
- ランタイムの制約がなくなる
- コンテナベースのため
- Knativeベースであれば他ベンダーでも使える
- 完全にサーバーレス
- 使った分だけ
- Borgが使われている
- VPCアクセスできない
- クラスターの費用に依存する
- VPCアクセスできる
2つの対比としてはこちらがよくわかりやすい(らしい)
リソースモデル
- Service
- Cloud Runの主リソース
- Service毎にエンドポイントを提供
- Revision
- デプロイする毎に生成される
- デプロイされるとリクエストが割り振られる
- Container Instance
ユースケース
- 外部サービス公開
- IAMをつかってプライベートにアクセス
- エンドポイント自体はネットワークに公開される(ファイアウォールはない)
- ソースに認証トークンを埋める
- 非同期タスク
- Cloud Schedulerを使って定期的に呼び出す
- DB接続
なぜ高速にデプロイできるのか
- gVisorを使っている
- システムコールを阻害
- concurrencyを使ったリソース消費とコストの最適化
- 1つのコンテナインスタンスに投げられるリクエストの最大数
- コンテナとかを適切に制御
-
チューニングポイントになる
- レイテンシーとかに関わる
- 時間課金の考え方
- 完全にアクセスがなくなるまで
- Stackdriverとの連携
- Monitoring
- logging
- error reporting
どうサーバーレスを使い分ける?
- Functions
- ソースベース
- イベントドリブン
- App Engine
- ソースベース
- 1プロジェクトにつき1リージョンの制約
- Cloud Run
- コンテナベース
- ランタイム制約・ロックインなし
まとめ
- Cloud Runはコンテナをサーバーレスに使える
- 様々な制約がない(言語、ランタイム)
- YouTube
個人的に調べたいToDo
- gVisor
- Cloud RunとCloud Run on GKEの対比
Author And Source
この問題について([Next 2019聴講メモ] Cloud Run ~Knativeを使った新しいサーバーレス), 我々は、より多くの情報をここで見つけました https://qiita.com/kaedemalu/items/1be2bda3680ff3ca1ba9著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .