重要
このページは英語版のページを機械翻訳しています。原文はこちらからご覧ください。

VPC ピアリング接続のセットアップ

アプリケーションをTiDB Cloudに接続するには、TiDB TiDB CloudでVPC ピアリングをセットアップする必要があります。 TiDB クラスターに接続する段1段です。このドキュメントでは、VPC ピアリング接続AWS でおよびGCP 上の設定について説明します。

VPC ピアリング接続は、プライベート IP アドレスを使用してそれらの間でトラフィックをルーティングできるようにする 2 つの VPC 間のネットワーク接続です。どちらの VPC のインスタンスも、同じネットワーク内にあるかのように相互に通信できます。

現在、 TiDB Cloudは、同じプロジェクトの同じリージョンでの VPC ピアリングのみをサポートしています。同じリージョン内の同じプロジェクトの TiDB クラスターは、同じ VPC に作成されます。したがって、VPC ピアリングがプロジェクトのリージョンで設定されると、このプロジェクトの同じリージョンで作成されたすべての TiDB クラスターを VPC で接続できます。 VPC ピアリングのセットアップは、クラウド プロバイダーによって異なります。

前提条件: プロジェクト CIDR を設定する

Project CIDR (Classless Inter-Domain Routing) は、プロジェクト内のネットワーク ピアリングに使用される CIDR ブロックです。

VPC ピアリング リクエストをリージョンに追加する前に、プロジェクトのクラウド プロバイダー (AWS または GCP) のプロジェクト CIDR を設定して、アプリケーションの VPC へのピアリング リンクを確立する必要があります。

プロジェクトの最初の Dedicated Tier を作成するときに、プロジェクトの CIDR を設定できます。層を作成する前にプロジェクト CIDR を設定する場合は、次の操作を実行します。

  1. TiDB Cloudコンソールで、ターゲット プロジェクトを選択し、[プロジェクト設定] タブをクリックします。

  2. 左ペインで、 Project CIDRをクリックします。

  3. クラウド プロバイダに応じて [ AWS のプロジェクト CIDR を追加] または [Google Cloud のプロジェクト CIDR を追加] をクリックし、[プロジェクト CIDR ] フィールドに次のいずれかのネットワーク アドレスを指定して、[確認] をクリックします。

    ノート:

    アプリケーションが配置されている VPC の CIDR との競合を回避するには、このフィールドに別のプロジェクト CIDR を設定する必要があります。

    • 10.250.0.0/16
    • 10.250.0.0/17
    • 10.250.128.0/17
    • 172.30.0.0/16
    • 172.30.0.0/17
    • 172.30.128.0/17

    Project-CIDR4

  4. クラウド プロバイダーと特定のリージョンの CIDR をビューします。

    リージョン CIDR は、デフォルトでは非アクティブです。リージョン CIDR を有効にするには、ターゲット リージョンにクラスタを作成する必要があります。リージョン CIDR がアクティブな場合、リージョンの VPC ピアリングを作成できます。

    Project-CIDR2

AWS で

ステップ 1: VPC ピアリング リクエストを追加する

  1. TiDB Cloudコンソールで、VPC ピアリングのターゲット プロジェクトを選択し、[プロジェクト設定] タブをクリックします。

    デフォルトでは、 VPC ピアリング構成が表示されます。

  2. [追加] をクリックし、AWS アイコンを選択してから、既存の AWS VPC の必要な情報を入力します。

    • リージョン
    • AWS アカウント ID
    • VPC ID
    • VPC CIDR

    これらの情報は、VPC ダッシュボードの VPC の詳細から取得できます。

    VPC peering

  3. [**初期化]**をクリックします。 [ VPC ピアリングの承認] ダイアログが表示されます。

ステップ 2: VPC ピアリングを承認して構成する

次の 2 つのオプションのいずれかを使用して、VPC ピアリング接続を承認および構成します。

オプション 1: AWS CLI を使用する

  1. AWS コマンドライン インターフェイス (AWS CLI) をインストールします。

    curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
    unzip awscliv2.zip
    sudo ./aws/install
    
  2. アカウント情報に従って AWS CLI を設定します。 AWS CLI で必要な情報を取得するには、 AWS CLI 設定の基本を参照してください。

    aws configure
    
  3. 次の変数値をアカウント情報に置き換えます。

    # Sets up the related variables.
    pcx_tidb_to_app_id="<TiDB peering id>"
    app_region="<APP Region>"
    app_vpc_id="<Your VPC ID>"
    tidbcloud_project_cidr="<TiDB Cloud Project VPC CIDR>"
    

    例えば:

    # Sets up the related variables
    pcx_tidb_to_app_id="pcx-069f41efddcff66c8"
    app_region="us-west-2"
    app_vpc_id="vpc-0039fb90bb5cf8698"
    tidbcloud_project_cidr="10.250.0.0/16"
    
  4. 次のコマンドを実行します。

    # Accepts the VPC peering connection request.
    aws ec2 accept-vpc-peering-connection --vpc-peering-connection-id "$pcx_tidb_to_app_id"
    
    # Creates route table rules.
    aws ec2 describe-route-tables --region "$app_region" --filters Name=vpc-id,Values="$app_vpc_id" --query 'RouteTables[*].RouteTableId' --output text | tr "\t" "\n" | while read row
    do
        app_route_table_id="$row"
        aws ec2 create-route --route-table-id "$app_route_table_id" --destination-cidr-block "$tidbcloud_project_cidr" --vpc-peering-connection-id "$pcx_tidb_to_app_id"
    done
    

    ノート:

    ルート テーブル ルールが正常に作成された場合でも、 An error occurred (MissingParameter) when calling the CreateRoute operation: The request must contain the parameter routeTableIdエラーが発生する場合があります。この場合、作成されたルールを確認し、エラーを無視できます。

    # Modifies the VPC attribute to enable DNS-hostname and DNS-support.
    aws ec2 modify-vpc-attribute --vpc-id "$app_vpc_id" --enable-dns-hostnames
    aws ec2 modify-vpc-attribute --vpc-id "$app_vpc_id" --enable-dns-support
    

設定が完了すると、VPC ピアリングが作成されました。 TiDBクラスタに接続するで結果を確認できます。

オプション 2: AWS ダッシュボードを使用する

AWS ダッシュボードを使用して、VPC ピアリング接続を構成することもできます。

  1. AWS コンソールでピア接続リクエストを受け入れることを確認します。

    1. AWS コンソールにサインインし、上部のメニュー バーで [サービス] をクリックします。検索ボックスにVPCと入力し、VPC サービス ページに移動します。

      AWS dashboard

    2. 左側のナビゲーション バーから、[**ピアリング接続]**ページを開きます。 [ピアリング接続の作成] タブで、ピアリング接続は[承認待ち] ステータスになっています。

    3. リクエスタの所有者がTiDB Cloud ( 380838443567 ) であることを確認します。ピアリング接続を右クリックし、[ Accept Request ] を選択して、[ Accept VPC peering connection request ] ダイアログでリクエストを受け入れます。

      AWS VPC peering requests

  2. VPC サブネット ルート テーブルごとに、 TiDB Cloud VPC へのルートを追加します。

    1. 左側のナビゲーション バーから、[**ルート テーブル]**ページを開きます。

    2. アプリケーション VPC に属するすべてのルート テーブルを検索します。

      Search all route tables related to VPC

    3. 各ルート テーブルを右クリックし、[ルートの編集] を選択します。編集ページで、プロジェクト CIDR への宛先を含むルートを追加し ( TiDB CloudコンソールのVPC Peering構成ページを確認して)、[ターゲット] 列にピアリング接続 ID を入力します。

      Edit all route tables

  3. VPC のプライベート DNS ホスト ゾーン サポートが有効になっていることを確認します。

    1. 左側のナビゲーション バーから、[ **Your VPCs]**ページを開きます。

    2. アプリケーション VPC を選択します。

    3. 選択した VPC を右クリックします。設定ドロップダウン リストが表示されます。

    4. 設定ドロップダウン リストから、[ DNS ホスト名の編集] をクリックします。 DNS ホスト名を有効にして、[保存] をクリックします。

    5. 設定ドロップダウン リストから、[ DNS 解決の編集] をクリックします。 DNS 解決を有効にして、[保存] をクリックします。

ステップ 3: TiDB Cloud上の TiDBクラスタに接続する

  1. [**アクティブなクラスター]**ページに移動します。

  2. ターゲットクラスタの領域を見つけて、領域の右上隅にある [接続] をクリックします。接続ダイアログが表示されます。 VPC ピアリングのStatusactiveであることを確認できます。ステータスがまだシステム チェック中の場合は、約 5 分間待ってから、もう一度ダイアログを開きます。

    ヒント:

    または、[アクティブなクラスター] ページでターゲットクラスタの名前をクリックし、右上隅にある [接続] をクリックすることもできます。

  3. VPC 内のインスタンスから TiDB クラスターにアクセスします。 TiDB クラスターに接続するを参照してください。

GCP 上

手順

  1. TiDB Cloudコンソールで、VPC ピアリングのターゲット プロジェクトを選択し、[プロジェクト設定] タブをクリックします。

    デフォルトでは、 VPC ピアリング構成が表示されます。

  2. [追加] をクリックし、Google Cloud アイコンを選択して、既存の GCP VPC の必要な情報を入力します。

    • リージョン
    • アプリケーション GCP プロジェクト ID
    • VPC ネットワーク名
    • VPC CIDR
  3. [**初期化]**をクリックします。 [ VPC ピアリングの承認] ダイアログが表示されます。

  4. TiDB VPC ピアリングの接続情報を確認します。

    VPC-Peering

  5. 次のコマンドを実行して、VPC ピアリングのセットアップを完了します。

    gcloud beta compute networks peerings create <your-peer-name> --project <your-project-id> --network <your-vpc-network-name> --peer-project <tidb-project-id> --peer-network <tidb-vpc-network-name>
    

    ノート:

    <your-peer-name>はお好きな名前をつけてください。