OPS

[Google Cloud Day: Digital ’21] GKEをはじめとしたGoogleCloudのコンテナサービス

2021.05.27

本記事のポイント

Google Cloudのデジタル カンファレンス”Google Cloud Day: Digital '21”が5/25よりスタートしました!
本記事では、「基調講演: The open cloud leading transformation」にて説明のあった、GKEの新しいタイプであるGKE AutopilotやCloud Runについてご紹介します。


はじめに

Google Cloudのデジタル カンファレンス”Google Cloud Day: Digital ’21”が5/25よりスタートしました! GCD ‘21では、Google Cloud の最新ソリューションや、さまざまな業種の動向がわかる基調講演とブレイクアウトセッションが視聴できるほか、 ハンズオンやライブQ&Aなど、多様なコンテンツが予定されています。

本記事では、「基調講演: The open cloud leading transformation」にて説明のあった、GKEの新しいタイプであるGKE AutopilotやCloud Runについてご紹介します。

▼イベント詳細
https://goo.gle/39zOXs6

▼セッションリンク
https://cloudonair.withgoogle.com/events/google-cloud-day-digital-21?talk=keynote-2

コンテナサービスの需要

コンテナ導入に関する調査の結果によると、国内企業のうち約7割の企業が、「コンテナ導入済み」もしくは「コンテナに興味がある」と回答したとのことでコンテナの需要が高まっていることがわかります。 また、コンテナ導入済み企業のうち半数以上はkubernatesを選択しているそうで、今からコンテナの使用を検討している方は各クラウドが提供しているマネージドkubernatesサービスを使用することをおすすめします!

なお、Google Cloudは早期から、オープンソースの基盤ソフトウェアを活用してクラウドサービスを提供・利用する「クラウドアプローチ」をとっており、特にkubernatesやknativeに力を入れています。

GKE Autopilot

GKEの新しい運用オプションとしてGKE Autopilotが2021年2月にリリースしました。 そのため今後はGKE StandardとGKE Autopilotの2つのモードから選択可能です。

これまでのGKEではあらかじめプロビジョニングしたNodeに対して課金が発生していましたが、GKE AutopilotではPod 単位での課金となるためコスト削減が期待できます。 AWSでいうEKS Fargateに相当するようなサービスとなります。

GKE Autopilotのメリット

  • 特長1 フルマネージドのkubernates環境
  • 特長2 ノードの管理が不要
  • 特長3 Podとしての利用分のみ課金

▼参考
https://cloud.google.com/blog/ja/products/containers-kubernetes/introducing-gke-autopilot

Cloud Run

Cloud Runはフルマネージドのサーバレスプラットフォームです。 スケーラブルなコンテナ環境であり、使用した量に対してのみ課金されます。またkubernatesを基盤としたサーバレス実行環境であるオープンソースのKnative互換のサービスとなります。提供形態としては、フルマネージド版Cloud Runと既存kubernates環境を活用するCloud Run for Anthosがあります。

Cloud Runのメリット

  • 特長1 サーバレス環境のためメンテナンス不要
  • 特長2 Zero to Nでスケール
  • 特長3 使用したリソース分に対してのみ課金

▼参考
https://cloud.google.com/run?hl=ja
https://cloud.google.com/knative/?hl=ja

Google Cloud Buildpacks

Google Cloud Builds packs (以降 Buildpacks) は Dockerfile 無しでコンテナイメージを作成するビルドツールです。新しいアプリケーションをコンテナで作成する際、コンテナイメージを作成することは手間と感じるかと思いますが、このサービスを使うことで、なんとDockerfile無しでソースコードからコンテナイメージを作成することができるんです! これで、開発者はコードを書くことにだけ集中できますね。オープンソースの Buildpacks v3 に準拠しており、Cloud Run や GKE 上で動かすコンテナイメージを作成するのに最適化されています。

「Dockerfile無しでコンテナイメージを作成できる」とはいっても、Dockerfileに相当するような設定情報を書いたビルドパックは事前に用意しておく必要があります。 その準備さえできていれば、あとは、ビルダーと呼ばれるOCIイメージがソースコードの言語を自動検出し適切なビルドパックを選んでビルドしてくれます。

ちなみに、実際にビルドを行うツールとしては、Google主導で開発しているBazelを使用しているそうです。

イメージ作成の流れ

  1. 1.ビルダーがソースコード言語を自動検出
  2. 2.適切なビルドパックの選択
  3. 3.ソースコードを実行可能なアーティファクトへ変換
  4. 4.依存関係のあるミドルウェアをインストール
  5. 5.コードのコンパイルを実施
  6. 6.コンテナイメージの生成

▼参考
https://buildpacks.io/
https://cloud.google.com/blog/ja/products/containers-kubernetes/google-cloud-now-supports-buildpacks

まとめ

今回は”Google Cloud Day: Digital ’21”の基調講演で説明のあったコンテナサービスについて簡単にご紹介しました。今からコンテナの使用を検討している方は各クラウドが提供しているマネージドkubernatesサービスを使用することをおすすめします。また、Google Cloudはコンテナサービスだけでなく機械学習や分析基盤にも強いのでその他のサービスもチェックしてみてください。