AWS PrivateLinkを使用すると、ClickPipes と AWS でホストされているデータソースの間に安全な接続を確立できます。ClickPipes は VPC 内に**リバースプライベートエンドポイント (RPE) **を作成し、データソース用に公開されたエンドポイントサービスに接続するため、トラフィックがパブリックインターネットに公開されることはありません。
サポートされる ClickPipes のデータソース
ClickPipes のリバースプライベートエンドポイント機能は、以下の データソースタイプにのみ対応しています。
- Kafka
- Postgres
- MySQL
- MongoDB
サポートされる AWS PrivateLink エンドポイントの種類
ClickPipes のリバース プライベート エンドポイントは、次のいずれかの AWS PrivateLink 方式で設定できます。
VPC リソース
PrivateLink を使用すると、ClickPipes から VPC リソースにアクセスできます。この方法では、データソースの前段にロードバランサーを設置する必要がありません。
リソース設定では、特定のホストまたは RDS クラスターの ARN を指定できます。
RDS クラスターからデータを取り込む Postgres CDC には、この方法が推奨されます。
VPC リソースで PrivateLink を設定するには:
- リソースゲートウェイを作成する
- リソース設定を作成する
- リソース共有を作成する
リソースゲートウェイを作成する
リソースゲートウェイは、VPC 内の指定されたリソース宛てのトラフィックを受信するポイントです。
リソースゲートウェイは、AWS コンソールまたは次のコマンドで作成できます。
aws vpc-lattice create-resource-gateway \
--vpc-identifier <VPC_ID> \
--subnet-ids <SUBNET_IDS> \
--security-group-ids <SG_IDs> \
--name <RESOURCE_GATEWAY_NAME>出力にはリソースゲートウェイ ID が含まれます。これは次の手順で必要になります。
続行するには、リソースゲートウェイが Active 状態になるまで待つ必要があります。次のコマンドを実行して状態を確認できます。
aws vpc-lattice get-resource-gateway \
--resource-gateway-identifier <RESOURCE_GATEWAY_ID>VPC リソース構成を作成する
リソース設定をリソースゲートウェイに関連付けることで、リソースにアクセスできるようになります。
リソース設定は、AWS コンソールまたは次のコマンドを使用して作成できます。
aws vpc-lattice create-resource-configuration \
--resource-gateway-identifier <RESOURCE_GATEWAY_ID> \
--type <RESOURCE_CONFIGURATION_TYPE> \
--resource-configuration-definition <RESOURCE_CONFIGURATION_DEFINITION> \
--name <RESOURCE_CONFIGURATION_NAME>最もシンプルなリソース設定タイプは、単一の Resource-Configuration です。ARN を直接指定するか、パブリックに名前解決できる IP アドレスまたはドメイン名を共有して設定できます。
たとえば、RDS クラスターの ARN を指定して設定するには:
aws vpc-lattice create-resource-configuration \
--name my-rds-cluster-config \
--type ARN \
--resource-gateway-identifier rgw-0bba03f3d56060135 \
--resource-configuration-definition 'arnResource={arn=arn:aws:rds:us-east-1:123456789012:cluster:my-rds-cluster}'出力には、次のステップで必要となる Resource-Configuration ARN が含まれます。また、VPC リソースを使用した ClickPipe connection の設定に必要な Resource-Configuration ID も含まれます。
MSK マルチ VPC 接続
マルチ VPC 接続は、複数の VPC を単一の MSK クラスターに接続できる AWS MSK の組み込み機能です。 プライベート DNS は標準でサポートされており、追加の設定は不要です。 クロスリージョン接続には対応していません。
ClickPipes for MSK では、このオプションを推奨します。 詳細については、開始ガイドを参照してください。
接続の設定方法については、ClickPipes 向け MSK セットアップガイドを参照してください。
VPC エンドポイントサービス
VPC エンドポイントサービスは、データソースを ClickPipes と共有するためのもう一つの方法です。 データソースの前段に NLB (Network Load Balancer) を設定し、 VPC エンドポイントサービスがその NLB を使用するように構成する必要があります。
VPC エンドポイントサービスは、ClickPipes VPC からアクセスできるプライベート DNSを使用して構成できます。 ただし、AWS PrivateLink が管理するプライベート DNS が常に利用可能な選択肢とは限りません。
- データソースのドメイン名を所有していないため、AWS で検証できない
- Confluent Cloud のように、プロバイダーがコンシューマー側で DNS 解決を管理することを求める
このような場合は、カスタム プライベート DNSを参照してください。
次の用途に適しています。
- プライベート DNS のサポートが必要なオンプレミスの Kafka セットアップ
- Confluent Cloud のプライベート接続
- Postgres CDC (変更データキャプチャ) のクロスリージョン接続
- MSK クラスターのクロスリージョン接続
詳細については、Getting Startedガイドを参照してください。
MSK クラスターについては、カスタム プライベート DNS 名を使用する、エンドポイントサービスごとにブローカーを設定する構成の詳細を、MSK クラスター用 AWS PrivateLink VPC エンドポイントサービス で確認してください。
カスタム プライベート DNS
AWS PrivateLink は、検証済みドメインを持つ VPC エンドポイントサービス向けにマネージド プライベート DNS を提供します。一部のサービスでは、各コンシューマーが自身の VPC 内で DNS 解決を管理する必要があります。たとえば Confluent Cloud では、コンシューマーがブローカーのホスト名を PrivateLink エンドポイントに解決する必要があります。
このような場合、ClickPipes では、リバース プライベート エンドポイントにカスタム プライベート DNS 名を関連付けることができます。ClickPipes はこれらの名前をエンドポイントのプライベートアドレスに解決するため、データ ソースにはプライベート接続経由で独自のホスト名を使用してアクセスできます。
カスタム プライベート DNS はマネージド プライベート DNS を補完するものであり、置き換えるものではありません。PrivateLink サービスがすでにプライベート DNS 名を提供している場合、カスタム名は必要ありません。
カスタム プライベート DNS 名は、VPC エンドポイントサービス および VPC リソースのエンドポイントタイプでサポートされます。MSK マルチ VPC はマネージド プライベート DNS を標準で提供しており、カスタム名はサポートしていません。
カスタム プライベート DNS 名には次のルールが適用されます。
- 完全一致名 (
kafka.internal.example.com) とワイルドカード名 (*.example.com) が サポートされます。ワイルドカードは 1 つの DNS ラベルに一致します。たとえば、*.abcde12345.us-east-1.aws.confluent.cloudはb0-lkc123.abcde12345.us-east-1.aws.confluent.cloudに一致します。 - 名前は、ワイルドカード名と完全一致名の重複も含め、ClickHouse service のすべてのリバース プライベート エンドポイント間で一意である必要があります。
- 予約済み接尾辞 (例:
local、localhost、internal、corp、private) 配下の名前は拒否されます。
カスタム プライベート DNS 名を設定するには:
- ClickHouse Cloud console で、リバース プライベート エンドポイントを作成するときに
Custom private DNS nameフィールドに入力します。この フィールドは、サービスでこの機能が有効になると表示されます。 - OpenAPI では、リバース プライベート エンドポイントの作成時に
customPrivateDnsMappingsを設定するか、PATCHリクエストで既存の エンドポイントを更新します。更新するとマッピングのリスト全体が置き換えられます。空のリストを指定すると、すべてのカスタム名が 削除されます。 - Terraform では、
clickhouse_clickpipes_reverse_private_endpoint_custom_private_dnsリソースを使用して、既存のリバース プライベート エンドポイントのマッピングを管理します。
リバース プライベート エンドポイントを使用した ClickPipe の作成
- ClickHouse Cloud サービスの SQL Console にアクセスします。

- 左側のメニューで
Data Sourcesボタンを選択し、「ClickPipe をセットアップ」をクリックします。

- データソースとして Kafka または Postgres を選択します。

Reverse private endpointオプションを選択します。

- 既存のリバース プライベート エンドポイントを選択するか、新しいエンドポイントを作成します。

- 選択したエンドポイントタイプに必要なパラメータを指定します。

- VPC リソースの場合は、設定共有 ARN と設定 ID を指定します。
- MSK マルチ VPC の場合は、クラスター ARN と、作成したエンドポイントで使用する認証方法を指定します。
- VPC エンドポイントサービスの場合は、サービス名を指定します。
- 必要に応じて、カスタム プライベート DNS 名を指定します。
-
Createをクリックし、リバース プライベート エンドポイントの準備が完了するまで待ちます。新しいエンドポイントを作成する場合、セットアップには時間がかかります。 エンドポイントの準備が完了すると、ページは自動的に更新されます。 VPC エンドポイントサービスでは、AWS コンソールで接続リクエストを承認する必要がある場合があります。

-
エンドポイントの準備が完了すると、DNS 名を使用してデータソースに接続できます。
エンドポイントの一覧で、利用可能なエンドポイントの DNS 名を確認できます。 DNS 名には、ClickPipes によって内部的にプロビジョニングされたもの、PrivateLink サービスから提供されるプライベート DNS 名、 またはカスタム プライベート DNS 名を使用できます。 DNS 名は完全なネットワークアドレスではありません。 データソースに応じてポートを追加してください。
MSK の接続文字列は AWS コンソールで確認できます。
DNS 名の一覧全体を確認するには、Cloud サービスの設定にアクセスしてください。
リバースプライベートエンドポイントの管理
既存のリバースプライベートエンドポイントは、ClickHouse Cloud のサービス設定で管理できます。
-
サイドバーで
Settingsボタンをクリックします。
-
ClickPipe reverse private endpointsセクションでReverse private endpointsをクリックします。
リバースプライベートエンドポイントの詳細情報がフライアウトに表示されます。
エンドポイントは作成後に編集できません。エンドポイントの
×をクリックし、確認すると削除できます。削除は元に戻せず、そのエンドポイントを使用中の ClickPipe は機能しなくなります。
サポート対象の AWS リージョン
ClickPipes の AWS PrivateLink は、特定の AWS リージョンでのみサポートされています。 利用可能なリージョンについては、ClickPipes リージョン一覧を参照してください。
この制限は、クロスリージョン接続が有効になっている PrivateLink VPC エンドポイントサービスには適用されません。
制限事項
ClickHouse Cloud で作成される ClickPipes 用 AWS PrivateLink エンドポイントは、ClickHouse Cloud サービスと同じ AWS リージョンに作成されるとは限りません。
現在、クロスリージョン接続をサポートしているのは VPC エンドポイントサービスのみです。
プライベート エンドポイントは特定の ClickHouse サービスに紐づけられ、サービス間で移行することはできません。 1 つの ClickHouse サービスに対する複数の ClickPipes で、同じエンドポイントを再利用できます。
AWS MSK では、認証タイプ (SASL_IAM または SASL_SCRAM) ごとに、MSK クラスターあたり 1 つの PrivateLink (VPC エンドポイント) のみがサポートされます。そのため、複数の ClickHouse Cloud サービスまたは組織が、同じ認証タイプを使用して同じ MSK クラスターへの個別の PrivateLink 接続を作成することはできません。
非アクティブなエンドポイントの自動クリーンアップ
終端状態にあるリバースプライベートエンドポイントは、所定の猶予期間が経過すると自動的に削除されます。 これにより、未使用または設定に問題のあるエンドポイントが無期限に残るのを防ぎます。
エンドポイントのステータスに応じて、以下の猶予期間が適用されます。
| ステータス | 猶予期間 | 説明 |
|---|---|---|
| Failed | 7日間 | プロビジョニング中にエンドポイントでエラーが発生しました。 |
| 承認待ち | 1日 | エンドポイント接続がサービス所有者に承認されていません。 |
| 拒否済み | 1日 | エンドポイント接続がサービス所有者に拒否されました。 |
| 期限切れ | 即時 | エンドポイントはすでに期限切れであり、速やかに削除されます。 |
猶予期間が経過すると、エンドポイントと関連するすべてのリソースが自動的に削除されます。
自動削除を防ぐには、猶予期間が終了する前に根本原因を解決してください。 たとえば、AWS コンソールで保留中の接続リクエストを承認するか、 失敗状態になっているエンドポイントを再作成してください。