Azureプライベートリンクを介してTiDB Cloud Dedicatedクラスタに接続する
このドキュメントではAzure プライベートリンク経由でTiDB Cloud Dedicatedクラスターに接続する方法について説明します。
TiDB Cloud は、 Azure プライベートリンク仮想ネットワークでホストされているTiDB Cloudサービスへの、Azure 経由の高度に安全な一方向アクセスをサポートしています。まるでサービスがお客様自身の仮想ネットワーク内にあるかのようにアクセスできます。仮想ネットワーク内にプライベートエンドポイントを作成し、そのエンドポイントを介して権限を付与してTiDB Cloudサービスに接続できます。
Azure Private Link を利用したエンドポイント接続は、安全かつプライベートであり、データがパブリックインターネットに公開されることはありません。さらに、エンドポイント接続は CIDR オーバーラップをサポートしており、ネットワーク管理が容易です。
Azure Private Link のアーキテクチャは次のとおりです: 1
プライベートエンドポイントとエンドポイントサービスのより詳細な定義については、以下のAzureドキュメントを参照してください。
制限
Organization OwnerおよびProject Ownerロールのみがプライベートエンドポイントを作成できます。- 接続するプライベートエンドポイントとTiDBクラスタは、同じリージョンに配置されている必要があります。
Azure Private Link を使用してプライベートエンドポイントを設定する
プライベートエンドポイント経由でTiDB Cloud Dedicatedクラスタに接続するには、以下の手順を実行してください。
複数のクラスターがある場合は、Azure Private Link を使用して接続する各クラスターに対して、これらの手順を繰り返す必要があります。
ステップ1. TiDBクラスタを選択します
- My TiDBページで、対象のTiDB Cloud Dedicatedクラスタの名前をクリックすると、その概要ページに移動します。
- 右上隅のConnectをクリックしてください。接続ダイアログが表示されます。
- Connection TypeドロップダウンリストでPrivate Endpointを選択し、 Create Private Endpoint Connectionをクリックして、 Create Azure Private Endpoint Connectionダイアログを開きます。
ステップ2. Azureプライベートエンドポイントを作成する
Create Azure Private Endpoint Connectionダイアログで、プライベートリンクサービスのTiDB CloudリソースIDをコピーし、後で使用するためにダイアログを開いたままにしておきます。
AzureポータルまたはAzure CLIを使用して、プライベートエンドポイントを作成します。
Azureポータルにログインします。
Private endpointsを検索し、検索結果からPrivate endpointsを選択してください。
Private endpointページで、 + Createをクリックします。
Basicsタブで、プロジェクトとインスタンスの情報を入力し、 Next: Resourceをクリックします。
Resourceタブで、connection methodとしてConnect to an Azure resource by resource ID or aliasを選択し、コピーしたTiDB Cloudリソース ID をResource ID or aliasフィールドに貼り付けます。
引き続きNextをクリックして残りの構成タブに進み、必要な設定を完了します。次に、 Createをクリックしてプライベートエンドポイントを作成してデプロイします。 Azure のデプロイが完了するまでに数秒かかる場合があります。詳細については、Azure ドキュメントのプライベートエンドポイントを作成するを参照してください。
プライベートエンドポイントの作成とデプロイが完了したら、 Go to resourceをクリックし、以下の手順を実行してください。
左側のナビゲーションペインでSettings > Propertiesをクリックし、後で使用するためにResource IDをコピーしてください。
左側のナビゲーションペインでSettings > DNS configurationをクリックし、後で使用するためにIP addressをコピーしてください。
Azure CLI にサインインして、サブスクリプションを選択してください。
az login az account set --subscription ${your_subscription_id}Create Azure Private Endpoint ConnectionダイアログからコピーしたTiDB CloudリソースIDを使用して、プライベートエンドポイントを作成します。
az network private-endpoint create \ --name ${your_private_endpoint_name} \ --resource-group ${your_resource_group_name} \ --vnet-name ${your_vnet_name} \ --subnet ${your_subnet_name} \ --private-connection-resource-id "${your_tidb_cloud_resource_id}" \ --connection-name ${your_private_endpoint_connection_name} \ --location ${your_region}プライベートエンドポイントのResource IDを取得します。
az network private-endpoint show \ --name ${your_private_endpoint_name} \ --resource-group ${your_resource_group_name} \ --query "id" \ --output tsvDNS設定からプライベートエンドポイントのIP addressを取得します。
az network private-endpoint show \ --name ${your_private_endpoint_name} \ --resource-group ${your_resource_group_name} \ --query "customDnsConfigs[0].ipAddresses[0]" \ --output tsv
ステップ3. エンドポイントを受け入れる
- TiDB CloudコンソールのCreate Azure Private Endpoint Connectionダイアログに戻り、コピーしたResource IDとIP addressそれぞれのフィールドに貼り付けます。
- Verify Endpointをクリックして、プライベートエンドポイントへのアクセスを検証してください。エラーが発生した場合は、エラーメッセージの手順に従ってトラブルシューティングを行い、再度お試しください。
- 検証が成功したら、 Accept Endpointをクリックして、プライベートエンドポイントからの接続を承認してください。
ステップ4. TiDBクラスターに接続します
エンドポイント接続を承認すると、接続ダイアログにリダイレクトされます。
- プライベートエンドポイントの接続ステータスがActiveになるまでお待ちください(約5分)。ステータスを確認するには、左側のナビゲーションペインでSettings > Networkingをクリックして、 Networkingページに移動してください。
- Connect Withドロップダウンリストから、希望する接続方法を選択してください。対応する接続文字列がダイアログの下部に表示されます。
- 接続文字列を使用してクラスターに接続してください。
プライベートエンドポイントの状態参照
プライベートエンドポイントまたはプライベートエンドポイントサービスのステータスを表示するには、左側のナビゲーションペインでSettings > Networkingをクリックして、 Networkingページに移動します。
プライベートエンドポイントの可能なステータスは、以下のように説明されます。
- 発見: TiDB Cloudは、リクエストを受け入れる前にエンドポイントサービスに関連付けられたプライベートエンドポイントを自動的に検出できるため、別のエンドポイントを作成する必要がなくなります。
- Pending:処理待ち。
- Active:プライベートエンドポイントは使用可能です。このステータスのプライベートエンドポイントは編集できません。
- Deleting:プライベートエンドポイントが削除されています。
- Failed:プライベートエンドポイントの作成に失敗しました。該当行のEditをクリックすると、作成を再試行できます。
プライベートエンドポイントサービスの可能なステータスは、以下のように説明されます。
- Creating:エンドポイントサービスが作成されています。これには3~5分かかります。
- Active:プライベートエンドポイントが作成されるかどうかに関わらず、エンドポイントサービスが作成されます。
トラブルシューティング
TiDB Cloudでエンドポイントサービスの作成に失敗しました。どうすればよいですか?
Create Azure Private Endpointページを開き、TiDB クラスターを選択すると、エンドポイントサービスは自動的に作成されます。失敗と表示される場合、またはCreatingの状態が長時間続く場合は、サポートに問い合わせてサポートチケットを受けてください。
セットアップ中にアクションをキャンセルした場合、プライベートエンドポイントを受け入れる前に何をすべきですか?
Azure プライベートエンドポイント接続機能は、プライベートエンドポイントを自動的に検出できます。つまり、 Azureプライベートエンドポイントの作成Azure ポータルで、 TiDB Cloudコンソールの [ Azure プライベートエンドポイント接続の作成] ダイアログで[キャンセル] をクリックしても、作成されたエンドポイントをNetworkingページで表示できます。キャンセルが意図的でない場合は、エンドポイントの設定を続行してセットアップを完了できます。キャンセルが意図的な場合は、TiDB Cloudコンソールでエンドポイントを直接削除できます。
- Azure Private Linkアーキテクチャの図は、Creative Commons Attribution 4.0 International に基づいてライセンスされている、Azure ドキュメントの「AzureプライベートリンクサービスAzureプライベートリンクサービスとは何ですか?ドキュメント ( ソースファイルはGitHubにあります) からのものです。↩


