Datastream は、Private Service Connect インターフェースを使用して、トラフィックをGoogle Cloud内に完全に保持する方法でデータを複製できるようにします。
Private Service Connect インターフェースは、プロデューサーの Virtual Private Cloud(VPC)ネットワークが、コンシューマー VPC ネットワーク内のネットワーク アタッチメントへの接続を開始し、そのネットワーク アタッチメントからの接続を受信できるようにするリソースです。プロデューサー ネットワークとコンシューマー ネットワークは、異なるプロジェクトや組織に属していてもかまいません。
図 1. Private Service Connect インターフェースを使用すると、サービス プロデューサーはサービス ユーザーへの接続を開始できます。
主な用語の定義については、次のセクションをご覧ください。
Private Service Connect の詳細については、Virtual Private Cloud のドキュメントをご覧ください。
主な用語
このセクションでは、Private Service Connect に適用される主な用語とコンセプトの概要について説明します。
プロデューサー: 通常は VPC ネットワーク内のサービスまたは VM で、コンシューマー ネットワークへの接続を開始するエンティティ。プロデューサーはサービスを提供します。Datastream のコンテキストでは、データを取得して宛先に複製します。
コンシューマー: 通常は VPC ネットワーク内の VM で、プロデューサーから接続を受信するエンティティ。コンシューマーが接続を受け入れると、Google Cloud はネットワーク アタッチメントで指定されたコンシューマー VPC ネットワーク内のサブネットの IP アドレスを Private Service Connect インターフェースに割り振ります。Private Service Connect インターフェースの VM には、プロデューサーの VPC ネットワークに接続する 2 つ目のネットワーク インターフェースがあります。
ネットワーク アタッチメント: プロデューサー VPC ネットワークが Private Service Connect インターフェースを介してコンシューマー VPC ネットワークへの接続を開始できるようにするリージョン リソース。コンシューマー VPC ネットワークでは、ネットワーク アタッチメントは、プロデューサー ネットワークの Private Service Connect インターフェースからの接続の指定されたエントリ ポイントとして機能します。Private Service Connect インターフェースがネットワーク アタッチメントに確立されると、プロデューサー VM にはネットワーク アタッチメントのサブネットから IP が割り当てられます。Private Service Connect インターフェースの仮想マシン インスタンスには、プロデューサー サブネットに接続する通常のネットワーク インターフェースが 1 つ以上あります。詳細については、ネットワーク アタッチメントについてをご覧ください。
プロデューサー プロジェクト: Datastream を実行する仮想マシン(VM)がホストされている Google 所有のプロジェクト。Datastream VM は、お客様の VPC 内のリソースにアクセスするために、Private Service Connect ネットワーク インターフェースがサブネットから割り当てる IP アドレスを使用します。
Private Service Connect の前提条件
Private Service Connect インターフェースを使用してプライベート接続の構成を作成する前に、次の手順を実施して Datastream がプロジェクトへの接続を確立できるようにする必要があります。
Datastream のプライベート ネットワークに接続できる VPC ネットワークがある。VPC ネットワークの作成の詳細については、VPC ネットワークの作成と管理をご覧ください。
VPC プロジェクトにネットワーク アタッチメントを作成する。
Google Cloud とオンプレミス ファイアウォールで、ネットワーク アタッチメントの IP アドレス範囲から、データのストリーミング元となるソース データベースへのトラフィックが許可されていることを確認します。ファイアウォール ルールの作成方法については、VPC ファイアウォール ルールを使用するをご覧ください。
料金
Private Service Connect を介したデータの上り(内向き)と下り(外向き)には料金が発生します。詳細については、Private Service Connect の料金をご覧ください。
必要なロールと権限
ネットワーク アタッチメントの作成に必要な権限を取得するには、プロジェクトに対する次の Identity and Access Management(IAM)ロールを付与するよう管理者に依頼してください。
- ネットワーク アタッチメントの作成、表示、削除: Compute ネットワーク管理者(
roles/compute.networkAdmin)
ネットワーク アタッチメントが Datastream とは異なるプロジェクトにある場合は、service-DATASTREAM-PROJECT-NUMBER@gcp-sa-datastream.iam.gserviceaccount.com サービス アカウントに次のロールを付与する必要があります。
ネットワーキング リソースに対する読み取り専用権限: Compute ネットワーク閲覧者(
roles/compute.networkViewer)ネットワーク アタッチメントがあるプロジェクトにロールを付与し、DATASTREAM-PROJECT-NUMBER を Datastream がデプロイされているプロジェクトの番号に置き換えます。
ロールの付与の詳細については、アクセスの管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
Datastream のアクセス制御オプションの詳細については、IAM によるアクセス制御をご覧ください。
Private Service Connect を構成する
Datastream が Private Service Connect インターフェースを使用してネットワークへのアウトバウンド接続を確立できるようにするには:
- プロジェクトにネットワーク アタッチメントを作成します。
- プライベート接続構成を作成します。
ネットワーク アタッチメントを作成する
Datastream で Private Service Connect を構成するには、まずネットワーク アタッチメントを作成する必要があります。
Console
Google Cloud コンソールで、[ネットワーク アタッチメント] ページに移動します。
[ネットワーク アタッチメントの作成] をクリックします。
[名前] フィールドに、ネットワーク アタッチメントの名前を入力します。
[ネットワーク] リストで VPC または共有 VPC ネットワークを選択します。
[リージョン] リストから、 Google Cloud リージョンを選択します。このリージョンは、Datastream プライベート ネットワークにピアリングされた VPC ネットワークのサブネットに使用されるリージョンと同じである必要があります。詳細については、Private Service Connect の前提条件をご覧ください。
[サブネットワーク] リストでサブネットワークの範囲を選択します。
[接続の設定] で、[選択したプロジェクトの接続を受け入れる] を選択します。
Datastream プライベート接続リソースを作成すると、プロデューサー プロジェクトが [承認済みプロジェクト] リストに自動的に追加されます。
[承認済みプロジェクト] や [不承認となったプロジェクト] は追加しないでください。
[ネットワーク アタッチメントの作成] をクリックします。
gcloud
1 つ以上のサブネットワークを作成します。例:
gcloud compute networks subnets create subnet-1 --network=network-0 --range=10.10.1.0/24 --region=REGIONネットワーク アタッチメントは、後続のステップでこれらのサブネットワークを使用します。
Datastream プロジェクトと同じリージョンにネットワーク アタッチメント リソースを作成し、
connection-preferenceプロパティをACCEPT_MANUALに設定します。gcloud compute network-attachments create NAME --region=REGION --connection-preference=ACCEPT_MANUAL --subnets=SUBNET次のように置き換えます。
NAME: ネットワーク アタッチメントの名前。REGION: Google Cloud リージョンの名前。このリージョンは、Datastream プライベート ネットワークと同じにする必要があります。SUBNET: サブネットの名前。
このコマンドの出力は、次の形式のネットワーク アタッチメント URL です。
projects/PROJECT/locations/REGION/network-attachments/NETWORK_ATTACHMENT_ID。この URL は Datastream が接続に使用するため、メモしておきます。 Google Cloudを使用して Private Service Connect インターフェースのプライベート接続構成を作成する方法については、プライベート接続構成を管理するをご覧ください。
プライベート接続構成の作成
Google Cloud プロジェクトでネットワーク アタッチメントを作成したら、Private Service Connect インターフェースを使用してプライベート接続の構成を設定する必要があります。構成を作成するときに、Private Service Connect インターフェースをホストするプロジェクトを許可リストに登録します。次に、Private Service Connect リソースの一部として、ネットワーク アタッチメント URL を Datastream に提供します。
詳細については、プライベート接続構成を作成するをご覧ください。
次のステップ
- プライベート接続構成を表示する方法を確認する。
- プライベート接続構成を削除する方法を確認する。