ライブ ストリームを処理するには、取り込み、コード変換、多重化などのタスクを行う複数のコンポーネントを管理する必要があります。Live Stream API はプールを使用してこれらのコンポーネントとリソースを内部で管理します。プールは、リージョンごとに各 Google Cloud プロジェクトに割り当てられる処理ユニットで、特定のリージョン内のすべてのチャネル間で共有されます。
デフォルトでは
Input
パブリック IP アドレスを含むエンドポイント URI が提供されます。この URI では、入力ストリームを送信できますオンプレミス ネットワークからストリーミングするか、
Google Cloud の Virtual Private Cloud(VPC)ネットワークから送信する場合、
パブリック インターネットを通過してライブ ストリーム サービスのエンドポイントに到達します。
別の方法として、ライブ ストリーム サービスへのプライベート サービス アクセスを設定することもできます。プライベート サービス アクセスは、Google Cloud Virtual Private Cloud(VPC)ネットワークと Google マネージドまたはサードパーティ サービス間の安全なプライベート接続です。この接続により、VPC ネットワーク内の VM インスタンスは、内部 IP アドレスを使用してこれらのサービスと通信できます。トラフィックを公共のインターネットに公開する必要はありません。Live Stream API でプライベート サービス アクセスを有効にすると、VPC ネットワークから内部 IP アドレスが予約され、入力エンドポイントとして使用されます。これには次のような利点があります。
- セキュリティの向上: プライベート サービス アクセスを使用すると、トラフィックを公共のインターネットに公開することなく、Live Stream API 入力エンドポイントに接続できます。これにより、セキュリティ対策を強化し、データ侵害のリスクを軽減できます。
- パフォーマンスの向上: プライベート サービス アクセスを使用すると、 パブリック インターネットを回避して接続のパフォーマンスを最適化します。これは、レイテンシの短縮とスループットの向上に特に役立ちます。
プライベート サービス アクセスを Cloud Interconnect または Cloud VPN と組み合わせて、オンプレミス ネットワークとライブ ストリーミング サービスの間にエンドツーエンドのプライベート接続を提供する方法もあります。
始める前に
プライベート プールを構成するには、次の前提条件を満たす必要があります。
- サービス プロデューサーのネットワークへの接続に使用する既存の VPC ネットワークが必要です。VM インスタンスは、この VPC ネットワークを使用してプライベート接続経由でサービスに接続する必要があります。
- VPC ネットワークでプライベート サービス アクセスを構成する必要があります。
- リージョン内のすべてのチャネルを停止する必要があります。停止しないと、Live Stream API はプールのピアリング ネットワークを更新するリクエストを拒否します。
- プールの実行中には、リージョン内のすべてのチャンネルを開始できません を更新しました。
プライベート プールを構成する
デフォルトのプールがすでに作成されていることを確認します。ロケーションのデフォルト プール 新しい Deployment を作成する際に
Input
あります。リクエストのデータを使用する前に、次のように置き換えます。
PROJECT_NUMBER
: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号LOCATION
: すでに入力を作成済みの、サポートされているリージョンのいずれかを使用します。ロケーションを表示us-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-northeast1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/pools/default", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME }
ピアリングされたネットワーク名でプールを更新します。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT_NUMBER
: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号LOCATION
: デフォルト プールのロケーション。サポートされているリージョンのいずれかを使用します。ロケーションを表示us-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-northeast1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
NETWORK
: サービスとピアリングする現在のプロジェクトのネットワークのユーザー定義の識別子。
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/pools/default", "verb": "update", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
リクエストにより長時間実行オペレーションが開始されます。返された OPERATION_ID をコピーして、次の手順で使用します。
projects.locations.operations.get
メソッドを使用して、更新が完了したかどうかを確認します。プールの更新が完了するまでに最大 30 分かかる場合があります。レスポンスに"done: false"
が含まれている場合は、レスポンスに"done: true"
が含まれるまでリクエストを繰り返します。リクエストのデータを使用する前に、次のように置き換えます。
PROJECT_NUMBER
: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号LOCATION
: リソースがあるロケーション。サポートされているリージョンのいずれかを使用します。ロケーションを表示us-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-northeast1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
OPERATION_ID
: オペレーションの ID。
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "endTime": END_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/pools/default", "verb": "update", "requestedCancellation": false, "apiVersion": "v1" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.Pool", "name": "projects/PROJECT_NUMBER/locations/LOCATION/pools/default", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "networkConfig": { "peeredNetwork": "projects/PROJECT_NUMBER/global/networks/NETWORK" } }
更新後、リージョン内の既存(および将来の)入力エンドポイントのすべての URI は、指定された VPC ネットワークから予約された内部 IP アドレスになります。入力エンドポイントを一覧表示して、更新された URI を確認します。
一般公開プールに切り替える
パブリック プールに戻すには、ピアリング先のネットワークとして空の文字列を指定し、名前を指定します。
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT_NUMBER
: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号LOCATION
: デフォルト プールのロケーション。サポートされているリージョンのいずれかを使用します。ロケーションを表示us-central1
us-east1
us-east4
us-west1
us-west2
northamerica-northeast1
southamerica-east1
asia-east1
asia-east2
asia-northeast1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata", "createTime": CREATE_TIME, "target": "projects/PROJECT_NUMBER/locations/LOCATION/pools/default", "verb": "update", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
ここでも、
projects.locations.operations.get
メソッドを使用して、更新が完了したかどうかを確認します。