メインコンテンツへスキップ
メインコンテンツへスキップ

ClickHouse Cloud を Azure Blob Storage に接続する

本ガイドでは、データのインジェスト、外部テーブル、その他の連携シナリオのために、ClickHouse Cloud を Azure Blob Storage に安全に接続する方法を説明します。

概要

ClickHouse Cloud は、複数の認証方式を使用して Azure Blob Storage に接続できます。 本ガイドでは、適切な方式の選択と、安全な接続設定の手順を説明します。

サポートされるユースケース:

重要なネットワーク制限

ClickHouse Cloud サービスと Azure Blob Storage コンテナが同一の Azure リージョンにデプロイされている場合、IP アドレスの許可リスト登録は機能しません。

これは、Azure が同一リージョン内のトラフィックを、パブリックインターネットや NAT ゲートウェイを経由させず、内部ネットワーク (VNet + Service Endpoints) 経由でルーティングするためです。 その結果、パブリック IP アドレスに基づく Azure Storage Account のファイアウォールルールは適用されません。

IP 許可リスト登録が機能するケース:

  • ClickHouse Cloud サービスがストレージアカウントとは異なる Azure リージョンにある場合
  • ClickHouse Cloud サービスが AWS/GCP 上にあり、Azure Storage に接続する場合

IP 許可リスト登録が機能しないケース:

  • ClickHouse Cloud サービスとストレージが同一の Azure リージョンにある場合。IP 許可リスト登録の代わりに接続文字列経由で Shared Access Signatures (SAS) を使用するか、ABS と ClickHouse を異なるリージョンにデプロイしてください。

ネットワーク設定(リージョン間のみ)

Cross-Region Only

このセクションは、ClickHouse Cloud サービスと Azure Blob Storage コンテナーが異なる Azure リージョンにある場合、または ClickHouse Cloud が AWS/GCP 上にある場合にのみ適用されます。 同一リージョンでのデプロイの場合は、代わりに SAS トークンを使用してください。

ClickHouse Cloud の egress IP を確認する

IP ベースのファイアウォールルールを設定するには、ClickHouse Cloud のリージョンに対応する egress IP アドレスを許可リストに登録する必要があります。

以下のコマンドを実行して、リージョンごとの egress / ingress の IP アドレス一覧を取得します。 他のリージョンを除外するために、下記の eastus を利用しているリージョン名に置き換えてください:

# For Azure regions
curl https://api.clickhouse.cloud/static-ips.json | jq '.azure[] | select(.region == "westus")'

次のような出力が表示されます:

{
  "egress_ips": [
    "20.14.94.21",
    "20.150.217.205",
    "20.38.32.164"
  ],
  "ingress_ips": [
    "4.227.34.126"
  ],
  "region": "westus3"
}
ヒント

ClickHouse Cloud でサポートされているリージョン一覧については Azure regions を参照し、 使用すべき名前については Azure regions list の "Programmatic name" カラムを参照してください。

詳細は "Cloud IP addresses" を参照してください。

Azure Storage のファイアウォールを設定する

Azure Portal で対象の Storage Account に移動します。

  1. NetworkingFirewalls and virtual networks に移動します
  2. Enabled from selected virtual networks and IP addresses を選択します
  3. 前の手順で取得した各 ClickHouse Cloud の egress IP アドレスを Address range フィールドに追加します
注意

ClickHouse Cloud のプライベート IP(10.x.x.x アドレス)は追加しないでください

  1. Save をクリックします

詳細については、Configure Azure Storage firewalls docs を参照してください。

ClickPipes の設定

Azure Blob Storage と ClickPipes を併用する場合、ClickPipes の UI で認証を設定する必要があります。 詳細については「最初の Azure ClickPipe の作成」を参照してください。

注記

ClickPipes は、アウトバウンド接続に専用の固定 IP アドレスを使用します。 IP ベースのファイアウォールルールを使用している場合、これらの IP を許可リストに登録する必要があります。

固定 IP の一覧」を参照してください。

ヒント

このドキュメントの冒頭で説明した「同一リージョン内での IP 許可リストに関する制限」は、ClickPipes にも適用されます。 ClickPipes サービスと Azure Blob Storage が同じリージョンにある場合は、IP 許可リストではなく SAS トークンによる認証を使用してください。