GCP PSC 接続を利用できるのは、ClickPipes サービスが GCP にデプロイされている場合のみです。開始前に、ClickPipes がホストされている GCP リージョンの一覧を確認してください。
サポートされるパターン
前提条件
- GCP でホストされ、ClickPipes がホストされているリージョンに配置された ClickHouse Cloud サービス。
- ソースで PSC を有効にし、PSC サービスアタッチメントを管理するための IAM 権限 (
roles/compute.networkAdmin) 。 - サービスアタッチメントへの接続を許可されたClickPipes コンシューマープロジェクト。本番環境の ClickPipes では、これは
clickpipes-productionです。 - サービスを所有する組織の ClickHouse Cloud API キー/シークレット (Terraform または API 経由でプロビジョニングする場合にのみ必要) 。
リバース プライベート エンドポイントを作成する
- サービス アタッチメント URI:
projects/<PROJECT>/regions/<REGION>/serviceAttachments/<NAME>。データソースの前段に公開されている PSC エンドポイントです。 - private DNS 名: パイプの接続先ホスト名です。PSC エンドポイントには DNS 名が紐付かない静的な内部 IP が割り当てられるため、 ClickPipes がこのホスト名をその IP に解決します。
- ClickPipes UI
- Terraform
- API
- ClickHouse Cloud でサービスを開き、Data Sources > ClickPipes に移動します。
- 取り込み元のデータソースを選択します。
- Setup your ClickPipe connection で Use secure connection をオンにし、+ Reverse private endpoint をクリックして GCP PSC service attachment を選択します。
- サービス アタッチメント URI、private DNS 名、説明 を入力します。
- Create をクリックします。エンドポイントの状態は
Provisioning→Readyと遷移します。 (ネイティブ PSC は自動承認されるため、PendingAcceptanceは表示されません。)
カスタム プライベート DNS 名
*.<cluster>.<region>.managedkafka.<project>.cloud.goog のような単一のマッピングで、Managed Kafka クラスター内のすべての broker を対象にできます。
GCP PSC では、マッピングの privateDnsName のみが使用されます。PSC エンドポイントは、紐付ける DNS 名のない静的 IP を公開するため、internalDNSName フィールドはサポートされません。マッピングは常にその IP に解決されます。
プロデューサー所有の接続を承認する
PendingAcceptance 状態のままとなります。
接続を承認するには、サービスアタッチメントのコンシューマー承認リストに、エンドポイントの数値 ID ベースの URI (projects/<PROJECT>/regions/<REGION>/forwardingRules/<NUMERIC_ID>) を追加する必要があります。この値は、サービスアタッチメント上の保留中の接続の endpointWithId です。次のように記述して確認します。
status が PENDING のエントリから endpointWithId を取得し、https://www.googleapis.com/compute/beta/ プレフィックスを削除して、結果を --consumer-accept-list に渡します。
リバース プライベート エンドポイントの管理
-
サイドバーで
Settingsボタンをクリックします。 -
ClickPipe reverse private endpointsセクションでReverse private endpointsをクリックします。 リバース プライベート エンドポイントの詳細情報がフライアウトに表示されます。 このビューでは削除以外の操作はできません。エンドポイントの×をクリックし、確認して削除します。削除は元に戻せず、そのエンドポイントを現在使用している ClickPipe は機能しなくなります。 エンドポイントのカスタム private DNS マッピングを変更するには、API または Terraform を使用します。更新すると、マッピングが追加されるのではなく、マッピングのリスト全体が置き換えられます。
Rejected または Failed が表示される場合は、ステータスの下にあるメッセージを確認してください。このメッセージでは、producer によって拒否された接続と、閉じられた接続または対応が必要な接続を区別できます。通常、いずれもサービス アタッチメントの許可リストに ClickPipes コンシューマープロジェクトが含まれていないことを示します。GCP がエンドポイントについて報告しているステータスを確認するには、サービス アタッチメントの connectedEndpoints を記述します。
制限事項
- RPE エンドポイントとサービス アタッチメントは、同じ GCP リージョン内に存在する必要があります。グローバル アクセスを介したリージョン間 PSC は、まだサポートされていません。ログソースが別のリージョンにある場合は、SSH トンネリングを使用してください。
- PSC サービス アタッチメントを一度に要求できる ClickHouse Cloud サービスは 1 つだけであり、複数のサービス間で再利用することはできません。サービス アタッチメントを別のサービスに移動するには、既存の要求を解除するため、ClickHouse Support にお問い合わせください。