PrivateLink(AWS)を設定
このガイドでは、Zilliz Cloudクラスターから異なるAWS VPCでホストされているサービスへのプライベートリンクを設定する手順を示します。
この機能は、専用クラスターでのみ利用可能です。
プライベートリンクはプロジェクトレベルで設定され、このプロジェクト配下の同じクラウドプロバイダーおよびリージョンに展開されたすべてのクラスターに対して有効です。
Zilliz Cloudは、プライベートエンドポイントの作成および使用に対して料金を請求しません。ただし、クラウドプロバイダーは作成した各エンドポイントに費用がかかる場合があります。
始める前に
以下を確認してください:
- サービスとZilliz Cloudクラスターが異なるリージョンにあり、サービスがAWS PrivateLinkを介してクラスターにアクセスする必要がある場合は、チケットを送信してください。リクエストを処理いたします。
プライベートエンドポイントを作成
Zilliz Cloudは、プライベートエンドポイントを追加するための直感的なWebコンソールを提供します。対象のプロジェクトに移動し、左側のナビゲーションでネットワーク > プライベートエンドポイントをクリックします。+ プライベートエンドポイントをクリックします。

クラウドプロバイダーとリージョンを選択
AWSリージョンに展開されたクラスター用のプライベートエンドポイントを作成するには、クラウドプロバイダードロップダウンリストからAWSを選択します。リージョンでは、プライベートでアクセスしたいクラスターを配置しているリージョンを選択します。次へをクリックします。
利用可能なクラウドプロバイダーとリージョンの詳細については、「クラウドプロバイダーとリージョン」を参照してください。

エンドポイントを作成
クラウドプロバイダーコンソールで、UIコンソールまたはCLIを使用してこの手順を完了する必要があります。
-
UIコンソール経由

-
UIコンソール経由タブに切り替え、サービス名をコピーします。
-
AWSコンソールページに切り替えます。AWSコンソールで、クラウドリージョンがステップ1で選択したクラウドリージョンに対応していることを確認します。左側のナビゲーションでエンドポイントをクリックします。エンドポイントの作成をクリックします。

-
エンドポイントの作成ページで、エンドポイントのタイプとしてNLBsおよびGWLBsを使用したエンドポイントサービスを選択します。

-
AWSコンソールに切り替えます。サービス設定で、Zilliz Cloud Webコンソールからコピーしたサービス名をサービス名フィールドに貼り付けます。次にサービスの確認をクリックします。

-
サービス名が確認されたら、ネットワーク設定、サブネット、セキュリティグループを完了し、作成をクリックします。
-
エンドポイントが正常に作成されたら、エンドポイントID("vpce-"で始まる)をコピーします。
-
-
CLI経由

-
CLI経由タブに切り替えます。
-
VPC IDを入力します。
VPCを表示するには、Amazon VPCコンソールに移動します。ナビゲーションペインでVPCを選択します。目的のVPCを見つけ、そのIDをコピーします。このIDをZilliz CloudのVPC IDに入力します。
VPCを作成するには、「VPCを作成」を参照してください。
-
サブネットIDを入力します。
サブネットはVPCのサブディビジョンです。作成するプライベートエンドポイントと同じリージョンに存在するサブネットが必要です。サブネットを表示するには、Amazon VPCコンソールに移動します。現在のリージョンをプライベートリンクの作成に指定したリージョンに変更します。ナビゲーションペインでサブネットを選択します。目的のサブネットを見つけ、そのIDをコピーします。このIDをZilliz CloudのサブネットIDに入力します。
サブネットを作成するには、「VPCにサブネットを作成」を参照してください。
-
コードブロックのコピーアイコンをクリックして、AWSコンソールに移動します。
上部のナビゲーションで、AWS CloudShellを起動します。CloudShellでZilliz CloudからコピーしたCLIコマンドを実行します。

返却されるメッセージは以下のようになります:
{
"VpcEndpoint": {
# これをコピーして「VPCプライベートリンクID」に入力してください
"VpcEndpointId": "vpce-0ce90d01341533a5c",
"VpcEndpointType": "Interface",
...
"DnsEntries": [
{
# これをコピーして、次のステップで「VPCE_DNS」として使用します
"DnsName": "vpce-0ce90d01341533a5c-ngbqfdnj.vpce-svc-0b62964bfd0edfb74.us-west-2.vpce.amazonaws.com",
"HostedZoneId": "Z1YSA3EXCYUU9Z"
},
{
"DnsName": "vpce-0ce90d01341533a5c-ngbqfdnj-us-west-2a.vpce-svc-0b62964bfd0edfb74.us-west-2.vpce.amazonaws.com",
"HostedZoneId": "Z1YSA3EXCYUU9Z"
}
]
}返却メッセージで、作成したVPCエンドポイントのVpcEndpointId("vpce-"で始まる)をコピーします。
-
エンドポイントを承認
AWSコンソールから取得したエンドポイントIDをZilliz CloudのエンドポイントIDボックスに貼り付けます。作成をクリックします。

プライベートリンクを取得
送信したVPCエンドポイントの確認と承認後、Zilliz Cloudはこのエンドポイント用にプライベートリンクを割り当てます。この処理には約5分かかります。
プライベートリンクの準備ができたら、Zilliz Cloudのプライベートリンクページで表示できます。
DNSレコードを設定
Zilliz Cloudが割り当てたプライベートリンクを介してクラスターにアクセスする前に、DNSゾーンにCNAMEレコードを作成して、プライベートリンクをVPCエンドポイントのDNS名に解決する必要があります。
-
Amazon Route 53を使用してホストゾーンを作成
Amazon Route 53はWebベースのDNSサービスです。ホストされるDNSゾーンを作成して、そこにDNSレコードを追加できるようにします。

-
AWSアカウントにログインし、ホストゾーンに移動します。
-
ホストゾーンを作成をクリックします。
-
ホストゾーン設定セクションで、以下のパラメータを設定します。
パラメータ名
パラメータの説明
ドメイン名
対象クラスター用にZilliz Cloudが割り当てたプライベートリンク。
説明
ホストゾーンを区別するために使用する説明。
タイプ
プライベートホストゾーンを選択します。
-
ホストゾーンに関連付けるVPCのセクションで、VPC IDを追加してホストゾーンに関連付けます。
-
-
ホストゾーンにエイリアスレコードを作成
エイリアスレコードは、エイリアス名を真のまたは正規のドメイン名にマッピングするタイプのDNSレコードです。Zilliz Cloudが割り当てたプライベートリンクをVPCエンドポイントのDNS名にマッピングするエイリアスレコードを作成します。その後、プライベートリンクを使用してクラスターにプライベートでアクセスできます。

-
作成したホストゾーンで、レコードを作成をクリックします。
-
レコードを作成ページでエイリアスをオンにし、以下の方法でトラフィックのルーティング先を選択します:
-
最初のドロップダウンリストでVPCエンドポイントにエイリアスを選択します。
-
2番目のドロップダウンリストでクラウドリージョンを選択します。
-
上記で作成したエンドポイントの名前を入力します。
-
-
レコードを作成をクリックします。
-
クラスターへのインターネットアクセスを管理
プライベートエンドポイントを設定した後、プロジェクトへのインターネットアクセスを制限するためにクラスターパブリックエンドポイントを無効にすることができます。パブリックエンドポイントを無効にすると、ユーザーはプライベートリンクを使用してクラスターにのみ接続できるようになります。
パブリックエンドポイントを無効にするには:
-
対象クラスターのクラスター詳細ページに移動します。
-
接続セクションに移動します。
-
クラスターパブリックエンドポイントの隣の構成アイコンをクリックします。
-
情報を読み、パブリックエンドポイントを無効化ダイアログボックスで無効化をクリックします。
プライベートエンドポイントはデータプレーンアクセスにのみ影響します。コントロールプレーンは引き続きパブリックインターネット経由でアクセスできます。
パブリックエンドポイントを再び有効化した後、パブリックエンドポイントにアクセスできるようになるまで、ローカルDNSキャッシュが期限切れになるまで待つ必要がある場合があります。

FAQ
なぜAWSのプライベートリンクに接続すると常にタイムアウトが報告されますか?
タイムアウトは通常、以下の理由で発生します:
-
プライベートDNSレコードが存在しない。
DNSレコードが存在する場合、以下のようにプライベートリンクにpingを実行できます:
📘ノートpingリクエストの出力でVPCエンドポイントのIPアドレスが正しく解決されている場合、DNSレコードは動作しています。
以下が表示される場合は、DNSレコードを設定する必要があります。

-
セキュリティグループルールが存在しないか、無効。
AWSコンソールで、EC2インスタンスからVPCエンドポイントへのトラフィック用にセキュリティグループルールを適切に設定する必要があります。VPC内の適切なセキュリティグループは、プライベートリンクの末尾に付くポートでEC2インスタンスからの受信アクセスを許可する必要があります。
curlコマンドを使用してプライベートリンクの接続性をテストできます。通常の場合、400レスポンスが返されます。
以下のスクリーンショットのように、
curlコマンドが応答なしでハングする場合、VPCエンドポイントを作成のステップ9を参照して、適切なセキュリティグループルールを設定する必要があります。
📘ノート2つのセキュリティグループを設定する必要があります:1つはEC2インスタンス用で、プライベートリンクに関連するポートでのトラフィックを許可する必要があります。もう1つはVPCエンドポイント用で、EC2インスタンスのIPアドレスからのトラフィックを許可し、指定されたポート番号を対象とする必要があります。
既存のクラスターにプライベートエンドポイントを作成できますか?
はい。プライベートエンドポイントを作成する際、同じリージョンおよびプロジェクトに存在するすべての既存および将来の専用(エンタープライズ)クラスターに対して有効になります。必要なのは、異なるクラスターに対して異なるDNSレコードを追加することです。