メインコンテンツまでスキップ

インバウンド Private Service Connect を構成する

このページでは、ユーザーとそのDatabricksワークスペース間のインバウンドプライベート接続の構成ステップについて説明します。インバウンドプライベート接続は、パブリックインターネットではなくプライベートEndpointを介して、ユーザーのトラフィックをDatabricks WebアプリケーションおよびREST APIsにルーティングします。

ワークスペースのインバウンドプライベート サービス接続を有効にする

インバウンド Private Service Connect を使用して、Google クラウド VPC またはオンプレミス ネットワークからDatabricksサービスへの安全なプライベート接続を確立します。これにより、パブリック インターネットではなくVPCインターフェイス エンドポイント経由でトラフィックがルーティングされます。

インバウンド、クラシックコンピュートプレーン、アウトバウンド(サーバーレス)接続間のトレードオフを含む、Google Cloud上のPrivate Service Connect接続パターンの概要については、「Private Service Connectの概念」を参照してください。

インバウンド Private Service Connect を使用すると、次のことが可能になります。

  • プライベートアクセスを構成します:インバウンドPrivate Service Connectは、Databricks Webアプリケーション、REST API、およびDatabricks Connect APIへの接続をサポートしています。
  • プライベートアクセスを有効にする:新しいワークスペースの作成時にインバウンド Private Service Connect を構成するか、既存のワークスペースで有効にします。
  • 強制的なプライベート接続を適用する:ワークスペースのプライベート接続を適用するには、ユーザーからDatabricksへのプライベート接続を構成する必要があります。

REST API を使用するには、 Private Access Settings API リファレンスを参照してください。

要件と制限事項

インバウンドプライベート サービス 接続を有効にするには、次の要件を満たす必要があります。

  • Databricks アカウントは Enterprise プランである必要があります。
  • クォータ: Endpoint の制限は VPC ごとではなく、ホストプロジェクトごとです。リージョンごと、ホストプロジェクトごとに、各タイプの Private Service Connect Endpoint を最大 10 個まで構成できます。インバウンド Private Service Connect はワークスペース Endpoint を使用します。クラシックコンピュートプレーンの Private Service Connect は SCC リレー Endpoint を追加し、これには 10 個という独自の上限があります。Private Service Connect Endpoint はリージョン固有のリソースであるため、同じ VPC およびリージョン内の複数の Databricks ワークスペースでこれらの Endpoint が共有されます。このクォータがセットアップの制限となる場合は、アカウントチームにお問い合わせください。
  • リージョン間の接続なし:Private Service Connect ワークスペースコンポーネントは、以下を含め、すべて同じリージョンにある必要があります:
    • トランジット VPC ネットワークとサブネット。
    • ネットワークとサブネット VPC プレーン。
    • Databricks ワークスペース。
    • Private サービス Connect エンドポイント。
    • Private サービス Connect エンドポイント サブネット。

ネットワークトポロジの複数のオプション

プライベート Databricks ワークスペースをデプロイする場合は、次のいずれかのネットワーク構成オプションを選択する必要があります。

  • Databricks ユーザー (クライアント) と Databricks クラシック コンピュート プレーンを同じネットワーク上に配置する : このオプションでは、トランジット VPC とコンピュート プレーン VPC は、同じ基盤となる VPC ネットワークを参照します。このトポロジを選択した場合、そのVPCからのDatabricksワークスペースへのすべてのアクセスは、そのVPCのインバウンドのプライベートサービス接続を経由する必要があります。要件と制限を参照してください。
  • Databricks ユーザー(クライアント)と Databricks クラシックコンピュートプレーンを別々のネットワークに配置する : このオプションでは、ユーザーまたはアプリケーションクライアントは、異なるネットワークパスを使用して異なる Databricks ワークスペースにアクセスできます。オプションで、トランジット VPC 上のユーザーが Private Service Connect 接続を介してプライベートワークスペースにアクセスできるようにし、パブリックインターネット上のユーザーがワークスペースにアクセスできるようにすることもできます。

インバウンド Private Service Connect を使用するワークスペースと、同じトランジットVPC内にないワークスペースを混在させることはできません。 1 つのトランジットVPC複数のワークスペースで共有できますが、トランジットVPC内のすべてのワークスペースは同じタイプである必要があり、すべてがインバウンド Private Service Connect を使用するか、まったく使用しないかのどちらかです。 この要件は、Google クラウドでの DNS 解決の詳細によるものです。

地域別サービス添付資料参照

インバウンド Private Service Connect を有効にするには、地域のワークスペース エンドポイントのサービス アタッチメント URI が必要です。 URI はサフィックスplproxy-psc-endpoint-all-portsで終わります。このエンドポイントには 2 つの役割があります。これは、トランジットVPCワークスペース Web アプリケーションおよびREST APIsに接続するためにインバウンド Private Service Connect によって使用され、また、 REST APIsのコントロール プレーンに接続するためにクラシック コンピュート プレーン Private Service Connect によっても使用されます。

リージョンのワークスペース エンドポイントとサービス添付ファイル URI を見つけるには、「Databricks サービスと資産の IP アドレスとドメイン」を参照してください。

構成ステップ

サブネットの作成

トランジット VPC ネットワーク内に、インバウンド Private Service Connect Endpoint 専用の サブネット を作成します。これは、Databricks クライアントの接続元となるネットワークです。まだ作成していない場合は、最初にトランジット VPC ネットワークを作成してください。以下の手順では Google Cloud コンソールを使用することを前提としていますが、gcloud CLI を使用して同様のタスクを実行することもできます。

サブネットを作成するには:

  1. Google Cloud Cloud コンソールで、 VPC リストページに移動します。

  2. [ サブネットの追加 ] をクリックします。

  3. 名前、説明、および地域を設定します。

  4. Purpose フィールドが表示されている場合 (表示されない場合があります)、 None を選択します。

  5. 10.0.0.0/28 のような、サブネットのプライベートIP範囲を設定します。Private Service Connect Endpointをホストするために十分なIPアドレスを割り当てる必要があります。

重要

ユーザーがこのサブネット上のVMまたはコンピュートリソースにアクセスできることを確認してください。

  1. サブネットが VPC の Google Cloud コンソールの VPC ビューに追加されたことを確認します。

    すべてのサブネットを一覧表示します。

インバウンドプライベートアクセスを構成する

作成したトランジットVPCサブネットから、ワークスペース(plproxy-psc-endpoint-all-ports)のサービスアタッチメントへのVPC Endpointを作成します。

お住まいの地域の完全なサービスアタッチメント名を取得するには、「Databricks サービスと資産の IP アドレスとドメイン」を参照してください。

Register your VPC Endpoint

Google Cloud エンドポイントを登録する Databricks アカウント コンソールを使用します。 VPC エンドポイント設定 API を使用することもできます。

  1. Databricks アカウント コンソールに移動します。
  2. [Security] tabをクリックし、 [VPC Endpoints] をクリックします。
  3. [ エンドポイント VPC 登録する ] をクリックします。
  4. Private サービス Connect エンドポイントごとに、新しい VPC エンドポイントを登録するための必須フィールドに入力します。
    • VPC エンドポイント名 : VPC エンドポイントを識別するための人間が判読できる名前。Databricks では、Private サービス Connect エンドポイント ID と同じ名前を使用することをお勧めしますが、これらが一致している必要はありません。
    • リージョン : この Private サービス Connect エンドポイントが定義されている Google Cloud リージョン。
    • Google Cloud VPC ネットワーク プロジェクト ID : このエンドポイントが定義されている Google Cloud プロジェクト ID。これは、ユーザー接続の起点となる VPC のプロジェクト ID で、トランジット VPC と呼ばれることもあります。
    • Google Cloud Private Service Connect(PSC)Endpoint ID : Google Cloud で作成した PSC エンドポイントの ID。

次の表に、エンドポイントに必要な情報を示します。

Endpoint type

Field

Example

Inbound transit VPC endpoint (plproxy-psc-endpoint-all-ports)

VPC endpoint name (Databricks recommends matching the Google Cloud endpoint ID)

psc-demo-user-cp

Google Cloud VPC network project ID

databricks-dev-entd-demo

Google Cloud Region

us-east4

Endpoint type

Field

Example

Inbound transit VPC endpoint (plproxy-psc-endpoint-all-ports)

VPC endpoint name (Databricks recommends matching the Google Cloud endpoint ID)

psc-demo-user-cp

Google Cloud VPC network project ID

databricks-dev-entd-demo

Google Cloud Region

us-east4

完了したら、アカウントコンソールの VPC エンドポイントリストを使用して、エンドポイントのリストを確認し、情報を確認します。

Databricks プライベートアクセス設定オブジェクトを作成する

ワークスペースのいくつかのプライベート サービス接続設定を定義するプライベート アクセス設定オブジェクトを作成します。このオブジェクトはワークスペースにアタッチされます。1 つのプライベート アクセス設定オブジェクトを複数のワークスペースにアタッチできます。

  1. アカウント管理者として、アカウントコンソールに移動します。

  2. サイドバーで、 [セキュリティ] をクリックします。

  3. 非公開アクセス設定 をクリックします。

  4. [ プライベートアクセス設定を追加 ]をクリックします。

  5. 新しいプライベートアクセス設定オブジェクトの名前を入力します。

  6. ワークスペースと同じリージョンを選択します。

  7. [パブリック アクセスが有効] オプションを設定します。これは、プライベートアクセス設定オブジェクトの作成後に変更することはできません。

    • パブリック アクセスが有効になっている場合 、ユーザーは、このプライベート アクセス設定オブジェクトを使用するワークスペースへの (パブリック インターネットからの) パブリック アクセスを許可またはブロックするように IP アクセス リスト を構成できます。
    • パブリック アクセスが無効になっている場合 、パブリック トラフィックは、このプライベート アクセス設定オブジェクトを使用するワークスペースにアクセスできません。IP アクセス リストは、パブリック アクセスに影響を与えません。

    いずれの場合も、IP アクセス リストはパブリック サービス コネクトからのプライベートトラフィックをブロックできません。これは、アクセス リストがパブリック インターネットからのアクセスのみを制御するためです。

  8. プライベート・アクセス・レベル 」を選択して、許可されたプライベート・サービス接続へのアクセスを制限します。

    • アカウント: VPCDatabricksアカウントに登録されているすべての エンドポイントが、このワークスペースにアクセスできます。これがデフォルト値です。
    • エンドポイント : 指定した VPC エンドポイントのみがワークスペースにアクセスできます。この値を選択した場合は、登録済みの VPC エンドポイントから選択します。
  9. [ プライベートアクセス設定を追加 ]をクリックします。

ネットワーク構成を作成する

ワークスペースの顧客管理VPCに関する情報を含むDatabricksネットワーク構成を作成します。 このオブジェクトはワークスペースに添付されています。ネットワーク構成 API を使用することもできます。

  1. Databricks アカウント コンソールに移動します。
  2. Click the Security tab, then Classic network configurations .
  3. [ネットワーク設定の追加 ] をクリックします。

次の表は、ネットワーク設定に使用する必要がある情報を示しています。

Field

Example value

Network configuration name

psc-demo-network

Network GCP project ID

databricks-dev-xpn-host

VPC Name

psc-demo-dp-vpc

Subnet Name

subnet-psc-demo-dp-vpc

Region of the subnet

us-east4

Field

Example value

Network configuration name

psc-demo-network

Network GCP project ID

databricks-dev-xpn-host

VPC Name

psc-demo-dp-vpc

Subnet Name

subnet-psc-demo-dp-vpc

Region of the subnet

us-east4

注記

The secure cluster connectivity relay and REST API VPC endpoint fields apply to classic compute plane PSC, not to inbound connectivity. To configure classic compute plane connectivity, see Enable Private Service Connect for your workspace.

ワークスペースを作成

アカウントコンソールを使用して作成したネットワーク設定を使用するワークスペースを作成します。ワークスペースAPI を使用することもできます。

  1. Databricks アカウント コンソールに移動します。

  2. ワークスペース」 タブをクリックします。

  3. [ ワークスペースの作成 ] をクリックします。

  4. 次の標準ワークスペース フィールドを設定します。

    • ワークスペース名。
    • ワークスペース リージョン。
    • Google クラウド プロジェクト ID (ワークスペースのVPCリソースのプロジェクト。VPC のプロジェクト ID とは異なる場合があります)。
  5. Private サービス Connect 固有のフィールドを設定します。

    1. [詳細設定 ] をクリックします。
    2. [ ネットワーク設定 ] フィールドで、前の手順で作成したネットワーク設定を選択します。
    3. [ プライベート接続 ] フィールドで、前のステップで作成したプライベートアクセス設定オブジェクトを選択します。1 つのプライベート アクセス設定オブジェクトを複数のワークスペースにアタッチできます。
  6. 保存 をクリックします。

ワークスペース構成を検証する

ワークスペースを作成したら、ワークスペース ページに戻り、新しく作成したワークスペースを見つけます。通常、ワークスペースが PROVISIONING 状態から RUNNING 状態に移行するには、30 秒から 3 分かかります。ステータスが RUNNINGに変わったら、ワークスペースは正常に構成されています。

Databricks アカウント コンソールを使用して構成を検証します。

  1. Security tabをクリックし、 クラシックネットワーク構成 をクリックします。VPC のネットワーク構成を見つけ、すべてのフィールドが正しいことを確認してください。
  2. [ ワークスペース ] をクリックし、ワークスペースを検索します。ワークスペースが実行中であることを確認します。
ヒント

If you want to review the set of workspaces using the API, make a GET request to the https://accounts.gcp.databricks.com/api/2.0/accounts/<account-id>/workspaces endpoint. See Get all workspaces.

DNSを構成する

ワークスペース URL、データ プレーン URL、およびブラウザー認証 URL をインバウンド Private サービス Connect Endpoint のプライベート IP に解決する クラウド DNS プライベート ゾーンをトランジット VPC に構成します。

Cloud DNS ゾーンのセットアップ、A レコード、nslookup による検証、およびクラシック コンピュート プレーンの Private Service Connect 全体で一貫した DNS 解決を行うためのベストプラクティスを含む詳細な手順については、「Google Cloud インバウンド Private Service Connect の DNS を構成する」を参照してください。

重要

A transit VPC can contain only workspaces that use inbound Private Service Connect or only workspaces that do not. Google Cloud DNS resolution does not support mixing both types in a single transit VPC.

IP アクセス リストを構成する(オプション)

ちなみに、Private Service Connect ワークスペースへの受信接続ではパブリック アクセスが許可されています。 プライベート アクセス設定オブジェクトを作成することで、パブリック アクセスを制御できます。もっと詳しく知る。

パブリック アクセスを管理するには、次の手順に従います。

  1. パブリックアクセスを決定します。

    • パブリック アクセスを拒否する : ワークスペースへのパブリック接続は許可されません。
    • パブリックアクセスを許可する : IPアクセスリストを使用して、アクセスをさらに制限できます。
  2. パブリック アクセスを許可する場合は、IP アクセス リストを設定します。

    • IP アクセス リストを設定して 、Databricks ワークスペースにアクセスできるパブリック IP アドレスを制御します。
    • IP アクセス リストは、インターネット経由のパブリック IP アドレスからの要求にのみ影響します。Private サービス Connect からのプライベートトラフィックはブロックされません。
  3. すべてのインターネットアクセスをブロックするには:

注記

IP access lists do not affect requests from VPC networks connected via Private Service Connect. These connections are managed using the Private Service Connect access level configuration. See Create a Databricks private access settings object.

VPC Service Controlsの構成 (オプション)

トラフィックのプライバシーを維持するための追加のセキュリティレイヤーを提供するプライベートサービスコネクトと並行してVPC Service Controlsを実装することで、Databricksへのプライベート接続を強化します。この組み合わせたアプローチにより、Google Cloud リソースを分離し、VPC ネットワークへのアクセスを制御することで、データ流出のリスクを効果的に軽減します。

コンピュート プレーンVPCからクラウド ストレージへのクラシック コンピュート プレーン プライベート アクセスを構成する

プライベート Google アクセスまたはプライベート サービス コンピュート プレーン VPCからクラウド ストレージ リソースにプライベートにアクセスするように接続します。

コンピュートプレーンプロジェクトを VPC Service Controls サービス境界に追加する

Databricks ワークスペースごとに、次の Google Cloud プロジェクトを VPC Service Controls サービス境界に追加します。

  • コンピュートプレーン VPC ホストプロジェクト
  • ワークスペースのストレージバケットを含むプロジェクト
  • ワークスペースのコンピュート リソースを含むサービス プロジェクト

この設定では、次の両方にアクセス権を付与する必要があります。

  • Databricks コントロール プレーンからのコンピュート リソース バケットとワークスペース ストレージ バケット
  • Databricksコンピュートプレーン からの 管理ストレージバケットVPC

上記の VPC Service Controls サービス境界で、次のイングレスおよびエグレスルールを使用して、上記のアクセスを許可します。

これらのイングレス ルールとエグレス ルールのプロジェクト番号を取得するには、「 Databricks サービスと資産の IP アドレスとドメイン」を参照してください。

イングレス ルール

Databricks コントロールプレーン VPC から VPC Service Controls サービス境界へのアクセスを許可するには、イングレスルールを追加する必要があります。次に、イングレス ルールの例を示します。

From:
Identities: ANY_IDENTITY
Source > Projects =
<us-central1-control-plane-vpc-host-project-numbers> # Only required for workspace creation
<regional-control-plane-vpc-host-project-numbers>
<regional-control-plane-uc-project-number>
<regional-control-plane-audit-log-delivery-project-number>
To:
Projects =
<list of compute plane Project Ids>
Services =
Service name: storage.googleapis.com
Service methods: All actions
Service name: compute.googleapis.com
Service methods: All actions
Service name: container.googleapis.com
Service methods: All actions
Service name: logging.googleapis.com
Service methods: All actions
Service name: cloudresourcemanager.googleapis.com
Service methods: All actions
Service name: iam.googleapis.com
Service methods: All actions

イングレス ルールのプロジェクト番号を取得するには、「 Private サービス Connect (PSC) 添付ファイルの URI とプロジェクト番号」を参照してください。

エグレス ルール

DatabricksVPCで管理されるストレージバケットへのアクセスを許可するには、エグレスルールを追加する必要があります。次に、出力ルールの例を示します。

From:
Identities: ANY_IDENTITY
To:
Projects =
<regional-control-plane-asset-project-number>
<regional-control-plane-vpc-host-project-numbers>
Services =
Service name: storage.googleapis.com
Service methods: All actions
Service name: artifactregistry.googleapis.com
Service methods:
artifactregistry.googleapis.com/DockerRead'

エグレスルールのプロジェクト番号を取得するには、「 Private サービス接続 (PSC) アタッチメント URI とプロジェクト番号」を参照してください。

VPC Service Controls によって保護されたデータレイク ストレージ バケットにアクセスする

データレイク ストレージ バケットを含む Google Cloud プロジェクトを VPC Service Controls サービス境界に追加します。

データレイク ストレージ バケットと Databricks ワークスペース プロジェクトが同じ VPC Service Controls サービス境界にある場合、追加のイングレス ルールまたはエグレス ルールは必要ありません。

データレイク ストレージ バケットが別の VPC Service Controls サービス境界にある場合は、次のように設定する必要があります。

  • データレイクサービス境界のイングレスルール:

    • DatabricksコンピュートプレーンVPCからCloud Storageへのアクセスを許可する
    • リージョン ページに記載されているプロジェクト ID を使用して、Databricks コントロール プレーン VPC から Cloud Storage へのアクセスを許可します。このアクセスは、Unity Catalogなどの新しいデータガバナンス機能を導入するDatabricks必須です。
  • Egress rules on Databricks コンピュート プレーン サービス境界:

    • データレイク プロジェクト上の Cloud Storage への下り(外向き)を許可する

その他のリソース