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

Databricks へのプライベート接続を構成する

このページでは、ユーザーと Databricks ワークスペース間の フロントエンド プライベート接続の構成手順について説明します。ワークスペースのサーバレス実装にセキュリティを追加するには、フロントエンドのプライベート接続が必要です。

フロントエンドの PrivateLink を使用して、AWS VPC またはオンプレミスネットワークから Databricks サービスへの安全なプライベート接続を確立し、パブリックインターネットではなく VPC インターフェースエンドポイントを介してトラフィックをルーティングします。

フロントエンドのPrivateLinkでは、次のことができます。

  • プライベート アクセスの構成 : Databricks Web アプリケーション、REST API、Databricks Connect API へのフロントエンド PrivateLinkConnections を構成できます。
  • プライベート アクセスを簡単に有効にする : PrivateLink は、新しいワークスペースの作成時に構成することも、既存のワークスペースで有効にすることもできます。
  • 必須のプライベート接続を強制 する: ワークスペースのプライベート接続を必須にするには、ユーザーから Databricks へのプライベート接続と、コントロール プレーンからコンピュート プレーンへのプライベート接続を構成する必要があります。

必要条件

  • DatabricksアカウントがEnterprise価格プランである必要があります。
  • Databricksワークスペースでは、顧客管理VPCを使用する必要があります。既存のワークスペースをDatabricks管理VPCから顧客管理VPCに変換することはできません。「顧客管理VPCの設定」を参照してください。
  • Databricks ワークスペースを設定し、ワークスペースの新しい VPC エンドポイントを作成するには、必要なすべての AWS アクセス許可が必要です。
  • オンプレミスネットワークからワークスペースにアクセスするためのフロントエンド PrivateLink 接続を確立するには、Direct Connect または VPN を使用してオンプレミスネットワークを AWS VPC に接続する必要があります。
  • ローカルネットワーク内のすべての関連するアドレス空間からのネットワークトラフィックが TCP ポート 443 を使用して VPC エンドポイントに接続できるようにする必要があります。

ステップ 1: VPC エンドポイントを作成する

フロントエンドエンドポイントはトランジット VPC から発生し、通常はユーザーのウェブアプリケーションアクセスのソースとして機能します。これは通常、ワークスペースのコンピュート プレーン VPCとは別のVPCであり、オンプレミス ネットワークに接続できます。複数の Databricks アカウントがある場合は、これらのアカウント間でフロントエンド VPC エンドポイントを共有できます。関連する各 Databricks アカウントのエンドポイントを登録します。

AWS Management Console でフロントエンド VPC エンドポイントを作成するには:

  1. AWSマネジメントコンソールの [VPCエンドポイント] セクションに移動します。
  2. 右上で、リージョンをトランジット VPC リージョンと同じリージョンに設定します。
  3. [ エンドポイントの作成 ] をクリックします。
  4. エンドポイントに名前を付けるときは、地域と、databricks-us-west-2-workspace-vpceなどの単語 (workspace または frontend) を含めることをお勧めします。
  5. [サービス カテゴリ] で、 [NLB と GWLB を使用するエンドポイント サービス ] を選択します。
  6. [サービス名] フィールドに、サービス名を貼り付けます。PrivateLink VPCエンドポイント サービスの表を使用して、リージョンのサービス名を検索します。 「ワークスペース (REST API を含む)」 というラベルの付いたものをコピーします。
  7. [ Verify Service ] をクリックし、ページの緑色のボックスに [Service name Verified (サービス名確認済み )] が表示されていることを確認します。 「サービス名を確認できませんでした」というエラーが発生した場合は、VPC、サブネット、および新しい VPC エンドポイントのリージョンが正しく一致していることを確認します。
  8. [ VPC ] メニューで、トランジットVPCをクリックします。
  9. [ サブネット ] セクションで、サブネットを選択します。
  10. [ セキュリティ グループ ] セクションで、フロントエンド接続用に作成したセキュリティ グループを選択します。
  11. [ エンドポイントの作成 ] をクリックします。

ステップ 2: VPC エンドポイントを登録する

VPCAWS管理コンソールで エンドポイントを作成したら、 で登録するDatabricks VPCエンドポイント登録を確立します。ネットワーク設定は、作成後に更新することはできません。次の手順に従って、 VPC エンドポイントを登録します。

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

  2. サイドバーの 「クラウドリソース 」をクリックします。

  3. [ネットワーク ] を選択します。

  4. 垂直ナビゲーションから [VPC エンドポイント登録 ] をクリックします。

  5. [VPCエンドポイントの登録] をクリックします。

  6. VPC エンドポイント登録のわかりやすい名前を入力します。

    • VPCE us-west-2 for SCCのように、地域と目的を含む命名規則を使用します。
  7. 適切な地域を選択します。リージョンは、ワークスペースのリージョンと、登録する AWS VPC エンドポイントのリージョンの両方と一致する必要があります。

  8. AWS VPC エンドポイント ID を AWS VPC エンドポイント ID フィールドに貼り付けます。

    登録する VPC Endpoint.

  9. [ 登録する new VPC endpoint ] をクリックします。

同じ顧客管理VPCを共有する複数のワークスペースがある場合は、それらの間で AWS VPC エンドポイントを共有できます。 複数の Databricks アカウントの場合は、各アカウントの AWS VPC エンドポイントを登録します。

ステップ 3: プライベートアクセス設定を作成する

プライベート アクセス設定は、ワークスペースの PrivateLink 接続について説明し、プライベート接続を有効にするために必要です。PrivateLink を使用するには、ワークスペースの作成時にプライベート アクセス設定オブジェクトをアタッチする必要があります。既存のワークスペースに追加することはできません。次の手順に従って、プライベート アクセス設定を作成します。

  1. アカウントコンソールで、サイドバーの 「クラウドリソース 」をクリックします。

  2. [ネットワーク ] を選択します。

  3. サイドバーの 「プライベートアクセス設定 」をクリックします。

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

    プライベートアクセス設定オブジェクト。

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

  6. ワークスペースの地域に一致する地域を選択します。

  7. [パブリックアクセスが有効] フィールドを設定します。

    • False (デフォルト): フロントエンド接続は PrivateLink を介してのみアクセスでき、パブリック インターネット アクセスをブロックします。
    • True : フロントエンド接続には、PrivateLink とパブリック インターネットの両方からアクセスできます。
  8. プライベートアクセスレベル を選択します。

    • アカウント: VPC接続をDatabricks アカウントに登録されている エンドポイントに制限します。
    • エンドポイント : 接続を明示的な VPC エンドポイントのセットに制限します。フロントエンド VPC エンドポイントの登録を含めます。
  9. [ プライベートアクセス設定を追加 ]をクリックします。

この手順を完了するには、ワークスペースで既に顧客管理VPC とセキュリティで保護されたクラスタリング接続が使用されている必要があります。

  1. ワークスペースを作成するには、「 ワークスペースを手動で作成する (既存の Databricks アカウント)」 を参照してください。ワークスペース URL、リージョン、 Unity Catalog、資格情報の構成、ストレージの構成などのワークスペース フィールドのガイダンスについては、その記事を参照してください。 「 保存 」ボタンはまだクリックしないでください。

  2. 詳細設定 をクリックして、追加のフィールドを表示します。

  3. [ Private Link ] ドロップダウンで、作成したプライベートアクセス設定オブジェクトの名前を選択します。

  4. 保存 をクリックします。

  5. ワークスペースを作成または更新した後は、ワークスペースが使用可能になるまで待ってから、クラスタリングを使用または作成します。

    ワークスペースのステータスはステータス RUNNING のままで、VPC の変更はすぐに行われます。ただし、さらに 20 分間はクラスタリングを使用または作成することはできません。 この時間間隔が経過する前にクラスタリングを作成または使用すると、クラスタリングが正常に起動しない、失敗する、またはその他の予期しない動作が発生する可能性があります。

ステップ 5: ユーザー要求を Web アプリケーションにリダイレクトするように内部 DNS を構成する

ユーザー要求をフロントエンドの PrivateLink 接続にルーティングするには、プライベート DNS 設定を更新する必要があります。このプロセスにより、ワークスペース URL が VPC エンドポイントのプライベート IP に解決されます。

DNS マッピングを構成する

  1. ワークスペースに PrivateLink が含まれていることを確認します。

  2. ワークスペース URL をフロントエンド VPC エンドポイントのプライベート IP にマッピングするように内部 DNS を構成します。

  3. nslookupコマンドを使用してDNS解決をテストします。

    Bash
    nslookup my-workspace-name-here.cloud.databricks.com

応答例:

Non-authoritative answer:
my-workspace-name-here.cloud.databricks.com canonical name = oregon.cloud.databricks.com.
oregon.cloud.databricks.com canonical name = a89b3c627d423471389d6ada5c3311b4-f09b129745548506.elb.us-west-2.amazonaws.com.
Name: a89b3c627d423471389d6ada5c3311b4-f09b129745548506.elb.us-west-2.amazonaws.com
Address: 44.234.192.47F

DNS マッピングの例

AWS リージョン us-east-1 にフロントエンド VPC エンドポイントがあるワークスペースの場合:

デフォルトのDNSマッピング:

  • myworkspace.cloud.databricks.comnvirginia.privatelink.cloud.databricks.comにマップします。この場合、 nvirginia は、そのリージョンのコントロール プレーン インスタンスの短い名前です。
  • nvirginia.privatelink.cloud.databricks.comnvirginia.cloud.databricks.comにマップします。
  • nvirginia.cloud.databricks.com は AWS パブリック IP にマップされます。

変更後に必要なDNSマッピング:

  • myworkspace.cloud.databricks.comnvirginia.privatelink.cloud.databricks.comにマップします。
  • nvirginia.privatelink.cloud.databricks.com はフロントエンド接続のために VPC エンドポイントのプライベート IP にマッピングされます。

構成オプション

ワークスペース URL をオンプレミスネットワークから VPC エンドポイントのプライベート IP にマッピングするには、次のいずれかのオプションを選択します。

  1. AmazonDNS を使用するようにワークスペース URL の条件付き転送を構成します。
  2. VPC エンドポイントのプライベート IP にマッピングするオンプレミス DNS のワークスペース URL の A レコードを作成します。
  3. myworkspace.cloud.databricks.com が VPC エンドポイントのプライベート IP を直接指す直接マッピングを作成します。

必要なDNSレコード

DNS サーバー上に次のレコードを作成して、すべてのサービスにアクセスできるようにします。

レコードの種類

レコード名

Value

A

<deployment-name>.cloud.databricks.com

PrivateLinkインターフェースIP

CNAME

dbc-dp-<workspace-id>.cloud.databricks.com

<deployment-name>.cloud.databricks.com

検証

DNS設定を更新した後:

  1. トランジット VPC から Databricks ワークスペース Web アプリケーションにアクセスして、構成をテストします。
  2. REST API 接続をテストします。
  3. テストに必要な場合は、トランジット VPC に VPC エンドポイントを作成します。

エラーが発生した場合は、必要なすべての DNS レコードが正しく設定されていることを確認してください。

備考

プレビュー

フロントエンドの PrivateLink を使用した統合ログインは、プライベート プレビュー段階です。このプレビューへのアクセスを要求するには、Databricks アカウント チームに連絡する必要があります。統合ログインの詳細については、「 統合ログインを有効にする」を参照してください。

ユーザーが公共のインターネットにアクセスできる場合、この手順は必要ありません。

統合ログインが有効になっているワークスペースにユーザーがログインすると、認証フローの accounts.cloud.databricks.com にリダイレクトされます。フロントエンドの PrivateLink が有効になっていて、ユーザーがパブリック インターネットにアクセスできないワークスペースで統合ログインを使用するには、次の手順に従って ID プロバイダーと内部 DNS を構成する必要があります。

  1. アカウント管理者として、アカウントコンソールにログインします。
  2. サイドバーで、 設定 をクリックします。
  3. 認証 タブをクリックします。
  4. 認証 の横にある 管理 をクリックします。
  5. [ ID プロバイダーによるシングル サインオン ] を選択します。
  6. 続行 をクリックします。
  7. [Databricks リダイレクト URL ] フィールドの値をコピーします。
  8. accountsaccounts-pl-auth に置き換えて、Databricks PrivateLink リダイレクト URI を取得します。
  9. ID プロバイダーに移動します。
  10. Databricks PrivateLink リダイレクト URI を追加のリダイレクト URL として追加します。SAML を使用して SSO を構成する場合は、Databricks PrivateLink リダイレクト URI も追加のエンティティ ID として追加します。

アカウントにプライベート リンク ワークスペースと非プライベート リンク ワークスペースの両方がある場合は、ID プロバイダーのリダイレクト URL から Databricks リダイレクト URLaccount を削除しないでください。

トランジット VPC のプライベートホストゾーンを設定する

トランジット VPC で次の設定を実行して、DatabricksPrivateLink リダイレクト URI がワークスペース VPC エンドポイントの VPC エンドポイントのプライベート IP アドレスにマップされていることを確認します。

  1. トランジット VPC から、 nslookup Unix コマンドラインツールを使用して、ワークスペース URL を使用して DNS 解決を取得します。「ステップ 5: ユーザー要求を Web アプリケーションにリダイレクトするように内部 DNS を構成する」の例を参照してください。
  2. PrivateLink ワークスペースのコントロール プレーン インスタンス URL をコピーします。コントロールプレーンインスタンスのURLは、 <region>.privatelink.cloud.databricks.com形式です。
  3. トランジット VPC で、ドメイン名 privatelink.cloud.databricks.comのプライベートホストゾーンを作成します。
  4. accounts-pl-auth.privatelink.cloud.databricks.comを解決する CNAME レコードをコントロールプレーンインスタンス URL に追加します。
  5. トランジット VPC から Databricks PrivateLink リダイレクト URI にアクセスして、構成をテストします。