Google Cloudが説明するコンピューティングにおけるCloud Runの位置付け
“非エンジニア”でも1000人が利用する分析基盤を内製、イオンリテールのCloud Run活用
コンテナをシンプルに使えて、機能も豊富、様々なユースケースに適したCloud Run
続いて、グーグル・クラウド・ジャパンの技術部長である安原稔貴氏が、Cloud Runの位置付けや特徴、直近のアップデートについて解説した。
Google Cloudでは、5つのコンピューティングサービスを提供しており、サーバーレスでコンテナの実行環境を構築できるのがCloud Runである。サーバーレスのサービスは、Cloud Runに加え、アプリケーション実行環境の「App Engine」、Functions as a Serviceの「Cloud Functions」を提供するが、2024年8月にCloud FunctionsがCloud Runに統合されて、「Cloud Run Functions」にリブランディング(パブリックプレビュー中)されている。
Cloud Run Functionsは、コンソール内でコーディングをしてデプロイするという、“シンプル機能を簡素化した開発体験で構築できる”Cloud Runファミリーとして位置付けられ、Cloud Runの機能にもシームレスにアクセスできる。
一方、コンテナ開発を前提としたサービスは、Google Kubernetes Engine(GKE)とCloud Runの2つがあるが、「GKEはカスタマイズ性が高く、大規模なアプリケーションでコンテナ基盤を利用する際に適している。小規模なアプリケーション、開発者だけなど、人数の少ないチームで運用する場合には、手軽に開発ができるCloud Runが最適」と安原氏。
安原氏は、Cloud Runの特徴を3点挙げた。
ひとつは、「開発生産性」。サーバーレスネイティブで設計され、インフラストラクチャーの管理・設計に費やす時間を減らして、その分をコード作成などの時間に費やすことができる。従来のPaaSやFaaSにあった言語やライブラリの制約もない。
2つ目は「信頼性」。標準で冗長構成がとられ、Google Cloudがフルマネージする高い信頼性の環境で利用できる。
3つ目は、「コスト」。ニーズに応じて高速に自動スケーリングし、リクエストがない場合にはゼロまで縮小。使った分だけコストが発生する完全な「Pay per Use」で提供される。
また、他社のサーバレスサービスと異なる点として、OSSの「Knative」と互換性があるため、ベンダーロックインにならない。「Google Cloudと合わなければ、オンプレミスや他社クラウドなどで、Knativeベースで環境を構築でき、ロックインに陥らずサービスを使える」と安原氏。
ひとつのコンテナとひとつのリソースで複数の同時接続を処理できること、CPUをAllocationすることでHTTPリクエストがない状況でもバックグラウンドタスクの実行が可能なこと、Cloud Service Mesh(パブリックプレビュー)を適用することでサービス間認証の実装が不要なことなども、Cloud Runの特徴として紹介された。
あわせて紹介されたのが、Cloud RunでNVIDIA GPUがアクセスできるようになったというアップデートだ(パブリックプレビュー中)。安原氏は、「端的に言うとGPUをサーバーレスで使えるようになった。様々な最適化機能も含まれており、例えばドライバーがインストール済みなためコードを書くだけでGPUが使える」と説明する。
安原氏は、「Cloud Runは、コンテナをシンプルに使える上に、色々な機能が揃っているため、色々なユースケースに適用できるのがポイント」と強調する。加えて、App Engineと比べても「最新のトレンドに応じた機能の拡張も、Cloud Runに投資が集中しているので、使いやすい」と付け加えた。