ネットワーク ピアリングを備えた Google Cloud App Engine

ネットワーク ピアリングを備えた Google Cloud App Engine

ピアリング接続を介して App Engine アプリケーションを MongoDB Cloud に接続しようとしています。

私の GCP のすべてのサービスは、「main」と呼ばれるデフォルト以外のネットワークを使用しています。Terraform を使用してピアリング接続を設定しました。

resource "google_compute_network_peering" "mongodb_peering" {
  name         = "mongodb-peering"
  network      = google_compute_network.main.self_link
  peer_network = "projects/${mongo-cloud-project}/global/networks/${mongo-cloud-network}"
}

期待通りに動作します。

おそらく、App Engine はデフォルトの VPC ネットワークを使用します。

デフォルト ネットワークで 2 番目の接続を作成しようとすると、範囲が重複しているためにエラーが発生します。そのため、メイン ネットワークとのピアリングを削除し、デフォルト ネットワークで新しいピアリングを設定しました。

それでも、App Engine アプリケーションはピアリング接続を介して mongodb に接続できません。

アプリ.yaml:

runtime: nodejs12

instance_class: F4

handlers:
  - url: /.*
    secure: always
    redirect_http_response_code: 301
    script: auto

automatic_scaling:
  max_instances: 2
  max_concurrent_requests: 80

inbound_services:
  - warmup

答え1

同じ重複する IP 範囲を使用する 2 つ以上の VPC ピアリングを持つことはできません。ルートは同じ優先度で作成されるため、混乱が生じます。

@jabbsonが指摘したように、アプリはデフォルトではネットワークを使用していません。そのため、サーバーレス VPC アクセス コネクタを作成するVPC を接続します。

関連情報