プライベート サービス アクセスを構成する

プライベート サービス アクセスは、Google Cloud Virtual Private Cloud(VPC)ネットワークと Google マネージドまたはサードパーティ サービス間の安全なプライベート接続です。VPC ネットワーク内の VM インスタンスは、内部 IP アドレスを使用してこれらのサービスと通信できます。トラフィックを公共のインターネットに公開する必要はありません。

始める前に

プライベート接続を確立するには、前提条件となる次の手順を行います。

  • サービス プロデューサーのネットワークへの接続に使用する既存の VPC ネットワークが必要です。VM インスタンスは、この VPC ネットワークを使用してプライベート接続経由でサービスに接続する必要があります。
  • Live Stream API の手順を行う 始める前に、適切に設定されたGoogle Cloudプロジェクトを作成する(または既存のプロジェクトを選択する)ためのページを開きます。

Live Stream API のプライベート サービス アクセスを有効にする

プライベート サービス アクセスを構成する一般的な手順については、Virtual Private Cloud のドキュメントをご覧ください。この ページで処理を Live Stream API に適応させます。

  1. Google Cloud CLI をインストールして構成します

  2. Service Networking API を有効にします。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud services enable servicenetworking.googleapis.com
    

    Windows(PowerShell)

    gcloud services enable servicenetworking.googleapis.com
    

    Windows(cmd.exe)

    gcloud services enable servicenetworking.googleapis.com
    

  3. プライベート接続を設定するために必要な権限を取得するには、VPC ネットワークが存在する Google Cloud プロジェクトに対する Compute Engine ネットワーク管理者roles/compute.networkAdmin)の IAM ロールの付与を管理者に依頼してください。ロールの付与の詳細については、アクセス権の管理をご覧ください。

    必要な権限は、 カスタムロールまたはその他の 事前定義ロールでも使用できます。

  4. VPC ネットワークで、次の例に示すように、addresses create コマンドを使用して名前付き IP 範囲を割り当てます。

    アドレス範囲とプレフィックス長(サブネット マスク)を指定するには、addresses フラグと prefix-length フラグを使用します。たとえば、CIDR ブロック 192.168.0.0/13 を割り当てるには、アドレスに 192.168.0.0 を、プレフィックス長に 13 を指定します。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • RESERVED_RANGE_NAME: 割り当て範囲の名前(my-allocated-range など)。
    • DESCRIPTION: 範囲の説明(allocated for my-service など)。
    • VPC_NETWORK: VPC ネットワークの名前(my-vpc-network など)。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud compute addresses create RESERVED_RANGE_NAME \
        --global \
        --purpose=VPC_PEERING \
        --addresses=192.168.0.0 \
        --prefix-length=13 \
        --description="DESCRIPTION" \
        --network=VPC_NETWORK
    

    Windows(PowerShell)

    gcloud compute addresses create RESERVED_RANGE_NAME `
        --global `
        --purpose=VPC_PEERING `
        --addresses=192.168.0.0 `
        --prefix-length=13 `
        --description="DESCRIPTION" `
        --network=VPC_NETWORK
    

    Windows(cmd.exe)

    gcloud compute addresses create RESERVED_RANGE_NAME ^
        --global ^
        --purpose=VPC_PEERING ^
        --addresses=192.168.0.0 ^
        --prefix-length=13 ^
        --description="DESCRIPTION" ^
        --network=VPC_NETWORK
    

    次のようなレスポンスが返されます。

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/addresses/RESERVED_RANGE_NAME].

    プレフィックス長のみを指定するには、prefix-length フラグを使用します。アドレス範囲を省略すると、Google Cloud は VPC ネットワークで使用されていないアドレス範囲を自動的に選択します。次の例では、13 ビットのプレフィックス長を使用して、未使用の IP アドレス範囲を選択しています。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • RESERVED_RANGE_NAME: 割り当て範囲の名前(my-allocated-range など)。
    • DESCRIPTION: 範囲の説明(allocated for my-service など)。
    • VPC_NETWORK: VPC ネットワークの名前(my-vpc-network など)。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud compute addresses create RESERVED_RANGE_NAME \
        --global \
        --purpose=VPC_PEERING \
        --prefix-length=13 \
        --description="DESCRIPTION" \
        --network=VPC_NETWORK
    

    Windows(PowerShell)

    gcloud compute addresses create RESERVED_RANGE_NAME `
        --global `
        --purpose=VPC_PEERING `
        --prefix-length=13 `
        --description="DESCRIPTION" `
        --network=VPC_NETWORK
    

    Windows(cmd.exe)

    gcloud compute addresses create RESERVED_RANGE_NAME ^
        --global ^
        --purpose=VPC_PEERING ^
        --prefix-length=13 ^
        --description="DESCRIPTION" ^
        --network=VPC_NETWORK
    

    次のようなレスポンスが返されます。

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/addresses/RESERVED_RANGE_NAME].

    上記の例では、Google へのプライベート接続が作成され、VM が 指定された VPC ネットワーク内のインスタンス(例: my-vpc-network)は、 それをサポートする Google サービスにアクセスするために、プライベート サービス アクセスを使用します。

    Live Stream API では、インスタンスごとに CIDR/13 ブロックを割り当てる必要があります。 複数のリージョンで Live Stream API を使用する予定がある場合は、より大きなブロックを割り当てます。次の表に、 リージョンの数に応じて割り当てる推奨ブロックサイズは次のとおりです。

    リージョンの数prefix-length フラグの値
    113
    212
    3 〜 411
    5 ~ 810
    7 ~ 169
  5. サービス プロデューサー VPC ネットワークと お使いの VPC ネットワークの間にプライベート接続を作成します。

    1. プライベート接続を作成します。

      後述のコマンドデータを使用する前に、次のように置き換えます。

      • RESERVED_RANGE_NAME: 前の手順で作成した割り当て範囲の名前
      • VPC_NETWORK: VPC ネットワークの名前
      • PROJECT_ID: VPC ネットワークが含まれるプロジェクトの Google Cloud プロジェクト ID

      次のコマンドを実行します。

      Linux、macOS、Cloud Shell

      gcloud services vpc-peerings connect \
          --service=servicenetworking.googleapis.com \
          --ranges=RESERVED_RANGE_NAME \
          --network=VPC_NETWORK \
          --project=PROJECT_ID
      

      Windows(PowerShell)

      gcloud services vpc-peerings connect `
          --service=servicenetworking.googleapis.com `
          --ranges=RESERVED_RANGE_NAME `
          --network=VPC_NETWORK `
          --project=PROJECT_ID
      

      Windows(cmd.exe)

      gcloud services vpc-peerings connect ^
          --service=servicenetworking.googleapis.com ^
          --ranges=RESERVED_RANGE_NAME ^
          --network=VPC_NETWORK ^
          --project=PROJECT_ID
      

      次のようなレスポンスが返されます。

      Operation "operations/OPERATION_ID" finished successfully.

      このコマンドにより、長時間実行オペレーション(LRO)が作成されます。

    2. コマンドが成功した場合は、次のステップに進みます。それ以外の場合は、 オペレーションのステータスです。

      後述のコマンドデータを使用する前に、次のように置き換えます。

      • OPERATION_ID: 前のステップで返されたオペレーションの ID

      次のコマンドを実行します。

      Linux、macOS、Cloud Shell

      gcloud services vpc-peerings operations describe \
        --name=operations/OPERATION_ID
      

      Windows(PowerShell)

      gcloud services vpc-peerings operations describe `
        --name=operations/OPERATION_ID
      

      Windows(cmd.exe)

      gcloud services vpc-peerings operations describe ^
        --name=operations/OPERATION_ID
      

      次のようなレスポンスが返されます。

      Operation "operations/OPERATION_ID" finished successfully.

  6. (省略可)VPC Service Controls を使用している場合は、作成したプライベート接続の VPC-SC を有効にする必要があります。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • VPC_NETWORK: VPC ネットワークの名前

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud services vpc-peerings enable-vpc-service-controls \
        --service=servicenetworking.googleapis.com \
        --network=VPC_NETWORK
    

    Windows(PowerShell)

    gcloud services vpc-peerings enable-vpc-service-controls `
        --service=servicenetworking.googleapis.com `
        --network=VPC_NETWORK
    

    Windows(cmd.exe)

    gcloud services vpc-peerings enable-vpc-service-controls ^
        --service=servicenetworking.googleapis.com ^
        --network=VPC_NETWORK
    

    次のようなレスポンスが返されます。

    Operation "operations/OPERATION_ID" finished successfully.

  7. (省略可)オンプレミス ネットワークが VPC に接続している場合、オンプレミス ホストがサービス プロデューサーのネットワークと通信できるように、ピアリング接続を構成できます。詳細については、以下をご覧ください。 オンプレミス ホストのトラブルシューティング