SecureConnect を使用したファイアウォール内部でのデータ共有
プレビュー
この機能は パブリック プレビュー段階です。
このページでは、プロバイダーがOpenSharing SecureConnectを設定し、ファイアウォールまたはプライベートエンドポイントの背後にあるクラウドストレージから、各受信者のネットワークを許可リストに追加することなくデータを共有する方法を説明します。
SecureConnectの仕組み
Databricks アカウントで SecureConnect を有効にする前に、プロバイダーは一度限りの構成を行います。この構成により、Databricksの受信者は、ファイアウォールまたはプライベートエンドポイントの背後にあるプロバイダーのストレージにアクセスできます。Databricks は受信者のリクエストをマネージドプロキシ経由でルーティングするため、プロバイダーは新しい受信者を追加する際にストレージファイアウォールを更新する必要がありません。
受信者は既存のOpenSharing設定を使用して共有データにアクセスします。
- Databricks の受信者は、プロバイダーごとのファイアウォール変更なしで、サーバレス コンピュート アクセスの共有にアクセスできます。
- Databricks のクラシック コンピュートとオープン受信者は、プロバイダーのリージョンの Databricks コントロール プレーン IP の 1 つのセットを許可リストに追加します。
SecureConnectがない場合、プロバイダーは、新規受信者が追加されるたびに、受信者とクラウドプラットフォーム管理者と連携して、各受信者のネットワーク識別子を自身のストレージファイアウォールに追加する必要があります。
要件
- アカウントコンソール 内の OpenSharing SecureConnect プレビューを有効にする必要があります。「Databricks プレビューの管理」を参照してください。
SecureConnectをプロバイダーとして設定する
SecureConnectをセットアップするには、ストレージファイアウォールでアクセスを許可するよう設定し、メタストアと受信者でSecureConnectを有効にする必要があります。
ステップ 1:ストレージファイアウォールを構成する
ネットワークコストを最小限に抑えるには、共有アセットのリージョンをプロバイダーメタストアリージョンと同じにします。
以下の手順では、共有アセットとプロバイダーメタストアが同じリージョンにあることを前提としています。
SecureConnect はサーバレスデータプレーンを介してストレージにアクセスします。S3バケットポリシーをVPCE OrgPathを含めて構成します。VPCE OrgPath を使用した S3 バケットへのアクセスを参照してください。
(省略可) ネットワーク接続構成 (NCC) を使用してプライベート接続を構成します
共有ストレージがプライベートエンドポイントの背後にあり、パブリックネットワークから到達できない場合、アカウント管理者は、共有データをホストするメタストアにネットワーク接続構成(NCC)を構成してアタッチする必要があります。NCC の詳細については、ネットワーク接続構成(NCC)とは?を参照してください。
ワークスペースにアタッチされているNCCはメタストアにアタッチできません。OpenSharing 用にメタストアに適用された NCC は、メタストアに接続されているすべての共有に適用されます。
S3 への AWS PrivateLink は、Databricks がすべての米国のリージョンでデフォルトで使用している FIPS エンドポイントと互換性がありません。プロバイダーのメタストアが米国リージョンにある場合は、Databricks アカウント チームにお問い合わせください。
詳細については、「AWS ドキュメント」を参照してください。
S3バケット用にNCCとプライベートエンドポイントルールを作成しますが、NCCをワークスペースにアタッチしないでください。NCCおよびPrivateLinkのセットアップについては、AWSマネージド リソースへのプライベート接続を構成するを参照してください。
OpenSharing metastoreにNCCをアタッチします。
- Databricksアカウント管理者として、アカウントコンソールにアクセスします。
- サイドバーで [
カタログ ]をクリックします。
- OpenSharingメタストアの名前をクリックして、その詳細を開きます。
- OpenSharing ネットワーク接続構成 (NCC) で、 編集 をクリックします。
- オープン共有用に作成したNCCを検索し、選択してください。
- 保存 をクリックします。
メタストアに NCC をアタッチできない場合は、NCC を使用して OpenSharing SecureConnect のプライベート接続を有効にするため、Databricks アカウントチームにお問い合わせください。
ステップ2:メタストアにSecureConnectを有効化
アカウント管理者またはメタストア管理者は、新しい受信者が自動的にSecureConnectを使用するようにメタストアを設定できます。デフォルトでは、新規および既存の受信者はSecureConnectに登録されていません。既存の受信者は個別に設定する必要があります。ステップ3: 個々の受信者のSecureConnectを有効化を参照してください。
アカウント管理者またはメタストア管理者がSecureConnectを設定できます。
- Account admin
- Metastore admin
- アカウントコンソールにログインします。
- サイドバーで [
カタログ ]をクリックします。
- メタストアの名前をクリックして、その詳細を開きます。
- SecureConnect設定の切り替え:
- オン :メタストアの新規受信者は、作成時にSecureConnectがデフォルトで有効になります。既存の受信者は影響を受けません。
- オフ (デフォルト):新規受信者はSecureConnectに登録されません。受信者ごとに個別に有効化します。
-
Databricks ワークスペースで、
[カタログ]をクリックして カタログエクスプローラー を開きます。
-
カタログ ウィンドウの上部にある
歯車アイコンをクリックし、 OpenSharing を選択します。
または、右上隅の Share > OpenSharing をクリックします。
-
右上隅の 設定 をクリックします。
-
「新規受信者のSecureConnectを有効化」の設定をオンにしてください。
-
保存 をクリックします。
ステップ3:個々の受信者に対してSecureConnectを有効にする
受信者オーナーおよびUSE_RECIPIENT権限を持つユーザーは、各受信者に対してSecureConnectのオン/オフを切り替えます。受信者の作成時にメタストアがすべての新規受信者に対して有効にするよう設定されていた場合を除き、SecureConnectはデフォルトでは受信者に対して無効になっています。
受信者でSecureConnectを設定するには:
-
Databricks ワークスペースで、
カタログ をクリックします。
-
カタログ ウィンドウの上部にある
歯車アイコンをクリックし、 OpenSharing を選択します。
または、右上隅の Share > OpenSharing をクリックします。
-
自分が共有 タブで、 受信者 タブをクリックします。
-
各受信者ごとにSecureConnectを有効にしてください。
(オプション)ステップ 4: IP アクセス リストでオープン受信者アクセスを制限する
オープンな受信者に対しては、IPアクセスリストを使用することで、SecureConnectに到達できるクライアントIPアドレスを制限できます。IP ACL はオープンな受信者にのみ適用されます。
SecureConnect では、IP ACL は OpenSharing エンドポイントアクセスとストレージアクセスの両方に適用されます。SecureConnectを使用しない場合、IP ACLはOpenSharingエンドポイントへのアクセスのみを制限します;ストレージURLはどのクライアントIPからも引き続きアクセス可能です。
設定手順については、IPアクセスリストを使用してOpenSharing受信者アクセスを制限する (Databricks-to-Open sharing)を参照してください。
SecureConnect が有効なオープン受信者の IP ACL の変更が有効になるまでに、最大10分かかる場合があります。
サポートされている共有シナリオ
サポートされていない機能は、受信者のコンピュートからストレージへの直接アクセスにフォールバックします。プロバイダーは、ストレージファイアウォール内で受信者 IP に手動でアクセス権を付与する必要があります。「OpenSharing Databricks-to-Databricks プロトコルとは」を参照してください。または OpenSharing Databricks 間共有プロトコルとは何ですか?。
SecureConnect は AWS、Azure、GCP に共有に対応しています。
mTLS to SecureConnect は、サーバレス受信者クラスターにのみ対応しています。
機能のサポート
機能 | D2O(トークン) | D2O(OIDC)* | D2O(Iceberg) | D2D(サーバレス) | D2D(クラシック) |
|---|---|---|---|---|---|
履歴があり、パーティションがないテーブル | ✓ | ✓ | 閉じる | ✓ | ✓ |
履歴のない、またはパーティションのあるテーブル | ✓ | ✓ | 閉じる | ✓ | ✓ |
ビュー | ✓ | ✓ | 閉じる | 閉じる | ✓ |
フォーリンテーブル | ✓ | ✓ | 閉じる | ✓ | ✓ |
マテリアライズドビュー | ✓ | ✓ | 閉じる | 閉じる | ✓ |
ストリーミングテーブル | ✓ | ✓ | 閉じる | 閉じる | ✓ |
ボリューム | 閉じる | 閉じる | 閉じる | 閉じる | 閉じる |
ノートブック | 閉じる | 閉じる | 閉じる | 閉じる | 閉じる |
AIモデル | 閉じる | 閉じる | 閉じる | 閉じる | 閉じる |
受信者もDatabricksを使用している場合、OIDC共有は現在機能しません。
クラウドトークンの最適化は SecureConnect ではご利用いただけません。
制限事項:
-
アセットはCloudflare R2ストレージにバックアップできません。
-
SecureConnect は AWS GovCloud では使用できません。
-
S3 への AWS PrivateLink は、Databricks がすべての米国のリージョンでデフォルトで使用している FIPS エンドポイントと互換性がありません。SecureConnect と PrivateLink を米国リージョンでご利用の場合は、Databricks アカウントチームにお問い合わせください。
mTLS サポートや Databricks から Open への共有制限など、受信者側の制限事項については、制限事項を参照してください。
課金
プロバイダーはSecureConnect経由のデータ転送に対して課金されます。「データ転送と接続性の価格」を参照してください。
受信者ごとの使用量は、課金システムテーブルのrecipient_idフィールドを通じて計上されるため、プロバイダーは受信者ごとに課金対象のSecureConnect使用量を内訳できます。課金利用 システムテーブル リファレンスを参照してください。
次のクエリは、過去7日間の受信者ごとのSecureConnectデータ・エグレスのコスト一覧を返します:
SELECT
usage_records.usage_metadata.recipient_id,
SUM(usage_records.usage_quantity * list_prices.pricing.default) AS list_cost
FROM system.billing.usage usage_records
INNER JOIN system.billing.list_prices ON
usage_records.cloud = list_prices.cloud AND
usage_records.sku_name = list_prices.sku_name AND
usage_records.usage_start_time >= list_prices.price_start_time AND
(usage_records.usage_end_time <= list_prices.price_end_time OR list_prices.price_end_time IS NULL)
WHERE
usage_records.billing_origin_product = 'NETWORKING'
AND usage_records.usage_metadata.recipient_id IS NOT NULL
AND usage_records.usage_date >= CURRENT_DATE() - INTERVAL 7 DAYS
GROUP BY
usage_records.usage_metadata.recipient_id
ORDER BY
list_cost DESC