Cloud Run でダイレクト VPC 下り(外向き)の提供を開始: パフォーマンス向上と費用削減を実現
Google Cloud Japan Team
※この投稿は米国時間 2023 年 8 月 15 日に、Google Cloud blog に投稿されたものの抄訳です。
このたび、Cloud Run のダイレクト VPC 下り(外向き)のプレビュー版がリリースされました。この機能を使用すると、サーバーレス VPC アクセス コネクタを設定せずに、トラフィックを VPC ネットワークに送信できるようになります。ダイレクト VPC 下り(外向き)は高速で、簡単に設定でき、大量のトラフィックを低費用で処理することが可能です。
これは Cloud Run における大きなアップデートです。詳細をご説明する前に、ダイレクト VPC 下り(外向き)をすでにご利用の Paack でどのような効果が得られたのか、その声をご紹介します。
「Paack は Cloud Run をいくつかのミッション クリティカルなアプリケーションに使用しています。その多くは、Cloud SQL データベースへの接続や倉庫で使用するロボットへの接続などの VPC アクセスに依存しています。これまでは、VPC コネクタを利用してきました。ダイレクト VPC 下り(外向き)を使えば、運用効率が大幅に向上し、チームで行う作業の独立性を高められるようになります。また、DevSecOps チームと NetOps チームがツールを使って、セキュリティを強化し、ネットワーク通信の管理を改善できるようになります。」 - Paack、クラウド アーキテクト Miguel F. Nuñez Burguera 氏
VPC へのトラフィックの送信が必要になるケース
VPC にトラフィックを送信する一般的なユースケースとして、内部 IP アドレスに接続する場合や、ファイアウォール ルールなどのネットワーク ポリシーに沿ってトラフィックを制御する場合などがあります。
内部 IP アドレスを持ち、Cloud Run から接続が頻繁に行われるリソースとして、次のような例があります。
Memorystore インスタンス。 (Redis または Memcach を使用したマネージド インスタンス)。
(セキュリティ強化のために)パブリック IP を持たない Cloud SQL インスタンス。
オンプレミス リソース。
Compute Engine 仮想マシン。
Google Kubernetes Engine の内部ロードバランサを使用したサービス(TCP / UDP または HTTP)。
ダイレクト VPC 下り(外向き)とは
ダイレクト VPC 下り(外向き)を Cloud Run サービスで有効にすると、VPC ネットワーク上で Cloud Run インスタンスに内部 IP アドレスが割り当てられます。この新たなインターフェースを使用できるのは TCP / UDP の下り(外向き)のみです。これは、Cloud Run インスタンスを囲むファイアウォールと捉えることもできます。このファイアウォールは外向きの接続を許可しますが、VPC から Cloud Run インスタンスへ向かう接続の確立は許可しません。
重要なのは、Cloud Run サービスの HTTPS エンドポイントに対するウェブ リクエストやイベントが、これまでと同じように Cloud Run インスタンスに向けてルーティングされるという点です。これはダイレクト VPC 下り(外向き)を有効化しても変わりません。
サーバーレス VPC アクセス コネクタとの比較
VPC コネクタとダイレクト VPC 下り(外向き)との違いを理解するには、VPC コネクタがマネージド コネクタ インスタンスの集まりであるという点に気付く必要があります。すべてのコネクタ インスタンスは内部 IP アドレスを持ち、Cloud Run からの外向きの接続に対するプロキシとして機能します。これによりネットワーク パスにステップが新たに追加されます。
VPC コネクタは従量課金制ではありません。コネクタ インスタンスは仮想マシンと捉えることができます。両者は、使用していなくても、有効化するだけで費用が発生するという点でとてもよく似ています。ダイレクト VPC 下り(外向き)にはコネクタ インスタンスが不要なため、必要な費用はネットワーク料金のみということになります。このため、ダイレクト VPC 下り(外向き)の方が費用が低くなります。これは、Carrefour がダイレクト VPC 下り(外向き)の評価を行った際に見出した主要な利点の一つです。
「Carrefour は、当社グループの財務データ ウェアハウスを BigQuery に保存し、そのデータの取り込み、変換、読み込みに Cloud Run を使用しています。Cloud Run はシンプルで使いやすいため、エンジニアが素早く作業できます。しかも従量課金制なので、プロビジョニングの過不足を心配する必要がありません。これまでダイレクト VPC 下り(外向き)を試験的に使用して、プライベート ネットワーク上にホストされている SAP データベースにアクセスしてきましたが、結果はまさに私たちが求めていたとおりのものでした。アーキテクチャが簡潔になり、従量課金制モデルとの整合性が確保され、パイプラインの総所有コストに関する状況が改善されたのです。」 - Carrefour、グループデータ アーキテクト Guillaume Blaquiere 氏
ダイレクト VPC 下り(外向き)では新たなダイレクト ネットワーク パスが使われるため、コネクタ インスタンスは必要ありません。この新たなパスは高速で、VPC コネクタよりも多くのトラフィックを処理することができるため、レイテンシが低減され、スループットが向上します。
まとめ
VPC コネクタに比べて、ダイレクト VPC は設定と管理が簡単で、次のようなメリットがあります。
ネットワーク パス内のホップが減少し、レイテンシが低減されます。
新たなダイレクト ネットワーク パスが使われるため、スループットが向上します。
従量課金制 - ネットワーク料金のみ(常時有効化されるコネクタ インスタンスが不要)。
ダイレクト VPC 下り(外向き)を試用される場合は、この機能がまだプレビュー リリース ステージにあるという点にご留意ください(2023 年 8 月現在)。本番環境のワークロードについては、引き続きサーバーレス VPC アクセス コネクタの使用をおすすめします。
利用を開始するには、ダイレクト VPC 下り(外向き)を Cloud Run サービスで有効にしてください。詳細については、ダイレクト VPC 下り(外向き)に関するドキュメントをご覧ください。
- デベロッパーリレーションズ エンジニア Wietse Venema