Slide 1

Slide 1 text

Jun Sakata Google Developers Expert, Cloud @sakajunquality GKE Overview 2021.03.08 #GCPUG Tokyo GKE Day March 2021

Slide 2

Slide 2 text

アジェンダ Google Kubernetes Engine - GKE とは - 他の Google Cloud のコンテナランタイム - Standard と Autopilot - GKE と Upstream Kubernetes との違い - まとめ

Slide 3

Slide 3 text

GKE とは Secured and fully managed Kubernetes service with revolutionary autopilot mode of operation.

Slide 4

Slide 4 text

GKE - Kubernetes のマネージドサービス - What is Kubernetes? - https://speakerdeck.com/masayaaoyama/devboost-k8s-cn

Slide 5

Slide 5 text

何がマネージされているのか - コントロールプレーン https://cloud.google.com/blog/products/containers-kubernetes/introducing-gke-autopilot

Slide 6

Slide 6 text

何がマネージされているのか - コントロールプレーン - Google Cloudがすべて管理 - i.e. No SSH - リクエストに応じて自動でスケールアップ - ダウンタイムなしのメンテナンス - ※ Regional Clusterのみ https://cloud.google.com/blog/products/containers-kubernetes/introducing-gke-autopilot

Slide 7

Slide 7 text

何がマネージされているのか - データプレーン(ノード) https://cloud.google.com/blog/products/containers-kubernetes/introducing-gke-autopilot

Slide 8

Slide 8 text

何がマネージされているのか - データプレーン(ノード) - ノードプールと言う形で抽象化して提供 - ノードのGCEのスペックを選択 - スケールアウト・イン、サービスイン・アウトは 自動 - パッチマネジメントも自動 - SSHは可能 https://cloud.google.com/blog/products/containers-kubernetes/introducing-gke-autopilot

Slide 9

Slide 9 text

GKE Day 2 Operations - メンテナンス - コントロールプレーンに加えてノードのメンテナンスが必要 - ※ Surge Upgrade / Maintenance Windowなどの便利な機能は存在 - 最適化 - GKE上のワークロード(Pod) に応じたノードのスペックの最適化 - ※ Node Auto Provisioning なども存在 - 監査やセキュリティ - SSHできてしまうのでポリシーによっては厳しい対応が必要な場合も

Slide 10

Slide 10 text

https://www.youtube.com/watch?v=_JKsv2BtAnY

Slide 11

Slide 11 text

GKE Autopilot - コントロールプレーンに加えてノードも完全に Google Cloud が管理 - ユーザーサイドからGCEは見れない - 必要なリソースをGoogle側が割当 (NAP) - No SSH - ※ Kubernetes のノードとしては見れる https://cloud.google.com/blog/products/containers-kubernetes/introducing-gke-autopilot

Slide 12

Slide 12 text

GKE Autopilot - クラスター+ノードのインスタンス課金→クラスター+Pod単位の課金 - StandardだとノードはGCEのSLA→Autopilotはノード部分も含めてGKEとして SLA保証 - 裏側のDeep Diveは @kazshinohara におまかせ

Slide 13

Slide 13 text

https://twitter.com/kelseyhightower/status/1364779881297440768

Slide 14

Slide 14 text

GKE Autopilot Limitations - 便利だが制限も - https://cloud.google.com/kubernetes-engine/docs/concepts/autopilot-ove rview#limits - Resource, Linux Capabilities, Webhook etc... - この辺の話は @makocchi さんが詳しく Gatekeeper について解説してくれます

Slide 15

Slide 15 text

他の Google Cloud の コンテナランタイム

Slide 16

Slide 16 text

Cloud Run - サーバーレスのアプリケーション - Knativeベース - 任意コンテナイメージをデプロイ - 基本的にイベント・ドリブン - HTTP / gRPC / WebSocket

Slide 17

Slide 17 text

Compute Engine - IaaS VM - GKE Standardでのノード - コントロールプレーンなしでもコンテナはデプロイ可能 - https://cloud.google.com/compute/docs/containers/deploying-containers

Slide 18

Slide 18 text

Container Runtime Cloud Run GKE Autopilot GKE Standard GCE GAE Flex

Slide 19

Slide 19 text

Container Runtime Cloud Run GKE Autopilot GKE Standard GCE GAE Flex 容易さ 自由度

Slide 20

Slide 20 text

Standard / Autopilot

Slide 21

Slide 21 text

Standard / Autopilot

Slide 22

Slide 22 text

Standard / Autopilot Standard - Node Config / Solo-tenant Node などよりパフォーマンス等を意識したカスタマイズが可能 - CPU/GPUの選択ができる - クラスター課金/SLA Autopilot - 汎用的につかえる (E2なのでN1と同水準のパフォーマンスは維持) - ワークロードや設定に制限がある - Pod 課金 /SLA

Slide 23

Slide 23 text

Upstream Kubernetes との違い

Slide 24

Slide 24 text

GKE specific features - Computing - Node Auto Provisioning - Multi-dimensional autoscaling - Node Config - Operations - Release Channel - Surge Upgrade - Maintenance Window

Slide 25

Slide 25 text

GKE specific features - Networking - NEG - Multi Cluster Ingress / Multi Cluster Service - Trust / Security - Shield GKE Nodes - GKE Sandbox - Workload Identity

Slide 26

Slide 26 text

まとめ GKE はいいぞ!

Slide 27

Slide 27 text

まとめ - GKE はマネージドの Kubernetes - Standard→ノードをユーザーが管理する分自由度が高い - Autopilot→新登場、制約が多い代わりにノード管理から開放 - イベント・ドリブンなものであれば Cloud Run も選択肢の一つ

Slide 28

Slide 28 text

Thank You! Jun Sakata Google Developers Expert, Cloud @sakajunquality