概要
- AWS PrivateLink または GCP Private Service Connect (PSC) を使用する Confluent Cloud Dedicated クラスター
- AWS PrivateLink または GCP Private Service Connect (PSC) を使用する Confluent Cloud サーバーレスクラスター
セットアップの仕組み
- クラウドプロバイダーのプライベート ネットワーク接続を作成するための Reverse Private Endpoint。
- その RPE 上のカスタム private DNS マッピング。これにより、Confluent の bootstrap および broker ホスト名がプライベートに名前解決されます。
- ClickPipe の broker アドレスとして使用する Confluent Cloud Kafka の ブートストラップエンドポイント。
要件
- Kafka ClickPipe を作成するための ClickHouse Cloud サービス。
- プライベート接続先と同じクラウドおよびリージョンにある Confluent Cloud Kafka クラスター。
- ClickPipes が使用できる Kafka API key、またはサービスアカウントの認証情報。
- AWS PrivateLink の場合、ClickPipes custom private DNS はプライベートプレビューです。お使いのサービスで有効になっていない場合は、ClickHouse Support にお問い合わせください。
Dedicated クラスター
Confluent Cloud のネットワーク詳細を収集する
- 以下では
{dns_domain}として示している private DNS ドメイン。 - Confluent ネットワークで使用されているクラウドプロバイダーのゾーン。
- AWS の場合は、Confluent PrivateLink endpoint service 名。
- GCP の場合は、Confluent ネットワークの各ゾーンに対応する PSC サービスアタッチメント。
use1-az1 のような availability zone ID を使用します。
GCP では、us-central1-a のようなゾーンを使用します。
Confluent Cloud で、ClickPipes のコンシューマー ID 用に PrivateLink または PSC のアクセスエントリを追加します。
- AWS: ClickPipes の AWS アカウント ID
072088201116を許可します。 - GCP: ClickPipes の GCP プロジェクト
clickpipes-productionを許可します。
ClickPipes RPE を作成する
customPrivateDnsMappings を指定します。
既存の RPE を update operation で更新する場合は、
customPrivateDnsMappings がリスト全体を置き換えることに注意してください。
AWS Dedicated
VPC_ENDPOINT_SERVICE RPE を 1 つ作成します。
これらのカスタム private DNS マッピングをすべて同じ RPE に追加します。
*.{dns_domain}- Confluent network zone ごとに
*.{zone}.{dns_domain}
GCP Dedicated
GCP_PSC_SERVICE_ATTACHMENT の RPE を 1 つ作成します。
各 RPE は、そのゾーンの PSC サービス アタッチメントを指します。
対応するゾーンの RPE に *.{zone}.{dns_domain} を追加します。
*.{dns_domain} は、いずれか 1 つの RPE にのみ追加します。
最初のゾーンに対する OpenAPI リクエストボディの例:
サーバーレスクラスター
Confluent のイングレス用プライベート接続ゲートウェイを作成する
- AWS: イングレス PrivateLink ゲートウェイを作成します。
- GCP: イングレス Private Service Connect ゲートウェイを作成します。
- AWS: ゲートウェイの VPC エンドポイントサービス名。
- GCP: ゲートウェイの PSC サービスアタッチメント。
ClickPipes RPE を作成する
VPC_ENDPOINT_SERVICE RPE を作成します。
GCP_PSC_SERVICE_ATTACHMENT RPE を作成します:
endpointId が含まれるまで待機します。
Confluent アクセスポイントを作成するには、この ID が必要です。
Confluent アクセスポイントを作成する
- AWS: ClickPipes RPE の
endpointIdを VPC Endpoint ID として使用します。 - GCP: ClickPipes RPE の
endpointIdを PSC connection ID として使用します。
- アクセスポイントの DNS ドメイン (以下では
{access_point_dns_domain}と表記します) 。 - アクセスポイントのブートストラップエンドポイント。
RPE のカスタム DNS マッピングにパッチを適用する
*.{region}.{cloud}.accesspoint.glb.confluent.cloud*.{access_point_dns_domain}
*.{region}.{cloud}.accesspoint.glb.confluent.cloud のマッピング範囲は広く、cloud と region の組み合わせごとに一意です。
カスタム private DNS 名は ClickHouse service 内のすべての RPE で一意である必要があるため、
現時点では、同じ ClickHouse service に対して、同じ cloud と region 内に複数の Confluent イングレスアクセスポイントを作成することはできません。Terraform のセットアップ
clickhouse_clickpipes_reverse_private_endpoint: RPE を作成します。clickhouse_clickpipes_reverse_private_endpoint_custom_private_dns: 各 RPE に対するカスタム private DNS マッピング一式を管理します。
confluent-dedicated: Confluent Cloud Dedicated の プライベートネットワーキング 向けです。confluent-serverless: Confluent Cloud serverless のプライベートイングレス向けです。
vpc_endpoint_service_name、gcp_service_attachment、private_dns_name です。
Kafka ClickPipe を作成する
- Kafka ClickPipe を作成または編集します。
- Confluent Cloud の ブートストラップエンドポイントを、
SASL_SSL://プレフィックスなしで broker アドレス として使用します。 - Confluent Cloud の private connection 用に作成した RPE を選択します。
- Confluent Cloud Kafka API key と secret を使用し、
PLAIN認証を設定します。 - 通常どおり、topics、コンシューマグループ、データフォーマット、宛先テーブルを設定します。
トラブルシューティング
- RPE が引き続き pending のままの場合は、Confluent Cloud の プライベートネットワーキング の承認を確認し、Confluent Cloud で接続を承認または完了してください。
- ClickPipe の接続確認が失敗する場合は、Confluent Cloud から返されるすべての bootstrap および broker の ホスト名 が、カスタム private DNS マッピングのいずれかに一致していることを確認してください。
- カスタム DNS マッピングに patch を適用する場合は、必要なリスト全体を含めてください。更新すると既存のリストは置き換えられます。
- DNS マッピングが重複として拒否される場合は、同じ ClickHouse service 内のすべての RPE を確認し、完全一致またはワイルドカード名が重複していないか確認してください。