プライベート接続構成の作成

概要

このセクションでは、プライベート接続構成を作成する方法について説明します。このタイプの構成には、Datastream がプライベート ネットワーク(Google Cloud 内または VPN もしくは相互接続で接続される外部ソース)を介してデータソースと通信するために使用する情報が含まれています。この通信は、Virtual Private Cloud(VPC)とのピアリング接続を介して行われます。

VPC ピアリング接続は、2 つの VPC 間のネットワーク接続で、内部のプライベート IPv4 アドレスを使用してそれらの VPC 間でトラフィックをルーティングできます。Datastream はプライベート接続でドメイン ネーム システム(DNS)の解決をサポートしていないため、プライベート接続構成を設定するときにプライベート IP アドレスを指定する必要があります。

準備

プライベート接続構成を作成する前に、次の手順を実施して、プロジェクトへの VPC ピアリング接続を Datastream が作成できるようにする必要があります。

  • Datastream のプライベート ネットワークにピアリングでき、制限事項で説明されている要件を満たす VPC ネットワークがあること。このネットワークの作成について詳しくは、VPC ネットワーク ピアリングの使用をご覧ください。
  • VPC ネットワーク上の使用可能な IP 範囲(/29 の CIDR ブロック)を特定します。サブネットとしてすでに存在する IP 範囲、Private Service Connection が事前に割り当てられた IP 範囲、または事前に割り当てられたルート IP 範囲は指定できません。Datastream は、この IP 範囲を使用してサブネットを作成し、ソース データベースと通信できるようにします。次の表に、有効な IP 範囲を示します。
範囲 説明
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
プライベート IP アドレス RFC 1918
100.64.0.0/10 共有アドレス空間 RFC 6598
192.0.0.0/24 IETF プロトコルの割り当て RFC 6890
192.0.2.0/24(TEST-NET-1)
198.51.100.0/24(TEST-NET-2)
203.0.113.0/24(TEST-NET-3)
ドキュメント RFC 5737
192.88.99.0/24 IPv6 から IPv4 へのリレー(サポート終了)RFC 7526
198.18.0.0/15 ベンチマーク テスト RFC 2544
  • Google Cloud とオンプレミス ファイアウォールで、選択した IP 範囲からのトラフィックが許可されていることを確認します。許可されていない場合は、ソース データベース ポートでトラフィックを許可する上り(内向き)ファイアウォール ルールを作成し、ファイアウォール ルールの IPv4 アドレス範囲が、プライベート接続リソースの作成時に割り当てられる IP アドレス範囲同じであることを確認します。

    gcloud compute firewall-rules create FIREWALL-RULE-NAME \
      --direction=INGRESS \
      --priority=PRIORITY \
      --network=PRIVATE_CONNECTIVITY_VPC \
      --project=VPC_PROJECT \
      --action=ALLOW \
      --rules=FIREWALL_RULES \
      --source-ranges=IP-RANGE
      

    以下を置き換えます。

    • FIREWALL-RULE-NAME: 作成するファイアウォール ルールの名前。
    • PRIORITY: ルールの優先度。0~65535 の整数で表します。ブロック トラフィック ルールに設定されている値(存在する場合)よりも小さい値にする必要があります。優先度の値が小さいほど、優先順位が高くなります。
    • PRIVATE_CONNECTIVITY_VPC: Datastream プライベート ネットワークにピアリングでき、制限で説明されている要件を満たす VPC ネットワーク。これは、プライベート接続構成を作成するときに指定する VPC です。
    • VPC_PROJECT: VPC ネットワークのプロジェクト。
    • FIREWALL_RULES: ファイアウォール ルールが適用されるプロトコルとポートのリスト(例: tcp:80)。このルールでは、ソース データベースまたはプロキシの IP アドレスとポートへの TCP トラフィックを許可する必要があります。プライベート接続では複数のデータベースをサポートできるため、ルールでは、構成の実際の使用状況を考慮する必要があります。
    • IP-RANGE: Datastream がソース データベースとの通信に使用する IP アドレスの範囲。これは、プライベート接続構成を作成するときに、[IP 範囲を割り当てる] フィールドに指定した範囲と同じです。

      Datastream に戻るトラフィックを許可するために、同じ下り(外向き)ファイアウォール ルールの作成が必要になる場合があります。

  • compute.networks.list 権限を含むロールに割り当てられていること。この権限により、プロジェクト内の VPC ネットワークを一覧表示するために必要な IAM 権限が付与されます。この権限がどのロールに含まれるかは、IAM 権限のリファレンスで確認できます。

共有 VPC の前提条件

共有 VPC を使用している場合は、始める前にで説明されている手順に加えて、次の操作を行う必要があります。

  1. サービス プロジェクトに対して:

    1. Datastream API を有効にします。
    2. Datastream サービス アカウントに使用するメールアドレスを取得します。Datastream サービス アカウントは、次のいずれかを行うと作成されます。

      • 接続プロファイルやストリームなどの Datastream リソースを作成する。
      • プライベート接続構成を作成し、共有 VPC を選択して、[Datastream サービス アカウントを作成する] をクリックします。サービス アカウントはホスト プロジェクトに作成されます。

      Datastream サービス アカウントに使用するメールアドレスを取得するには、Google Cloud コンソール ホームページでプロジェクト番号を見つけます。サービス アカウントのメールアドレスは service-[project_number]@gcp-sa-datastream.iam.gserviceaccount.com です。

  2. ホスト プロジェクトでは、次の手順を行います。

    1. Datastream サービス アカウントに compute.networkAdmin Identity and Access Management(IAM)ロールを付与します。 このロールは、VPC ピアリングを作成する場合にのみ必要です。ピアリングが確立されると、このロールは不要になります。

      組織で権限の付与が許可されていない場合は、次の最小権限を持つカスタムロールを作成します。

    カスタムロールの詳細については、カスタムロールを作成、管理するをご覧ください。

構成を作成する

  1. プライベート接続構成用に環境を準備する方法が反映されるように、必要な前提条件を確認します。これらの前提条件の詳細については、始める前にをご覧ください。

  2. Google Cloud コンソールで [プライベート接続の構成] ページに移動します。

    [プライベート接続の構成] ページに移動

  3. [構成を作成] をクリックします。

  4. 次の表を使用して、[プライベート接続の構成の作成] ページの [プライベート接続の構成] セクションのフィールドに入力します。

    項目説明
    構成名プライベート接続構成の表示名を入力します。
    構成 IDこのフィールドは、入力した構成名に基づいて Datastream が自動的に入力します。自動生成された ID を保持することも、変更することもできます。
    リージョン

    プライベート接続構成が保存されるリージョンを選択します。プライベート接続構成はリージョンに保存されます。リージョンの選択は、リージョンでダウンタイムが発生した場合の可用性に影響することがあります。

  5. 次の表を使用して、[プライベート接続構成の作成] ページの [接続の設定] セクションのフィールドに入力します。

    項目説明
    承認済み VPC ネットワーク始める前に」で作成した VPC ネットワークを選択します。
    IP 範囲を割り当てるVPC ネットワーク上で使用可能な IP 範囲を入力します。この IP 範囲は、「始める前に」で決定しました。
  6. [作成] をクリックします。

プライベート接続構成を作成した後、その概要と詳細情報を表示できます。