VPC ネットワークへの接続

このページでは、サーバーレス VPC アクセスを使用して App Engine スタンダード環境アプリを VPC ネットワークに直接接続し、Compute Engine VM インスタンス、Memorystore インスタンスなどの内部 IP アドレスを持つリソースにアクセスできるようにする方法について説明します。

サーバーレス VPC アクセスを使用するには、まず、VPC ネットワークとの通信を処理するサーバーレス VPC アクセス コネクタを作成する必要があります。コネクタを作成したら、そのコネクタを使用するように App Engine サービスを構成します。

サーバーレス VPC アクセス コネクタの作成

サーバーレス VPC アクセス コネクタを作成する方法について詳しくは、コネクタの作成をご覧ください。

コネクタを使用するためのアプリの構成

サーバーレス VPC アクセス コネクタを作成したら、そのコネクタを使用するように App Engine アプリ内のそのサービスを構成できます。

アプリ内のサービスのコネクタを指定するには:

  1. <vpc-access-connector> 要素をサービスの appengine-web.xml ファイルに追加します。

    <vpc-access-connector>
      <name>projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME</name>
    </vpc-access-connector>
    

    ここで、PROJECT_ID は Cloud プロジェクト ID、REGION はコネクタが存在するリージョン、CONNECTOR_NAME はコネクタの名前です。

  2. サービスをデプロイします。

    gcloud app deploy WEB-INF/appengine-web.xml
    

サービスをデプロイすると、内部 IP アドレスへのリクエストを送信して VPC ネットワーク内のリソースにアクセスできるようになります。VPC ネットワークからサービスの接続を切断するには、appengine-web.xml ファイルから <vpc-access-connector> 要素を削除し、サービスを再デプロイします。

共有 VPC ネットワークへの接続

組織で共有 VPC を使用している場合、共有 VPC サービス プロジェクト内のアプリは、共有 VPC ホスト プロジェクトでいくつかの構成を行った後、共有 VPC ネットワークに接続できます。

  1. ホスト プロジェクトの管理者が、共有 VPC ネットワークの使用の説明に従って設定を完了していることを確認します。この設定で、ホスト プロジェクトでサーバーレス VPC アクセス コネクタを作成し、共有 VPC ネットワークに接続していることも確認します。
  2. サービス プロジェクトでサーバーレス VPC アクセス API を有効にします。

    API を有効にする

  3. ホスト プロジェクトの設定が完了したら、コネクタの完全修飾名を使用して、appengine-web.xml ファイルでホスト プロジェクトのコネクタを指定できます。

    <vpc-access-connector>
      <name>projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME</name>
    </vpc-access-connector>
    
    ここで、HOST_PROJECT_ID はホスト プロジェクトの ID、CONNECTOR_REGION はコネクタが存在するリージョン、CONNECTOR_NAME はコネクタの名前です。

    これにより、App Engine サービスが共有 VPC ネットワークに接続されます。

次のステップ