GOOGLE CLOUD 基礎

Cloud Load Balancingで
公開する

Cloud Runの前に、グローバルIPと横断的な制御をまとめる入口を置く。

TL;DR
  1. グローバルIPでHTTP(S)を受ける。
  2. WAF・認証・証明書を入口に集約できる。
  3. DNSとTLS証明書まで含めて公開経路を作る。

01 グローバルな入口

利用者はドメイン名でアクセスし、Cloud Load BalancingのグローバルIPが通信を受け、バックエンドへルーティングする。Cloud Run、GCE、GKEを同じ入口の後ろに置ける。

Cloud Load Balancingの全体像
公開経路の受け口を一つに集約する。

02 Cloud Run前段に置く理由

Cloud ArmorによるWAF、IAPによる認証、カスタムドメインと証明書の管理などをアプリ本体から外へ出せる。複数のバックエンドを統一的に扱いたいときにも向く。

ロードバランサ前段の機能
横断的な制御をアプリに重複実装しない。
判断: Cloud Run直公開で足りるか、公開入口に必要な機能があるかで選ぶ。

03 DNSとTLSを一つの流れで確認

Cloud DNSのレコードでドメインをロードバランサのIPへ向け、Certificate Managerなどの証明書をHTTPSの入口へ関連付ける。

DNSと証明書の公開フロー
名前解決、TLS、ルーティングのどこで止まったかを切り分ける。

結論

  1. 公開入口を集約する。
  2. WAF・認証・証明書を前段の責務にする。
  3. DNSからバックエンドまで通しで確認する。