Azure Databricks ワークスペースをオンプレミス ネットワークに接続する

この記事では、Azure Databricks ワークスペースからオンプレミス ネットワークへの接続を確立する方法について説明します。 トラフィックは、次のハブアンドスポーク トポロジを使用して、転送仮想ネットワーク (VNet) を介してオンプレミス ネットワークにルーティングされます。

Virtual network deployment

このガイドに従ってサポートが必要な場合は、Microsoft および Databricks のアカウント チームにお問い合わせください。

必要条件

Azure Databricks ワークスペースを独自の仮想ネットワークにデプロイする必要があります (VNet インジェクションともいう)。

手順 1: Azure Virtual Network ゲートウェイを使用して転送仮想ネットワークを設定する

転送 VNet には、次のいずれかの方法を使用して構成された Azure Virtual Network ゲートウェイ (ExpressRoute または VPN) が必要です。 適切なゲートウェイがすでにある場合は、「Azure Databricks 仮想ネットワークと転送仮想ネットワークをピアリングする」に進みます。

オンプレミス ネットワークと Azure との間にすでに ExpressRoute が設定されている場合は、「Microsoft Azure portal を使用して ExpressRoute の仮想ネットワーク ゲートウェイを構成する」の手順に従います。

それ以外の場合は、「Microsoft Azure portal を使用して VNet 間 VPN ゲートウェイ接続を構成する」の手順 1 から 5 に従います。

サポートが必要な場合は、Microsoft アカウント チームにお問い合わせください。

手順 2: Azure Databricks 仮想ネットワークと転送仮想ネットワークをピアリングする

Azure Databricks ワークスペースが仮想ネットワーク ゲートウェイと同じ VNet 内にある場合は、「ユーザー定義ルートを作成し、それらを Azure Databricks の仮想ネットワークのサブネットに関連付ける」に進みます。

それ以外の場合は、「仮想ネットワークをピアリングする」の指示に従って、Azure Databricks VNet を転送 VNet にピアリングし、次のオプションを選択します。

  • Azure Databricks VNet 側でリモート ゲートウェイを使用します。
  • 転送 VNet 側でのゲートウェイ転送を許可します。

詳細については、「ピアリングを作成する」を参照してください。

注意

Azure Databricks へのオンプレミス ネットワーク接続が上記の設定で機能しない場合は、ピアリングの両側で [転送されたトラフィックを許可する] オプションを選択して問題を解決することもできます。

仮想ネットワーク ピアリングの VPN ゲートウェイ転送の構成については、「仮想ネットワーク ピアリングの VPN ゲートウェイ転送を構成する」を参照してください。

手順 3: ユーザー定義ルートを作成し、それらを Azure Databricks の仮想ネットワークのサブネットに関連付ける

転送 VNet と Azure Databricks VNet をピアリングした後、Azure は、転送 VNet を使用してすべてのルートを自動的に構成します。 自動構成では、クラスター ノードから Azure Databricks コントロール プレーンへの戻りルートは含まれません。 これらのカスタム ルートは、ユーザー定義のルートを使用して手動で作成する必要があります。

  1. ルート テーブルを作成し、BGP ルート伝達を有効にします。

    注意

    場合によっては、BGP ルート伝達によって、オンプレミスのネットワーク接続の設定を検証するとエラーが発生します。 最後の手段としては、BGP ルート伝達を無効にすることができます。

  2. カスタム ルート」の指示に従って、次のサービスのユーザー定義のルートを追加します。

    ワークスペースで secure cluster connectivity (SCC) が有効になっている場合は、コントロール プレーンの NAT IP ではなく SCC の リレー IP を使用します。

    source アドレス プレフィックス ネクストホップの種類
    Default コントロール プレーンの NAT IP
    (SCC が無効になっている場合のみ)
    インターネット
    Default SCC のリレー IP
    (SCC が有効になっている場合のみ)
    インターネット
    Default Webapp IP インターネット
    Default 拡張インフラストラクチャ IP インターネット
    Default メタストア IP インターネット
    Default アーティファクト BLOB ストレージ IP インターネット
    Default ログ BLOB ストレージ IP インターネット
    Default DBFS ルート ストレージ IP (ADLS) インターネット
    Default 2023 年 3 月 6 日より前に作成されたワークスペースの DBFS ルート ストレージ IP (BLOB)。 インターネット

    これらのサービスそれぞれの IP アドレスを取得するには、「Azure Databricks のためのユーザー定義のルート設定」の手順に従います。

    設定の検証時に IP ベースのルートで障害が発生した場合は、Microsoft.Storage にサービス エンドポイントを作成し、Azure のバックボーンを通じてすべての DBFS ルート ストレージ トラフィックをルーティングできます。 この方法を使用する場合は、DBFS ルート ストレージ用のユーザー定義ルートを作成する必要はありません。

    注意

    Cosmos DB や Azure Synapse Analytics などの他の PaaS Azure データ サービスに Azure Databricks からアクセスするには、これらのサービスのユーザー定義ルートをルート テーブルに追加する必要があります。 nslookup または同等のコマンドを使用して、各エンドポイントを IP アドレスに解決します。

  3. ルート テーブルをサブネットに関連付ける」の手順に従って、ルート テーブルを Azure Databricks VNet パブリック サブネットとプライベート サブネットに関連付けます。

    カスタム ルート テーブルを Azure Databricks VNet サブネットに関連付けた後は、ネットワーク セキュリティ グループの送信セキュリティ ルールを編集する必要はありません。 たとえば、ルートは実際のエグレスを制御するため、アウトバウンド規則をより具体的にする必要はありません。

手順 4: 設定を検証する

設定を検証するには、次の手順を実行します。

  1. Azure Databricks ワークスペース内にクラスターを作成します。

    クラスターの作成に失敗した場合は、設定の指示に従って、別の構成オプションを 1 つずつ試してみてください。

    それでもクラスターを作成できない場合は、ルート テーブルに必要なすべてのユーザー定義ルートが含まれていることを確認します。 ADLS gen2 (2023 年 3 月 6 日より前に作成されたワークスペースの場合、Azure Blob Storage) にユーザー定義ルートではなくサービス エンドポイントを使用した場合、それらのエンドポイントも確認します。

    それでもクラスターを作成できない場合は、Microsoft および Databricks のアカウント チームに問い合わせてください。

  2. 次のコマンドを使用して、ノートブックからオンプレミスの IP に ping を実行します。

    %sh
    ping <IP>
    

トラブルシューティングのガイダンスについては、次のリソースを参照してください。

省略可能な構成手順

オプション: 仮想アプライアンスまたはファイアウォールを使用して Azure Databricks のトラフィックをルーティングする

Azure Firewall、Palo Alto、Barracuda などのファイアウォールまたは DLP アプライアンスを使用して Azure Databricks クラスター ノードからのすべての送信トラフィックをフィルター処理できます。 これにより、送信トラフィックを検査してセキュリティ ポリシーを満たし、すべてのクラスターに対して NAT に似た 1 つのパブリック IP または CIDR を許可リストに追加することができます。

ファイアウォールまたは DLP アプライアンスの必要に応じて、これらの手順を調整します。

  1. NVA を作成する」の手順に従って、転送 VNet 内に仮想アプライアンスまたはファイアウォールを設定します。

    複数のワークスペースに対して 1 つのファイアウォール構成が必要な場合は、既存のプライベート サブネットやパブリック サブネットとは別の Azure Databricks VNet 内のセキュリティで保護されたサブネットまたは DMZ サブネットにファイアウォールを作成することができます。

  2. カスタム ルート テーブル内に 0.0.0.0/0 への追加のルートを作成します。

  3. セキュリティで保護されたサブネットまたは DMZ のサブネットを使用する場合は、DMZ サブネットのみに関連付けられた追加のルート テーブルを作成できます。 そのルート テーブルで、0.0.0.0 へのルートを作成します。

    トラフィックの送信先がパブリック ネットワークの場合は、そのルートのネクスト ホップの種類をインターネットに、トラフィックの送信先がオンプレミス ネットワークの場合は、仮想ネットワーク ゲートウェイに設定します。

  4. ファイアウォール アプライアンスで許可ルールと拒否ルールを構成します。

    BLOB ストレージのルートを削除した場合は、それらのルートをファイアウォールの許可リストに追加します。

    クラスターが、オペレーティング システム リポジトリやコンテナー レジストリなどのパブリック リポジトリに依存している場合は、許可リストに追加します。

    許可リストについては、「Azure Databricks のユーザー定義ルート設定」を参照してください。

オプション: カスタム DNS を構成する

独自の仮想ネットワークにデプロイされる Azure Databricks ワークスペースでカスタム DNS を使用できます。 Azure 仮想ネットワーク用のカスタム DNS を構成する詳しい方法については、次の Microsoft の記事を参照してください。

. 重要: Azure アーティファクトの IP アドレスを解決するには、これらの要求を Azure 再帰的リゾルバ―に転送するようにカスタム DNS を構成する必要があります。