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

組織で共有 VPC を使用している場合、サーバーレス VPC アクセスを使用して、Cloud Run functions を共有 VPC ネットワークに直接接続できます。これにより、Cloud Run functions が、共有 VPC ネットワークのリソース(Compute Engine VM インスタンス、Memorystore インスタンスなど)や、内部 IP アドレスを持つその他のリソースにアクセスできるようになります。

組織で共有 VPC を使用していない場合は、VPC ネットワークへの接続をご覧ください。

構成方法の比較

共有 VPC の場合、サーバーレス VPC アクセス コネクタは 2 つの方法で構成できます。ネットワークへのアクセスを必要とする Cloud Run functions のリソースを含むサービス プロジェクトごとにコネクタを設定するか、ホスト プロジェクトに共有コネクタを設定します。どちらの方法にも利点があります。

サービス プロジェクト

サービス プロジェクトでコネクタを作成するメリットは、次のとおりです。

  • 分離: 各コネクタには専用の帯域幅があり、他のサービス プロジェクトでのコネクタの帯域幅の使用による影響を受けません。これは、トラフィックが急増するサービスの場合や、各サービス プロジェクトが他のサービス プロジェクトの使用による影響を受けないようにする必要がある場合に適しています。
  • チャージバック: コネクタで発生した料金は、そのコネクタを含むサービス プロジェクトに関連付けられます。これにより、チャージバックが容易になります。
  • セキュリティ: 「最小権限の原則」に従うことができます。コネクタには、アクセスする必要がある共有 VPC ネットワーク内のリソースへのアクセス権を付与する必要があります。サービス プロジェクトでコネクタを作成すると、ファイアウォール ルールを使用して、プロジェクト内のサービスがアクセスできるものを制限できます。
  • チームの独立性: ホスト プロジェクト管理者への依存が軽減されます。サービス プロジェクトに関連付けられたコネクタをチームで作成して管理できます。Compute Engine セキュリティ管理者ロールや、有効にされたホスト プロジェクトの compute.firewalls.create 権限を含むカスタム Identity and Access Management(IAM)ロールが付与されたユーザーは、引き続きコネクタのファイアウォール ルールを管理する必要があります。

サービス プロジェクトにコネクタを設定する場合は、サービス プロジェクトでコネクタを構成するをご覧ください。

ホスト プロジェクト

ホスト プロジェクトにコネクタを作成するメリットは、次のとおりです。

  • 一元化されたネットワーク管理: ホスト プロジェクトでネットワーク構成リソースを一元化する共有 VPC モデルと連携します。
  • IP アドレス空間: より多くの IP アドレス空間を保持します。コネクタは各インスタンスに IP アドレスを必要とするため、コネクタの数が少なくなり(各コネクタのインスタンスも少なくなり)、使用される IP アドレスも少なくなります。これは、IP アドレスの不足が懸念される場合に役立ちます。
  • メンテナンス: 作成した各コネクタを複数のサービス プロジェクトで使用できる可能性があるため、メンテナンスの時間を短縮できます。これは、メンテナンスのオーバーヘッドが懸念される場合に役立ちます。
  • アイドル時間の費用: コネクタのアイドル時間と関連費用を削減できます。コネクタは、トラフィックを処理していない場合でも料金が発生します(料金を参照)。コネクタの数を少なくすると、コネクタのタイプとインスタンスの数によっては、トラフィックを処理していない場合に支払い対象となるリソースの量を削減できる可能性があります。この方法は、ユースケースに多数のサービスが関わっており、サービスが頻繁には使用されていない場合、費用対効果が高いことがよくあります。

ホスト プロジェクトにコネクタを設定する場合は、ホスト プロジェクトでのコネクタの構成をご覧ください。