VPC ネットワークへの接続

このページでは、サーバーレス VPC アクセスを使用して、Cloud Functions を VPC ネットワークに直接接続し、Compute Engine VM インスタンス、Memorystore インスタンス、内部 IP アドレスを持つその他のリソースへのアクセスを可能にする方法について説明します。

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

サーバーレス VPC アクセス コネクタは、ICMP プロトコルをサポートしていません。

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

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

コネクタを使用する関数を構成する

Google Cloud Console または gcloud コマンドライン ツールからコネクタを使用するように関数を構成できます。

Console

  1. Cloud Console で Cloud Functions の概要ページに移動します。

    Cloud Functions に移動

  2. [関数を作成] をクリックします。または、既存の関数をクリックしてその詳細ページに移動し、[編集] をクリックします。

  3. [ランタイム、ビルド、接続の設定] をクリックして詳細設定を表示します。

  4. [接続] タブの [下り(外向き)設定] で、[VPC コネクタ] フィールドにコネクタの名前を入力するか、フィールドを空白にしてサービスを VPC ネットワークから切断します。

gcloud

gcloud functions deploy コマンドを使用して関数をデプロイし、--vpc-connector フラグを指定します。

gcloud functions deploy FUNCTION_NAME \
--vpc-connector CONNECTOR_NAME \
FLAGS...

ここで

  • FUNCTION_NAME は、関数の名前です。
  • CONNECTOR_NAME は、コネクタの名前です。
  • FLAGS... は、関数のデプロイ時に渡す他のフラグです。

--clear-vpc-connector フラグを使用して、VPC ネットワークから関数の接続を解除します。

gcloud functions deploy FUNCTION_NAME \
--clear-vpc-connector \
FLAGS...

コネクタ経由で転送されるリクエストを制御する方法については、下り(外向き)設定をご覧ください。

共有 VPC ネットワークに接続する

組織で共有 VPC を使用している場合、共有 VPC のサービス プロジェクト内の Cloud Functions の関数は共有 VPC に接続できます。

  1. ホスト プロジェクトの管理者は、共有 VPC を使用する場合のホスト プロジェクトの構成で説明されている手順に沿って設定を完了します。

  2. コネクタの作成の手順に沿って、共有 VPC コネクタを作成します。

  3. コネクタ名を指定して、サービス プロジェクトに関数をデプロイします。

    gcloud functions deploy FUNCTION_NAME \
    --vpc-connector CONNECTOR_NAME \
    FLAGS...
    

    これにより、関数が共有 VPC ネットワークに接続されます。

次のステップ