前提条件
ClickHouse BYOC でプライベートロードバランサーを有効にする
VPC ピアリングを設定する
1
ピアリング接続を作成する
- ClickHouse BYOC アカウントの VPC Dashboard に移動します。
- Peering Connections を選択します。
- Create Peering Connection をクリックします。
- VPC Requester に ClickHouse VPC ID を設定します。
- VPC Accepter に対象の VPC ID を設定します (必要に応じて別のアカウントを選択します) 。
- Create Peering Connection をクリックします。
2
ピアリング接続リクエストを承認する
ピアリング先のアカウントで、(VPC -> Peering connections -> Actions -> Accept request) に移動すると、この VPC ピアリングリクエストを承認できます。3
ClickHouse VPC のルートテーブルに宛先を追加する
ClickHouse BYOC アカウントで、- VPC Dashboard で Route Tables を選択します。
- ClickHouse VPC ID を検索します。プライベートサブネットに関連付けられている各ルートテーブルを編集します。
- Routes タブの Edit ボタンをクリックします。
- Add another route をクリックします。
- Destination に対象 VPC の CIDR 範囲を入力します。
- Target で “Peering Connection” とピアリング接続 ID を選択します。
4
対象 VPC のルートテーブルに宛先を追加する
ピアリング先の AWS アカウントで、- VPC Dashboard で Route Tables を選択します。
- 対象の VPC ID を検索します。
- Routes タブの Edit ボタンをクリックします。
- Add another route をクリックします。
- Destination に ClickHouse VPC の CIDR 範囲を入力します。
- Target で “Peering Connection” とピアリング接続 ID を選択します。
5
ピアリングされた VPC からのアクセスを許可するようセキュリティグループを編集する
ClickHouse BYOC アカウントでは、ピアリングされた VPC からのトラフィックを許可するために、セキュリティグループの設定を更新する必要があります。ピアリングされた VPC の CIDR 範囲を含むインバウンドルールの追加を依頼するには、ClickHouse Support にお問い合わせください。これで、ピアリングされた VPC から ClickHouseサービスにアクセスできるようになります。
-private 接尾辞を付けたものです。例:
- Public endpoint:
h5ju65kv87.mhp0y4dmph.us-west-2.aws.byoc.clickhouse.cloud - Private endpoint:
h5ju65kv87-private.mhp0y4dmph.us-west-2.aws.byoc.clickhouse.cloud
PrivateLink を設定する
1
PrivateLink Setup をリクエストする
BYOCデプロイメントの PrivateLink Setup をリクエストするには、ClickHouse Support に連絡してください。この段階では特定の情報は必要ありません。PrivateLink 接続を設定したいことを伝えるだけで構いません。ClickHouse Support が、プライベートロードバランサー や PrivateLink サービスエンドポイント を含む、必要なインフラストラクチャ コンポーネントを有効化します。2
VPC にエンドポイントを作成する
ClickHouse Support 側で PrivateLink が有効化されたら、ClickHouse PrivateLink サービスに接続するために、クライアントアプリケーションの VPC に VPC エンドポイントを作成する必要があります。- Endpoint Service Name を取得する:
- ClickHouse Support から Endpoint Service name が提供されます
- AWS VPC Console の「Endpoint Services」でも確認できます (service name で絞り込むか、ClickHouse services を探してください)
- VPC エンドポイントを作成する:
- AWS VPC Console → Endpoints → Create Endpoint に移動します
- 「Find service by name」を選択し、ClickHouse Support から提供された Endpoint Service name を入力します
- VPC を選択し、サブネットを選択します (アベイラビリティゾーンごとに 1 つを推奨)
- 重要: エンドポイントで「Private DNS names」を有効にしてください。これは DNS 名前解決を正しく機能させるために必要です
- エンドポイント用のセキュリティグループを選択または作成します
- 「Create Endpoint」をクリックします
- エンドポイント接続を承認する:
- エンドポイントを作成した後、接続リクエストを承認する必要があります
- VPC Console で「Endpoint Connections」に移動します
- ClickHouse からの接続リクエストを見つけて、「Accept」をクリックして承認します
3
Endpoint ID をサービスの許可リストに追加する
VPC エンドポイントが作成され、接続が承認されたら、PrivateLink 経由でアクセスしたい各 ClickHouseサービスの許可リストに Endpoint ID を追加する必要があります。-
Endpoint ID を取得する:
- AWS VPC Console で Endpoints に移動します
- 新しく作成したエンドポイントを選択します
- Endpoint ID をコピーします (
vpce-xxxxxxxxxxxxxxxxxのような形式です)
-
ClickHouse Support に連絡する:
- Endpoint ID を ClickHouse Support に提供します
- このエンドポイントからのアクセスを許可する ClickHouseサービスを指定します
- ClickHouse Support がサービスの許可リストに Endpoint ID を追加します
4
PrivateLink 経由で ClickHouse に接続する
Endpoint ID が許可リストに追加されると、PrivateLink エンドポイントを使用して ClickHouseサービスに接続できます。PrivateLink エンドポイントの形式はパブリックエンドポイントと似ていますが、vpce サブドメインが含まれます。たとえば、次のようになります。- Public endpoint:
h5ju65kv87.mhp0y4dmph.us-west-2.aws.clickhouse-byoc.com - PrivateLink endpoint:
h5ju65kv87.vpce.mhp0y4dmph.us-west-2.aws.clickhouse-byoc.com
vpce サブドメイン形式を使用すると、自動的にトラフィックが PrivateLink エンドポイント経由にルーティングされます。PrivateLink アクセス制御
- Istio Authorization Policy: ClickHouse Cloud のサービスレベルの認可ポリシー
- VPC Endpoint セキュリティグループ: VPC エンドポイントに関連付けられたセキュリティグループが、VPC 内のどのリソースからそのエンドポイントを利用できるかを制御します
プライベートロードバランサーの “Enforce inbound rules on PrivateLink traffic” 機能は無効になっているため、アクセスは Istio の認可ポリシーと VPC エンドポイントのセキュリティグループによってのみ制御されます。
PrivateLink DNS
*.vpce.{subdomain} 形式を使用) は、AWS PrivateLink に組み込まれている「Private DNS names」機能を利用します。Route53 レコードは不要で、以下の条件を満たしていれば DNS 名前解決は自動的に行われます。
- VPC エンドポイントで “Private DNS names” が有効になっている
- VPC で “DNS Hostnames” が有効になっている
vpce サブドメインを使用する接続は、追加の DNS 設定を行わなくても、自動的に PrivateLink エンドポイント経由でルーティングされます。