Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to Cloud Run 2021

923237754890d536819892ad42451555?s=47 sakajunquality
February 04, 2021

Introduction to Cloud Run 2021

923237754890d536819892ad42451555?s=128

sakajunquality

February 04, 2021
Tweet

Transcript

  1. Jun Sakata Google Developers Expert, Cloud @sakajunquality Cloud Run 入門

    2021.02.04 #gdgtokyo GDG Tokyo New Year LT大会 2021
  2. アジェンダ Cloud Run - Cloud Runとは - 使い方 - 他のプロダクトとの比較

    - まとめ
  3. Cloud Runとは コンテナを秒単位で本番環境にデプロイ

  4. Cloud Run - フルマネージドのサーバーレスのプラットフォーム - 時間課金 / Scale to 0

    - 任意コンテナイメージをデプロイ - HTTP / gRPC / WebSocket
  5. Cloud Run - サーバーレスのアプリケーション - 任意コンテナイメージをデプロイ - HTTP / gRPC

    / WebSocket Cloud Run HTTP
  6. Cloud Run - サーバーレスのアプリケーション - 任意コンテナイメージをデプロイ - HTTP / gRPC

    / WebSocket Cloud Run gRPC
  7. 使い方

  8. Containers? - i.e. Docker Image

  9. コンテナのリリース ソースコード コンテナ イメージ 実行環境

  10. コンテナのリリース ソースコード コンテナ イメージ 実行環境 ビルド デプロイ

  11. Dockerfile?

  12. // 書く vim Dockerfile // ビルド gcloud builds submit --tag

    [image] . // デプロイ gcloud run deploy --image [image]
  13. Dockerfile書きたくない?

  14. Google Cloud buildpacks - Dockerfileなしにコンテナイメージを作成 - CNCFのBuildpacksをベースとしたOSS - https://github.com/GoogleCloudPlatform/buildpacks

  15. // けす rm Dockerfile // ビルド gcloud builds submit --pack

    image=[image] // デプロイ gcloud run deploy --image [image]
  16. 1コマンドで?

  17. // いらない rm Dockerfile // ビルドとデプロイ gcloud beta run deploy

    --source .
  18. コンテナのリリース(buildpacks) ソースコード コンテナ イメージ 実行環境

  19. Dockerfileそれでも書いた ほうがいい場合も?

  20. Cloud Runのリソース

  21. Cloud Run リソース - CPU: 1,2,4 vCPU - Memory: max

    8GB - 最大のリクエスト: 15m (GA), 60m (Preview) - インスタンス数: 0-1000 (最小も指定可能に) - インスタンスあたりの同時リクエスト: 1-250 - Custom Domain/Custom TLS Certificate - Cloud Traceとの連携
  22. Cloud Run 簡易CIも - GitHubやCloud Source Repositiriesのソースコードに対してCloud Runに 対するデプロイのパイプラインをGUIで設定可能 -

    https://cloud.google.com/run/docs/continuous-deployment-with-clo ud-build
  23. Cloud Run w/ GitHub Actions - GitHub Actionsのヘルパーも公式で用意されている - https://github.com/google-github-actions/setup-gcloud

  24. Cloud Runの連携 - Cloud Workflow - Cloud API Gateway -

    Eventarc - etc...
  25. Cloud Run Eventarc - Event driven trigger via Audit Logging

    - https://cloud.google.com/blog/topics/developers-practitioners/event arc-unified-eventing-experience-google-cloud
  26. 他のGCPのプロダクト と比較?

  27. v.s. App Engine (GAE) - 対応言語やバージョンの縛りがなくなる - Service Account が柔軟(複数サービス展開時)

    - App Engineのがいいことも - Static Contents Server / Cloud CDN - Cloud IAP - (GAEの内部でも buildpack 使われてる)
  28. v.s. Cloud Functions (GCF) - Runは各インスタンスが同時に複数リクエスト受けることができる - 主要言語に Functions フレームワークも提供しているのでRunをFaaSのよ

    うな利用でも利用可能 - https://cloud.google.com/functions/docs/functions-framework?hl= en
  29. v.s. Kubernetes Engine (GKE) - クラスター課金ではなくリクエストベースの課金 - クラスターが管理不要なので気軽に始められる - GKEのほうが柔軟性はある

    - プロトコル, 実行時間の縛り, サイドカー, ローカルのディスクなど
  30. まとめ Cloud Runはいいぞ!

  31. まとめ - Cloud Runはフルマネージドのサーバーレスランタイム - BuildpacksによりDockerfileを書かなくてもよい - 日々アップデートされており柔軟なワークロードに対応 - リリースノート

    - https://cloud.google.com/run/docs/release-notes?hl=en
  32. Thank You! Jun Sakata Google Developers Expert, Cloud @sakajunquality