Skip to main content
Private Service Connect (PSC) は Google Cloud のネットワーク機能で、コンシューマーが自身の仮想プライベートクラウド (VPC) ネットワーク内からマネージドサービスにプライベートにアクセスできるようにします。同様に、マネージドサービスのプロデューサーは、これらのサービスをそれぞれ分離された独自の VPC ネットワークでホストし、コンシューマーにプライベート接続を提供できます。 サービスプロデューサーは、Private Service Connect サービスを作成して、自社のアプリケーションをコンシューマーに公開します。サービスコンシューマーは、これらの Private Service Connect タイプのいずれかを通じて、それらの Private Service Connect サービスに直接アクセスします。
デフォルトでは、PSC 接続が承認され確立されていても、ClickHouseサービスはプライベートサービス接続経由では利用できません。以下の手順を完了し、インスタンスレベルで PSC ID を許可リストに明示的に追加する必要があります。
Private Service Connect Global Access を使用する際の重要な注意事項:
  1. Global Access を利用する Region は、同じ VPC に属している必要があります。
  2. Global Access は PSC レベルで明示的に有効にする必要があります (以下のスクリーンショットを参照してください) 。
  3. ファイアウォール設定で、他の Region からの PSC へのアクセスがブロックされていないことを確認してください。
  4. GCP のリージョン間データ転送料金が発生する場合があることに注意してください。
クロスリージョン接続はサポートされていません。プロデューサーとコンシューマーの Region は同一である必要があります。ただし、Private Service Connect (PSC) レベルで Global Access を有効にすると、VPC 内の他の Region から接続できます。 GCP PSC を有効にするには、次の手順を実行してください:
  1. Private Service Connect 用の GCP サービス アタッチメント を取得します。
  2. サービス エンドポイントを作成します。
  3. 「Endpoint ID」を ClickHouse Cloud サービスに追加します。
  4. 「Endpoint ID」を ClickHouseサービスの許可リストに追加します。

注意

ClickHouse は、GCP リージョン内で同じ公開済みの PSC エンドポイント を再利用できるよう、サービスをグループ化しようとします。ただし、このグループ化が保証されるわけではありません。特に、サービスを複数の ClickHouse organization にまたがって配置している場合はその傾向があります。 ClickHouse organization 内の他のサービスですでに PSC を設定している場合は、このグループ化により大半の手順を省略できることが多く、最後の手順である 「Endpoint ID」を ClickHouse service の許可リストに追加する に直接進めます。 Terraform の例は こちら を参照してください。

始める前に

以下に、ClickHouse Cloud サービス内で Private Service Connect を設定する方法を示すコード例を記載します。以下の例では、次を使用します。
  • GCP リージョン: us-central1
  • GCP プロジェクト (顧客の GCP プロジェクト) : my-gcp-project
  • 顧客の GCP プロジェクト内の GCP プライベート IP アドレス: 10.128.0.2
  • 顧客の GCP プロジェクト内の GCP VPC: default
ClickHouse Cloud サービスに関する情報を取得する必要があります。これは、ClickHouse Cloud コンソールまたは ClickHouse API のいずれかを使用して取得できます。ClickHouse API を使用する場合は、先に進む前に次の環境変数を設定してください。
新しい ClickHouse Cloud API キー を作成するか、既存のものを使用できます。 リージョン、プロバイダー、サービス名で絞り込み、ClickHouse の INSTANCE_ID を取得します。
  • Organization ID は、ClickHouseコンソール (Organization -> Organization Details) から取得できます。
  • 新しいキーを作成するか、既存のキーを使用できます。

Private Service Connect 用の GCP サービス アタッチメントと DNS 名を取得する

オプション 1: ClickHouse Cloud コンソール

ClickHouse Cloud コンソールで、Private Service Connect 経由で接続するサービスを開き、Settings メニューを開きます。Set up private endpoint ボタンをクリックします。Service name (endpointServiceId) と DNS name (privateDnsHostname) を控えておいてください。これらは次の手順で使用します。

オプション 2: API

この手順を実行するには、そのリージョンに少なくとも 1 つのインスタンスがデプロイされている必要があります。
Private Service Connect の GCP サービス アタッチメントと DNS 名を取得します。
endpointServiceId と privateDnsHostname を控えておいてください。これらは後続の手順で使用します。

サービスエンドポイントを作成する

このセクションでは、GCP PSC (Private Service Connect) 経由で ClickHouse を設定する際の、ClickHouse 固有の情報を説明します。GCP 固有の手順は、参照先の目安として掲載していますが、GCP のクラウドプロバイダー側の都合により、予告なく変更される場合があります。GCP の設定については、ご利用のユースケースに応じてご判断ください。なお、必要な GCP PSC エンドポイントや DNS レコードの設定については、ClickHouse は責任を負いません。GCP の設定作業に関する問題については、GCP サポートへ直接お問い合わせください。
このセクションでは、サービスエンドポイントを作成します。

プライベートサービス接続の追加

まず、プライベートサービス接続を作成します。

オプション 1: Google Cloud コンソールを使用する

Google Cloud コンソールで、Network services -> Private Service Connect に移動します。 Connect Endpoint ボタンをクリックして、Private Service Connect の作成ダイアログを開きます。
  • Target: Published service を使用します
  • Target service: Private Service Connect 用の GCP サービスアタッチメント を取得する 手順で取得した endpointServiceIdAPI または Service nameconsole を使用します。
  • Endpoint name: PSC の Endpoint name に名前を設定します。
  • Network/Subnetwork/IP address: 接続に使用するネットワークを選択します。Private Service Connect endpoint 用に IP アドレスを新規作成するか、既存のものを使用する必要があります。この例では、your-ip-address という名前のアドレスを事前に作成し、IP アドレス 10.128.0.2 を割り当てています。
  • endpoint をどの Region からでも利用できるようにするには、Enable global access チェックボックスを有効にします。
PSC Endpoint を作成するには、ADD ENDPOINT ボタンを使用します。 接続が承認されると、Status カラムは Pending から Accepted に変わります。 PSC Connection ID をコピーします。これは次の手順で Endpoint ID として使用します。

オプション 2: Terraform を使用する

Private Service Connect の GCP サービスアタッチメント と DNS 名を取得する 手順で取得した endpointServiceIdAPI または Service nameコンソール を使用します

エンドポイントのプライベート DNS 名を設定する

DNS の構成方法は複数あります。ご利用のユースケースに応じて設定してください。
Private Service Connect 用の GCP サービスアタッチメント と DNS 名を取得する 手順で取得した「DNS 名」が、GCP Private Service Connect エンドポイントの IP アドレスを指すように設定する必要があります。これにより、VPC/ネットワーク内のサービスやコンポーネントがその名前を正しく解決できるようになります。
PSC エンドポイントの IP アドレスに直接接続するだけでは不十分です。ClickHouse Cloud は DNS 名に基づいて接続をルーティングするため (TLS ハンドシェイク中の SNI 経由) 、プライベート DNS ホスト名 (privateDnsHostname) がエンドポイント IP アドレスに名前解決されるように DNS を構成する必要があります。これを行わないと、ClickHouse Cloud はその接続の宛先となるサービスを識別できず、接続は失敗します。

ClickHouse Cloud 組織に Endpoint ID を追加

オプション 1: ClickHouse Cloud コンソール

組織にエンドポイントを追加するには、「Endpoint ID」を ClickHouse service の許可リストに追加する 手順に進んでください。ClickHouse Cloud コンソールで PSC Connection ID を service の許可リストに追加すると、自動的に組織にも追加されます。 エンドポイントを削除するには、Organization details -> Private Endpoints を開き、削除ボタンをクリックします。

オプション 2: API

コマンドを実行する前に、以下の環境変数を設定します。 以下の ENDPOINT_ID は、プライベートサービス接続の追加 の手順にある Endpoint ID の値に置き換えてください。 エンドポイントを追加するには、次を実行します。
エンドポイントを削除するには、次を実行します:
組織のプライベート エンドポイントを追加または削除する:

ClickHouse service の許可リストに “Endpoint ID” を追加する

Private Service Connect 経由で利用可能にする各インスタンスについて、許可リストに Endpoint ID を追加する必要があります。

オプション 1: ClickHouse Cloud コンソール

ClickHouse Cloud コンソール で、Private Service Connect 経由で接続するサービスを開き、Settings に移動します。プライベートサービス接続の追加 の手順で取得した Endpoint ID を入力し、Create endpoint をクリックします。
既存の Private Service Connect 接続からのアクセスを許可する場合は、既存のエンドポイントのドロップダウン メニューを使用します。

オプション 2: API

コマンドを実行する前に、以下の環境変数を設定します。 以下の ENDPOINT_ID は、プライベートサービス接続の追加 の手順で取得した Endpoint ID の値に置き換えてください。 Private Service Connect 経由で利用可能にする各サービスに対して、これを実行します。 追加するには:
削除するには:

Private Service Connect を使用したインスタンスへのアクセス

Private Service Connect が有効な各サービスには、パブリック エンドポイントとプライベート エンドポイントがあります。Private Service Connect を使用して接続するには、Private Service Connect の GCP サービスアタッチメント を取得する 手順で取得した privateDnsHostname であるプライベート エンドポイントを使用する必要があります。

プライベートDNSホスト名の取得

オプション 1: ClickHouse Cloud コンソール

ClickHouse Cloud コンソール で Settings に移動します。Set up private endpoint ボタンをクリックします。開いたフライアウトで、DNS Name をコピーします。

オプション 2: API

この例では、xxxxxxx.yy-xxxxN.p.gcp.clickhouse.cloud ホスト名への接続は Private Service Connect 経由になります。一方、xxxxxxx.yy-xxxxN.gcp.clickhouse.cloud への接続はインターネット経由になります。

トラブルシューティング

DNS 設定をテストする

DNS_NAME - Private Service Connect 用の GCP サービスアタッチメント と DNS 名を取得する の手順で取得した privateDnsHostname を使用します

相手側によって接続がリセットされる

接続を確認する

PSC リンクを使用した接続に問題がある場合は、openssl を使って接続性を確認してください。Private Service Connect エンドポイントの status が Accepted になっていることを確認してください。 OpenSSL で接続できるはずです (出力に CONNECTED と表示されます) 。errno=104 は想定内です。 DNS_NAME - Private Service Connect 用の GCP サービスアタッチメント と DNS 名を取得する 手順の privateDnsHostname を使用します

エンドポイントフィルタを確認する

REST API

リモートデータベースへの接続

ClickHouse Cloud で MySQL または PostgreSQL のテーブル関数を使用して、GCP でホストされているデータベースに接続しようとしているとします。GCP PSC は、この接続を安全に実現するためには使用できません。PSC は一方向の接続です。内部ネットワークまたは GCP VPC から ClickHouse Cloud へは安全に接続できますが、ClickHouse Cloud から内部ネットワークへ接続することはできません。 GCP Private Service Connect documentation には、次のように記載されています。
サービス指向の設計: プロデューサー サービスは、コンシューマー VPC ネットワークに単一の IP アドレスを公開するロードバランサーを介して公開されます。プロデューサー サービスにアクセスするコンシューマー トラフィックは単方向であり、ピア接続された VPC ネットワーク全体ではなく、サービスの IP アドレスにのみアクセスできます。
これを実現するには、ClickHouse Cloud から内部 / プライベートデータベースサービスへの接続を許可するように、GCP VPC のファイアウォール ルールを設定します。ClickHouse Cloud リージョンのデフォルトの egress IP アドレス と、利用可能な静的 IP アドレス を確認してください。

詳細情報

より詳しい情報については、cloud.google.com/vpc/docs/configure-private-service-connect-services をご覧ください。
最終更新日 2026年6月10日