共有 VPC サービス プロジェクトでコネクタを構成する
組織で共有 VPC を使用している場合は、サーバーレス VPC アクセス コネクタをサービス プロジェクトまたはホスト プロジェクトのいずれかで設定できます。このガイドでは、サービス プロジェクトでコネクタを設定する方法について説明します。
ホスト プロジェクトでコネクタを設定する必要がある場合は、ホスト プロジェクトでコネクタを構成するをご覧ください。各方法の利点については、共有 VPC ネットワークへの接続をご覧ください。
大まかには、次の手順を行う必要があります。
- 権限を付与する
- サブネットを作成する
- サーバーレス VPC アクセスの構成ページの次のセクションの手順を完了します。
サービス プロジェクトのサービス アカウントに権限を付与する
共有 VPC 管理者は、VPC コネクタを使用する各サービス プロジェクトについて、ホスト プロジェクトでの Compute ネットワーク ユーザー ロール(compute.networkUser
)をサービス プロジェクト cloudservices
と vpcaccess
サービス アカウントに付与する必要があります。
ロールを付与するには:
次のコマンドを使用します。
gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --role "roles/compute.networkUser" \ --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-vpcaccess.iam.gserviceaccount.com"
gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --role "roles/compute.networkUser" \ --member "serviceAccount:SERVICE_PROJECT_NUMBER@cloudservices.gserviceaccount.com"
@gcp-sa-vpcaccess
サービス アカウントが存在しない場合は、サービス プロジェクトでサーバーレス VPC アクセス API を有効にしてから、もう一度お試しください。gcloud services enable vpcaccess.googleapis.com
これらのサービス アカウントに共有 VPC ネットワーク全体へのアクセスを許可せず、特定のサブネットにのみアクセス権を付与する場合は、代わりにこれらのロールを特定のサブネット上のサービス アカウントのみに付与することもできます。
サブネットを作成する
共有 VPC を使用する場合、共有 VPC 管理者はコネクタごとにサブネットを作成する必要があります。サブネットの追加の説明に沿って、共有 VPC ネットワークに /28
サブネットを追加します。このサブネットは、コネクタを使用するサーバーレス サービスと同じリージョンに存在する必要があります。
次のステップ
- サーバーレス VPC アクセスの構成ページの次のセクションの手順を完了します。