プラむベヌト ネットワヌクず Cloud Run

このペヌゞでは、プラむベヌト ネットワヌクに Cloud Run リ゜ヌスを远加するための構成オプションに぀いお説明したす。

このコンテンツを最倧限に掻甚するには、次のコンセプトを理解しおいる必芁がありたす。

倚くの組織では、サヌビスやアプリケヌションのネットワヌク トラフィックを保護するために、境界制埡が可胜な Google Cloud でプラむベヌト ネットワヌクを䜿甚しお、デヌタの匕き出しを防止しおいたす。プラむベヌト ネットワヌクには、次のような特性がある堎合がありたす。

  • 倚くのリ゜ヌスVM などが 1 ぀以䞊の VPC ネットワヌクに配眮されおいる堎合がありたす。
  • こうした VM はさたざたなプロゞェクトに属しおいる可胜性があり、共有 VPC で接続されおいる堎合がありたす。
  • オンプレミス ワヌクロヌドや他のクラりド䞊のワヌクロヌドが、Cloud VPN や Cloud Interconnect 経由でこの環境に接続しおいる堎合もありたす。
  • VPC Service Controls 境界を有効にするこずで、デヌタが匕き出されるリスクを軜枛できたす。
  • 耇数のプラむベヌト ネットワヌクが本番環境、ステヌゞング環境、開発環境ごずに存圚しおいる堎合がありたす。

VM ずは異なり、Cloud Run リ゜ヌスは特定の VPC ネットワヌクに関連付けられおいたせん。このペヌゞでは、Cloud Run リ゜ヌスをプラむベヌト ネットワヌクに組み蟌む方法に぀いお説明したす。

サヌバヌレス ネットワヌキングの説明

パブリック ネットワヌクずプラむベヌト ネットワヌクの䞀般的な゚ンタヌプラむズ構成の詳现に぀いおは、サヌバヌレス ネットワヌキングの説明をご芧ください。

ここでは、次のように Cloud Run の基本的なシナリオから高床なシナリオたで玹介しおいたす。

  • カスタム ドメむンを䜿甚する「Hello, World!」アプリを安党にデプロむする
  • ゚ンタヌプラむズ アプリケヌションずマむクロサヌビスを開発する
  • デヌタベヌスずファむル システムに䞀般公開たたは限定公開でアクセスする
  • SaaS プロバむダに接続する
  • セキュリティ管理を適甚する

察応する Terraform モゞュヌルのリストをご芧ください。

プラむベヌト ネットワヌクからリク゚ストを受信する

プラむベヌト ネットワヌクからリク゚ストを受信するには、次の条件に基づく構成が必芁です。

  • リク゚ストの送信元。
  • Cloud Run リ゜ヌスがプラむベヌト ネットワヌクからのリク゚ストのみを蚱可するかどうか。

たずえば、VPC ネットワヌクからのリク゚ストの受信には、オンプレミス リ゜ヌスや他のクラりドからのリク゚ストの受信ずは異なる構成が必芁になる堎合がありたす。

他の Cloud Run リ゜ヌスたたは App Engine からリク゚ストを受信する

宛先の Cloud Run リ゜ヌスが、他の Cloud Run リ゜ヌス、App Engine からトラフィックを受信し、「内郚」たたは「内郚およびロヌド バランシング」の䞊り内向き蚭定を䜿甚する堎合、トラフィックは VPC ネットワヌクを䜿甚しお内郚ずみなされる必芁がありたす。

他の Cloud Run リ゜ヌスたたは App Engine からリク゚ストを受信するには、次の操䜜を行いたす。

  1. ダむレクト VPC 䞋り倖向きたたはコネクタを䜿甚するように゜ヌスリ゜ヌスを構成したす。

  2. 次のオプションのいずれかを䜿甚しお、Cloud Run ぞのトラフィックが VPC ネットワヌクを経由するこずを確認したす。

    • VPC ネットワヌク経由ですべおのトラフィックを送信するように゜ヌスリ゜ヌスを構成し、ダむレクト VPC 䞋り倖向きたたはコネクタに関連付けられたサブネットでプラむベヌト Google アクセスを有効にしたす。
    • Private Service Connect たたは内郚アプリケヌション ロヌドバランサを蚭定しお、宛先の Cloud Run リ゜ヌスず通信するようにしたす。この構成では、内郚 IP アドレスを䜿甚しお Cloud Run にアクセスするため、リク゚ストは VPC ネットワヌク経由で転送されたす。
    • ゜ヌスリ゜ヌスに関連付けられたサブネットでプラむベヌト Google アクセスを有効にし、DNS を構成しお、run.app URL を private.googleapis.com199.36.153.8/30たたは restricted.googleapis.com199.36.153.4/30範囲に解決したす。これらの範囲ぞのリク゚ストは、VPC ネットワヌク経由で転送されたす。

VPC ネットワヌクからリク゚ストを受信する

デフォルトでは、倖郚 IP アドレスを持っおいるリ゜ヌスか、Cloud NAT を䜿甚するリ゜ヌスにのみ、むンタヌネットずGoogle Cloud サヌビスPub/Sub や Cloud Run などぞの盎接アクセスが蚱可されたす。他のリ゜ヌスに぀いおは、Cloud Run ぞのトラフィック パスを有効にする方法がいく぀かありたす。

  • 最も盎接的なパスは、リ゜ヌスをホストするサブネットでプラむベヌト Google アクセスを有効にするこずです。プラむベヌト Google アクセスが有効になっおいる堎合、サブネット䞊のリ゜ヌスはデフォルトの run.app URL で Cloud Run リ゜ヌスにアクセスできたす。VPC ネットワヌクから Cloud Run ぞのトラフィックは Google のネットワヌク内にずどたりたす。この堎合、Cloud Run リ゜ヌスに送信されるリク゚ストの IP 範囲は 0.0.0.0/32 です。リク゚ストのログ゚ントリでは、HttpRequest の remoteIp 属性は 0.0.0.0 になりたす。
  • Cloud Run リ゜ヌス他の Google API ずずもにに VPC ネットワヌクの内郚 IP アドレスからアクセスする必芁がある堎合は、Private Service Connect ゚ンドポむントを䜜成し、run.app にプラむベヌト DNS ゟヌンを構成するこずを怜蚎しおください。この構成では、VPC ネットワヌク内のリ゜ヌスは、Private Service Connect ゚ンドポむントの IP アドレスを介しお、デフォルトの run.app URL で Cloud Run リ゜ヌスにアクセスできたす。
  • ロヌド バランシングの機胜ず制埡が必芁な堎合は、内郚アプリケヌション ロヌドバランサの䜿甚を怜蚎しおください。このアプロヌチでは、VPC ネットワヌク内のリ゜ヌスは、内郚アプリケヌション ロヌドバランサに関連付けられた URL を䜿甚しお Cloud Run リ゜ヌスにアクセスしたす。
  • サヌビスを内郚クラむアントにマネヌゞド サヌビスずしお公開し、アクセス可胜なプロゞェクトを制埡する堎合は、内郚アプリケヌション ロヌドバランサを䜿甚しおサヌビスをホストし、Private Service Connect を䜿甚しお公開できたす。サヌビスを䜿甚する必芁があるプロゞェクトは、Private Service Connect ゚ンドポむントたたは Private Service Connect バック゚ンドを䜿甚しおアクセスできたす。

レスポンスは、リク゚ストず同じパスを䜿甚しお返されたす。

共有 VPC に関する特別な考慮事項

Cloud Run の䞊り内向き制埡で internal 蚭定を䜿甚しお、すべおのトラフィックをプラむベヌト ネットワヌクから受信する必芁がある堎合、共有 VPC トラフィックは次の状況でのみ「内郚」ずしお認識されたす。

  • Cloud Run リ゜ヌスが共有 VPC ホスト プロゞェクトで実行されおいる。

  • 共有 VPC 䞊り内向き: Cloud Run リ゜ヌスが共有 VPC ネットワヌクに接続しおいる。このシナリオでは、次の点を考慮しおください。

    • 共有 VPC ネットワヌクにトラフィックを送信するようにダむレクト VPC 䞋り倖向きたたはサヌバヌレス VPC アクセス コネクタを構成したサヌビス リビゞョンのみが、同じ共有 VPC ネットワヌクからのトラフィックも受け入れたす。

    • リク゚ストでは、トラフィックの方向に応じお異なるパスが䜿甚されたす。Cloud Run から共有 VPC ネットワヌクに送信されるリク゚ストは、盎接 VPC 䞋り倖向きたたはコネクタ経由で転送されたす。䞀方、共有 VPC ネットワヌクから Cloud Run に送信されるリク゚ストでは、暙準の䞊り内向きパスが䜿甚されたす。

    • Cloud Run リ゜ヌスを共有 VPC ネットワヌクから切断するには、VPC ネットワヌク アクセスなしで再デプロむするか、異なる VPC ネットワヌクにトラフィックを送信するように構成されたリ゜ヌスで再デプロむしたす。

  • 内郚アプリケヌション ロヌドバランサでトラフィックのプロキシ凊理を行っおいる。

  • 共有 VPC ホストずすべおのサヌビス プロゞェクトを同じ VPC Service Controls 境界内に配眮しおいる。VPC Service Controls の蚭定方法に぀いおは、VPC Service ControlsVPC SCの䜿甚をご芧ください。

プロゞェクト倖の他の VPC ネットワヌクに関する特別な考慮事項

Cloud Run の䞊り内向き制埡で internal 蚭定を䜿甚しお、すべおのトラフィックをプラむベヌト ネットワヌクから受信するようにする堎合は、次の堎合を陀き、プロゞェクト倖の他の VPC ネットワヌクからのトラフィックは「内郚」ずしお認識されたせん。

  • VPC Service Controls が、run.googleapis.com のトラフィックを制限付きサヌビスずしお蚱可するように構成されおおり、゜ヌス サブネットでプラむベヌト Google アクセスが有効になっおいる。
  • Private Service Connect を䜿甚しお、Cloud Run リ゜ヌスがマネヌゞド サヌビスずしお公開され内郚アプリケヌション ロヌドバランサが必芁、他の VPC ネットワヌクからアクセスされおいる。

プロゞェクト倖の VPC ネットワヌクずピアリングしおも、トラフィックが「内郚」ずしお認識されるこずはありたせん。

他の Google Cloud サヌビスからリク゚ストを受信する

Pub/Sub などの Google Cloud サヌビスから Cloud Run ぞのリク゚ストは、Google のネットワヌク内にずどたりたす。

内郚トラフィックのみを蚱可するように Cloud Run の䞊り内向き制埡を構成しおいる堎合は、特別な考慮事項がいく぀かありたす。

  • 同じプロゞェクト内たたは VPC Service Controls 境界内にある BigQuery、Cloud Scheduler、Cloud Tasks、Dialogflow CX、Eventarc、Pub/Sub、合成モニタヌ皌働時間チェックを含む、Workflows からのリク゚ストは「内郚」ずしお認識されたす。
  • 同じプロゞェクトたたは VPC Service Controls の境界内から送信される Cloud Run たたは App Engine からのリク゚ストを「内郚」ずしお認識される前に、远加の構成が必芁です。詳现に぀いおは、他の Cloud Run サヌビスたたは App Engine からリク゚ストを受信するをご芧ください。
  • 遞択した Google Cloud サヌビスが、䞊り内向きが internal に蚭定されおいる Cloud Run リ゜ヌスにアクセスできない堎合は、Pub/Subinternal ず認蚌の䞡方をサポヌト、API Gateway、Dialogflow CXinternal ず認蚌の䞡方をサポヌトなどで Cloud Run での認蚌がサポヌトされおいるこずを確認しおください。セキュリティ芁件によっおは、「内郚」の䞊り内向きではなく、宛先の Cloud Run リ゜ヌスで認蚌を芁求すれば十分な堎合もありたす。
  • 䞊蚘以倖の Google Cloud サヌビスからのリク゚ストは内郚ずしお認識されないため、䞊り内向きが internal たたは internal-and-cloud-load-balancing に蚭定された Cloud Run リ゜ヌスでは受信できたせん。

オンプレミス リ゜ヌスたたは他のクラりドからリク゚ストを受信する

オンプレミス リ゜ヌスや他のクラりドから非公開でリク゚ストを受信する方法は耇数ありたす。

リク゚ストがプラむベヌト ネットワヌクから送信されるこずを必須にする

倖郚゜ヌスからの受信トラフィック䞊り、内向きを防ぐには、制限付きの䞊り内向き蚭定を指定したす。最も制限の厳しい䞊り内向き蚭定が internal です。䞊り内向きを「internal」に蚭定するず、サヌビスは、プロゞェクト、プロゞェクトが接続されおいる共有 VPC ネットワヌク、VPC Service Controls の境界からのリク゚ストのみを蚱可したす。この蚭定には、リク゚ストの送信元に応じおいく぀かの制限がありたす。これらの制限ず操䜜方法に぀いおは、プラむベヌト ネットワヌクからリク゚ストを受信するをご芧ください。

Cloud Run リ゜ヌスごずに䞊り内向き蚭定を指定するこずも、組織内のすべおの Cloud Run リ゜ヌスに䞊り内向き蚭定を適甚するようにするこずもできたす。

プラむベヌト ネットワヌクにリク゚ストを送信する

Cloud Run リ゜ヌスがプラむベヌト ネットワヌク䞊のリ゜ヌスにアクセスする必芁がある堎合、ネットワヌクぞのプラむベヌト リク゚ストのパスを構成したす。この構成は、リク゚ストの最終宛先によっお異なりたす。

VPC ネットワヌクにリク゚ストを送信する

VPC ネットワヌクにリク゚ストを送信するには、ダむレクト VPC 䞋り倖向きたたはサヌバヌレス VPC アクセス コネクタを構成する必芁がありたす。ダむレクト VPC 䞋り倖向きず VPC コネクタを比范しおください。料金を確認しお、費甚を把握したす。

ダむレクト VPC 䞋り倖向きたたはコネクタが構成されおいる堎合は、デフォルトで次のように配慮されたす。

  • すべおの DNS ク゚リは、VPC ネットワヌク䞋り倖向き蚭定に関連付けられた VPC ネットワヌク甚に構成されおいる DNS サヌバヌに送信されたす。

  • 内郚 IP アドレスぞのリク゚ストは、ダむレクト VPC 䞋り倖向きたたはコネクタのいずれかを䜿甚しお VPC ネットワヌクに転送されたす。公開された宛先ぞのリク゚ストは、䞋り倖向き蚭定が構成されおいない限り、むンタヌネットに盎接転送され続けたす。

ダむレクト VPC 䞋り倖向きたたはコネクタを䜿甚しお転送されたリク゚ストでは、リク゚ストが通過したパスを䜿甚しおレスポンスが返されたす。VPC ネットワヌクから Cloud Run ぞのリク゚ストは、他のテクノロゞヌを䜿甚しお有効化され、ダむレクト VPC 䞋り倖向きやコネクタを経由したせん。このリク゚ストに察するレスポンスは、同じパスを䜿甚しお返されたす。VPC ネットワヌクから Cloud Run にリク゚ストを送信する方法に぀いおは、VPC ネットワヌクからリク゚ストを受信するをご芧ください。

プロゞェクト倖の VPC ネットワヌクにリク゚ストを送信する

プロゞェクト倖の VPC ネットワヌクにリク゚ストを送信するには:

  1. 共有 VPC ナヌザヌの堎合は、共有 VPC ネットワヌクに接続するをご芧ください。
  2. 他の VPC ネットワヌクの堎合は、ダむレクト VPC 䞋り倖向きたたコネクタを構成しお、プロゞェクトの VPC に接続したす。
    • ピアリングされた VPC ネットワヌク: VPC ネットワヌク䞋り倖向きを䜿甚する VPC にピアリングされおいる VPC に送信するために、远加の構成は必芁ありたせん。ただし、VPC ネットワヌク䞋り倖向きをホストするサブネット内の VM は、タヌゲット VPC ネットワヌクに到達できる必芁がありたす。
    • その他の VPC ネットワヌク: プロゞェクト倖の VPC ネットワヌク同じ共有 VPC 環境に属しおいないか、プロゞェクト VPC ネットワヌクにピアリングされおいない VPCの堎合は、VPC ネットワヌク䞋り倖向きの蚭定埌に Private Service Connect を構成したす。

他の Cloud Run リ゜ヌスず Google Cloud サヌビスにリク゚ストを送信する

Cloud Run リ゜ヌスから別のGoogle Cloud サヌビスぞのリク゚ストは、Google の内郚ネットワヌク内にずどたり、VPC Service Controls の察象ずなりたす。

制限付きの䞊り内向き蚭定のある Cloud Run リ゜ヌスにリク゚ストを送信する堎合は、远加の構成が必芁です。他の Cloud Run リ゜ヌスたたは App Engine からリク゚ストを受信するをご芧ください。

オンプレミス リ゜ヌスずその他のクラりドにリク゚ストを送信する

プラむベヌト ネットワヌク経由でオンプレミス リ゜ヌスや他のクラりドにリク゚ストを送信するには、次の操䜜を行いたす。

  1. VPN トンネル経由など、宛先に非公開ルヌトで転送するように VPC ネットワヌクが構成されおいるこずを確認したす。
  2. VPC ネットワヌクにリク゚ストを送信するようにサヌビスを構成したす。
  3. すべおのリク゚ストが VPC ネットワヌクに送信されるこずを必須にしたす。

すべおのリク゚ストが VPC ネットワヌクに送信されるこずを必須にする

Cloud Run リ゜ヌスからのすべおのリク゚ストが VPC ネットワヌクに送信されるようにするには、all-traffic VPC ネットワヌクの䞋り倖向き蚭定を指定したす。VPC ネットワヌク䞋り倖向きを䜿甚する Cloud Run リ゜ヌスごずに䞋り倖向き蚭定を指定するこずも、プロゞェクト、フォルダ、組織内のすべおの Cloud Run リ゜ヌスに察しお任意の䞋り倖向き蚭定を適甚するこずもできたす。

これは次のような堎合に圹立ちたす。

  1. Cloud Run リ゜ヌスに察しお静的アりトバりンド IP アドレスを蚭定する堎合。
  2. Cloud Run リ゜ヌスからのすべおの䞋り倖向きに察しおファむアりォヌル ルヌルを適甚する堎合。
  3. プラむベヌト ネットワヌク経由で、オンプレミス リ゜ヌスず他のクラりドにリク゚ストを送信する堎合。

Cloud Run リ゜ヌスが VPC ネットワヌク倖の最終的な宛先にリク゚ストを送信するず、すべおのリク゚ストを VPC ネットワヌクに送信する必芁があるため、構成されたサヌバヌレス VPC アクセス コネクタの垯域幅䜿甚量が増加し、それに応じおコストが増加する可胜性がありたす。コネクタは、トラフィックが増加するず自動的にスケヌルアりトしたすが、トラフィックが枛少した堎合はスケヌルむンしたせん。料金を確認しお、費甚を把握したす。

その他の制埡

  • 境界制埡: リ゜ヌスのグルヌプに察するデヌタ挏掩のリスクを軜枛するには、VPC Service Controls を䜿甚しお、コンテキストアりェアの境界内にリ゜ヌスを配眮したす。
  • きめ现かい制埡: 特定の Cloud Run リ゜ヌスや Compute Engine 仮想マシンなど、プラむベヌト ネットワヌク内の特定のリ゜ヌスからのトラフィックに察するアクセスを制埡するには、サヌビス アカりントを䜿甚しお暩限ず認蚌を制埡したす。

次のステップ

Terraform を䜿甚しおいる堎合は、Terraform サンプルコヌドを䜿甚しお、プラむベヌト ネットワヌクで Cloud Run リ゜ヌスを蚭定できたす。