配置入站专用链接

本页提供有关配置入站专用连接的说明,该连接可保护用户与其 Azure Databricks 工作区之间的连接。

  • 若要启用与 Azure Databricks 的经典计算平面专用连接,请参阅 _.

为什么选择入站连接?

无论是使用无服务器计算还是经典计算,用户都必须连接到 Azure Databricks。 出于多种原因,组织选择连接到 Azure Databricks,其中包括:

  • Enhanced security: 通过将所有访问限制为专用端点并禁用公共访问,可以最大程度地减少攻击面,并验证与 Azure Databricks 的所有用户交互都发生在安全的专用网络上。
  • 符合性要求:许多组织具有严格的合规性要求,要求所有数据和管理平面流量都保留在其专用网络边界中,甚至对于Azure Databricks 等 SaaS 服务也是如此。
  • 简化的网络体系结构(适用于特定用例): 如果仅使用无服务器计算,或者与 Azure Databricks 的主要交互是通过 Web UI 或 REST API 进行的,并且无需立即 从 Azure Databricks(这需要经典计算平面专用链接连接)与数据源建立专用连接,则仅入站设置简化了整个网络设计。
  • 数据外泄防护:通过防止公共访问并强制所有流量通过私有终结点,可以降低数据外泄的风险,确保流量只能从经过身份验证的网络环境进行访问。

连接模型

可以通过以下两种方式之一配置专用连接:

  • 禁止公共访问:此配置禁用工作区的所有公共访问。 所有用户流量必须来自通过专用终结点连接的 VNet。 实现完全流量私有化需要此模型。 对于完全流量私有化,还需要一个经典计算平面专用链接连接。 请参阅 _.
  • 混合访问:Private Link处于活动状态,但基于上下文的入口控件和IP访问列表的公共访问仍然启用。 基于上下文的入口控件允许根据标识、请求类型和网络源限制access。 这样,便可以安全地允许从受信任的公共源(例如静态公司 IP)访问,同时仍使用 Private Link 实现专用连接。

本指南介绍如何实现 hybrid access 模型。 我们使用标准中心辐射型网络拓扑来实现此目的。

体系结构概述

此模型使用中转 VNet:

  • Transit VNet:这是您的中心虚拟网络,包含客户端访问工作区和浏览器身份验证所需的所有专用终结点。 浏览器身份验证工作区还会连接到此 VNet。

Azure Private Link网络体系结构.

在您开始之前

查看以下先决条件和建议:

要求

网络配置

  • 为以下内容配置的中转 VNet:
    • 它充当连接到Azure网络的所有用户/客户端流量的主要传输点。
    • 它为本地或其他外部网络提供集中式连接。
    • 它管理共享服务,并包含出站 Internet 流量的主要路由(出口)。
  • 你的private DNS区域由Azure DNS管理。

最佳做法

Azure Databricks 建议采取以下措施来实现具备可复原性和易管理性的设置:

  • 体系结构:网络必须遵循Microsoft推荐的中心辐射型体系结构。 请参阅 Azure 中的 中心辐射型网络拓扑。
  • 独立身份验证工作区:为了提高复原能力,请在传输 VNet 中创建单独的浏览器身份验证工作区。 此专用工作区应托管浏览器身份验证专用终结点,以防删除其他工作区时出现单一故障点。 请参阅 步骤 3:创建 browser_authentication 工作区

为现有工作区配置专用连接

在开始之前,必须停止所有计算资源,例如群集、池或经典 SQL 仓库。 无法运行工作区计算资源,或者升级尝试失败。 Azure Databricks 建议规划升级的停机时间。

  1. “工作区 ”页上,选择“ 计算”。

  2. 选择每个活动计算群集,然后在右上角单击“ 终止”。

步骤 1:验证启用公共访问的 VNet 注入工作区

  1. 转到Azure portal中的 Azure Databricks 工作区。
  2. 在工作区概述部分中,确认您的 Azure Databricks 工作区是否使用您自己的虚拟网络:
    1. “设置”下,选择“ 网络 ”选项卡。确认以下设置:
      1. 已启用安全群集连接(无公共 IP)。
      2. 允许公共网络访问启用

步骤 2:创建 databricks_ui_api 专用终结点

  1. 在工作区的 “网络 ”选项卡中,选择 “专用终结点连接”。
  2. 单击 “加号”图标。专用终结点
  3. 选择终结点的资源组,提供一个名称,如下所示 my-workspace-fe-pe。 验证区域是否与工作区匹配。
  4. 单击“ 下一步:资源”。
  5. 目标子资源 设置为 databricks_ui_api
  6. 单击 Next: Virtual Network
  7. 选择中转 VNet. 中转 VNet 是您网络架构中一个单独、先前已存在的 VNet,负责管理和保护出流量,并且通常包含中央防火墙。
  8. 选择托管专用终结点的子网。
  9. 单击下一步,并验证与私有 DNS 区域集成是否设置为。 它应自动选择 privatelink.databricks.azure.cn 区域。

注意

将私有 DNS 区域链接到中转 VNet,为了更好地组织管理,请将它与其他私有 DNS 区域放在单独的资源组中。

步骤 3:创建 browser_authentication 工作区

创建用于浏览器身份验证的专用终结点,以支持通过专用网络路径进行 SSO。 Azure Databricks 建议将此终结点托管在专用 Web 身份验证工作区上。

创建资源组

  1. 在Azure portal中,导航到并选择资源组
  2. 单击“+ 创建”。
  3. 为资源组提供 名称 ,例如 web-auth-rg-chinaeast2
  4. 对于 Region,请选择部署生产 Databricks 工作区的同一Azure区域。
  5. 单击“查看 + 创建”,然后单击“创建”

创建 VNet

  1. 在Azure portal中,搜索并选择Virtual networks
  2. 单击“+ 创建”。
  3. 在“ 基本信息 ”选项卡上,选择刚刚创建的 资源组 ,并为 VNet 提供描述性 名称,例如 web-auth-vnet-chinaeast2
  4. 验证 区域 是否与资源组匹配。
  5. “IP 地址 ”选项卡上,为 VNet 定义 IP 地址空间, 10.20.0.0/16例如。 系统还会提示你创建初始子网。
  6. 选择 “查看 + 创建”,然后选择 “创建”。

创建和保护专用 Web 身份验证工作区

  1. 在Azure portal中,搜索并选择Azure Databricks。 单击“+ 创建”。
  2. 在“ 基本信息 ”选项卡上,配置以下内容:
    1. 选择刚刚创建的 资源组
    2. 为工作区指定描述性名称,例如 WEB_AUTH_DO_NOT_DELETE_<region>
    3. 选择与资源组和 VNet 相同的区域。
  3. 单击“ 下一步:网络 ”并配置以下内容:
    1. 部署不含公共 IP 的安全群集连接的 Azure Databricks 工作区:选择
    2. 在自己的虚拟网络(VNet)中部署 Azure Databricks 工作区:选择
    3. Virtual Network:选择刚刚创建的 VNet。 系统会提示你定义子网范围。
    4. Public Network Access:选择Disabled
    5. 所需的 NSG 规则:选择 NoAzureDatabricksRules
  4. 单击“查看 + 创建”,然后单击“创建”

创建工作区后,防止意外删除它。

  1. 在Azure portal中,导航到刚刚创建的工作区。
  2. 转到 “设置” 并选择“ 锁定”。
  3. 单击“ + 添加”。
  4. 锁定类型 设置为 “删除 ”并提供描述性 锁定名称
  5. 单击 “确定”

注意

  • 不要在此工作区中运行任何 Databricks 工作负荷,例如群集、作业。
  • 请勿添加任何专用终结点,除了 browser_authentication。 具体而言,不要为此工作区创建 databricks_ui_api 终结点。

创建“browser_authentication”私有终结点

创建工作区后,必须创建 browser_authentication 专用终结点才能将其连接到中转 VNet。

  1. 在 Web 身份验证工作区的 “网络 ”选项卡中,选择 “专用终结点连接”。
  2. 单击 “加号”图标。专用终结点
  3. 选择终结点的资源组,提供一个名称,如下所示 web-auth-browser-auth-pe。 验证区域是否与工作区匹配。
  4. 单击“ 下一步:资源”。
  5. 目标子资源 设置为 browser_authentication
  6. 单击 Next: Virtual Network
  7. 选择你的中转 VNet(即步骤 2 中用于 databricks_ui_api 终结点的同一 VNet)。
  8. 选择托管专用终结点的子网。
  9. 单击下一步,并验证与私有 DNS 区域集成是否设置为。 它应自动选择 privatelink.databricks.azure.cn 区域。
  10. 完成终结点创建。

步骤 4:配置和验证 DNS

部署专用终结点后,必须验证 DNS 是否正确将Azure Databricks URL 解析为其新的专用 IP 地址。

  1. 验证private DNS区域记录:

    1. 在Azure portal中,搜索并导航到名为 privatelink.databricks.azure.cn
    2. 验证是否存在以下 A 记录,并指向终结点的专用 IP 地址:
      1. 工作区 UI/API 记录
        • 名称:唯一的工作区 ID,例如 adb-xxxxxxxxxxxxxxxx.x
        • :您的 databricks_ui_api 私有终结点的私有 IP 地址。
      2. 浏览器身份验证记录
        • 名称:选择描述性名称,例如 pl-auth.<your_region>
        • :您的 browser_authentication 私有终结点的私有 IP 地址。

步骤 5:验证专用网络访问

确认您可以通过私有网络连接访问工作区。

从连接的网络

如果本地网络已通过 VPN 或 ExpressRoute 连接到 Azure VNet,则测试非常简单:

  • 在计算机上打开 Web 浏览器,直接转到 Azure Databricks 工作区 URL 以登录。 成功登录可确认专用连接正常工作。

使用测试虚拟机

如果无法从当前位置access工作区 VNet,请创建一个临时虚拟机(“跳转框”),以便从以下位置进行测试:

  1. 创建 VM: 在Azure portal中创建 Windows 虚拟机。 使用配置入站专用终结点的同一传输 VNet 将其放置在子网中。
  2. 连接到 VM:使用Remote Desktop客户端连接到新 VM。
  3. 从 VM 进行测试:连接到 VM 后,打开 web 浏览器,转到 Azure 门户,找到 Azure Databricks 工作区。
  4. 启动工作区: 单击“ 启动工作区”。 确认成功登录是为了验证您专用 VNet 内的访问是否正常工作。

使用 nslookup 验证 DNS

  1. 通过 VPN 或 Azure ExpressRoute 连接到配置 VNet 内的虚拟机或本地网络。 计算机必须能够使用Azure的private DNS。

  2. 打开命令提示符或终端,并使用 nslookup 验证 DNS 解析。

    
    # Verify the workspace URL resolves to a private IP
    nslookup adb-xxxxxxxxxxxxxxxx.x.databricks.azure.cn
    
    # Expected output:
    # Server:  <your-dns-server>
    # Address: <your-dns-server-ip>
    #
    # Name:    adb-xxxxxxxxxxxxxxxx.x.privatelink.databricks.azure.cn
    # Address: 10.10.1.4  <-- This should be the private IP of your 'databricks_ui_api' endpoint
    # Aliases: adb-xxxxxxxxxxxxxxxx.x.databricks.azure.cn
    
    

自定义 DNS 配置

使用私有入站终结点和自定义 DNS 时,必须验证工作区 URL 和 SSO(单点登录)身份验证 URL 是否能正确解析到私有终结点的 IP 地址。

最可靠的方法是将 DNS 服务器配置为将所有 Databricks 域的查询转发到Azure的内部 DNS。

  1. 为您的 Azure DNS 服务器设置以下域名的条件转发:
    • *.databricks.azure.cn
    • *.privatelink.databricks.azure.cn
    • *.databricksapps.com
  2. 验证 VNet 是否链接到 Azure 专用 DNS 区域。

这使得 Azure 可以自动将所有必要的主机名(包括 SSO 和工作区 URL)解析为专用终结点的 IP 地址。

替代方法:手动A记录

如果条件转发不是选项,则必须手动创建 DNS A 记录。

  1. Workspace URL:创建A记录,将每个工作区 URL(如 adb-1111111111111.15.databricks.azure.cn)映射到专用终结点 IP 地址。
  2. SSO 身份验证 URL: 创建A记录,将区域 SSO URL(如 chinaeast2.pl-auth.databricks.azure.cn)映射到 same 专用终结点 IP 地址。

某些Azure区域使用多个控制平面实例进行 SSO。 可能需要创建多个 A 用于身份验证的记录。 请联系 Azure Databricks 帐户团队获取区域域的完整列表。

后续步骤