Changefeeds のプライベート エンドポイントを設定する
このドキュメントでは、 TiDB Cloud専用クラスターで変更フィード用のプライベート エンドポイントを作成し、プライベート接続を介してセルフホスト型 Kafka または MySQL にデータを安全にストリーミングできるようにする方法について説明します。
制限
同じVPC内では、AWSのプライベートエンドポイントサービス、Google Cloudのサービスアタッチメント、またはAzureのプライベートリンクサービスごとに、最大5つのプライベートエンドポイントを設定できます。この上限を超える場合は、新しいプライベートエンドポイントを作成する前に、未使用のプライベートエンドポイントを削除してください。
前提条件
- プライベートエンドポイント作成の権限を確認する
- ネットワーク接続を設定する
権限
組織内で次のいずれかのロールを持つユーザーのみが、変更フィードのプライベート エンドポイントを作成できます。
Organization OwnerProject OwnerProject Data Access Read-Write
TiDB Cloudのロールの詳細については、 ユーザーロール参照してください。
ネットワーク
プライベート エンドポイントは、クラウド プロバイダーのPrivate LinkまたはPrivate Service Connectテクノロジーを活用し、VPC 内のリソースが、あたかもそれらのサービスが VPC 内で直接ホストされているかのように、プライベート IP アドレスを介して他の VPC 内のサービスに接続できるようにします。
changefeed ダウンストリーム サービスが AWS でホストされている場合は、次の情報を収集します。
- ダウンストリーム サービスのプライベート エンドポイント サービスの名前
- ダウンストリーム サービスがデプロイされているアベイラビリティ ゾーン (AZ)
ダウンストリーム サービスでプライベート エンドポイント サービスが利用できない場合は、手順ステップ 2. Kafka クラスターをプライベート リンク サービスとして公開するに従ってロード バランサーとプライベート リンク サービスを設定します。
changefeed ダウンストリーム サービスが Google Cloud でホストされている場合は、ダウンストリーム サービスのサービス アタッチメント情報を収集します。
ダウンストリーム サービスでサービス アタッチメントが利用できない場合は、手順ステップ2. Kafka-proxyをプライベートサービス接続サービスとして公開するに従ってサービス アタッチメント情報を取得します。
changefeed ダウンストリーム サービスが Azure でホストされている場合は、ダウンストリーム サービスのプライベート リンク サービスのエイリアスを収集します。
ダウンストリーム サービスでプライベート エンドポイント サービスが利用できない場合は、手順ステップ 2. Kafka クラスターをプライベート リンク サービスとして公開するに従ってロード バランサーとプライベート リンク サービスを設定します。
ステップ1. クラスターのネットワークページを開きます
TiDB Cloudコンソールにログインします。
クラスターページで、ターゲット クラスターの名前をクリックして、概要ページに移動します。
ヒント:
左上隅のコンボ ボックスを使用して、組織、プロジェクト、クラスターを切り替えることができます。
左側のナビゲーション ペインで、 [設定] > [ネットワーク] をクリックします。
ステップ2. 変更フィードのプライベートエンドポイントを構成する
構成手順は、クラスターがデプロイされているクラウド プロバイダーによって異なります。
[ネットワーキング]ページで、 [Changefeed の AWS プライベートエンドポイント]セクションの[プライベートエンドポイントの作成]をクリックします。
「Changefeed のプライベート エンドポイントの作成」ダイアログで、プライベート エンドポイントの名前を入力します。
リマインダーに従って、 TiDB CloudのAWS プリンシパルにエンドポイントの作成を承認します。
セクションネットワークで収集したエンドポイント サービス名を入力します。
AZ の数を選択します。AZ の数と AZ ID が Kafka のデプロイメントと一致していることを確認してください。
このプライベート エンドポイントが Apache Kafka 用に作成される場合は、 Kafka のアドバタイズ リスナーオプションを有効にします。
TiDB 管理ドメインまたはカスタムドメインのいずれかを使用して、Kafka のアドバタイズされたリスナーを構成します。
- アドバタイズされたリスナーにTiDB マネージドドメインを使用するには、 「ドメインパターン」フィールドに一意の文字列を入力し、 「生成」をクリックします。TiDB は、各アベイラビリティゾーンのサブドメインを持つブローカーアドレスを生成します。
- アドバタイズされたリスナーに独自のカスタムドメインを使用するには、ドメイン タイプを[カスタム]に切り替え、 [カスタム ドメイン]フィールドにルート ドメインを入力し、[**チェック]**をクリックして、各アベイラビリティー ゾーンのブローカー サブドメインを指定します。
[作成]をクリックして構成を検証し、プライベート エンドポイントを作成します。
[ネットワーキング]ページで、 [Changefeed 用 Google Cloud プライベート エンドポイント]セクションの[プライベート エンドポイントの作成]をクリックします。
「Changefeed のプライベート エンドポイントの作成」ダイアログで、プライベート エンドポイントの名前を入力します。
リマインダーに従って、 TiDB CloudのGoogle Cloud プロジェクトにエンドポイントの作成を事前承認するよう許可するか、エンドポイント接続要求を受け取ったら手動で承認します。
セクションネットワークで収集したサービス添付ファイルを入力します。
このプライベート エンドポイントが Apache Kafka 用に作成される場合は、 Kafka のアドバタイズ リスナーオプションを有効にします。
TiDB 管理ドメインまたはカスタムドメインのいずれかを使用して、Kafka のアドバタイズされたリスナーを構成します。
- アドバタイズされたリスナーにTiDB マネージドドメインを使用するには、 「ドメインパターン」フィールドに一意の文字列を入力し、 「生成」をクリックします。TiDB は、各アベイラビリティゾーンのサブドメインを持つブローカーアドレスを生成します。
- アドバタイズされたリスナーに独自のカスタムドメインを使用するには、ドメイン タイプを[カスタム]に切り替え、 [カスタム ドメイン]フィールドにルート ドメインを入力し、[**チェック]**をクリックして、各アベイラビリティー ゾーンのブローカー サブドメインを指定します。
[作成]をクリックして構成を検証し、プライベート エンドポイントを作成します。
[ネットワーク]ページで、 [Changefeed の Azure プライベート エンドポイント]セクションの[プライベート エンドポイントの作成]をクリックします。
「Changefeed のプライベート エンドポイントの作成」ダイアログで、プライベート エンドポイントの名前を入力します。
変更フィードを作成する前に、リマインダーに従って、 TiDB Cloudの Azure サブスクリプションを承認するか、エイリアスを持つすべてのユーザーが Private Link サービスにアクセスできるようにしてください。Private Link サービスの可視性に関する詳細については、Azure ドキュメントの制御サービスの公開参照してください。
セクションネットワークで収集したプライベート リンク サービスのエイリアスを入力します。
このプライベート エンドポイントが Apache Kafka 用に作成される場合は、 Kafka のアドバタイズ リスナーオプションを有効にします。
TiDB 管理ドメインまたはカスタムドメインのいずれかを使用して、Kafka のアドバタイズされたリスナーを構成します。
- アドバタイズされたリスナーにTiDB マネージドドメインを使用するには、 「ドメインパターン」フィールドに一意の文字列を入力し、 「生成」をクリックします。TiDB は、各アベイラビリティゾーンのサブドメインを持つブローカーアドレスを生成します。
- アドバタイズされたリスナーに独自のカスタムドメインを使用するには、ドメイン タイプを[カスタム]に切り替え、 [カスタム ドメイン]フィールドにルート ドメインを入力し、[**チェック]**をクリックして、各アベイラビリティー ゾーンのブローカー サブドメインを指定します。
[作成]をクリックして構成を検証し、プライベート エンドポイントを作成します。