使用由 Azure Arc 启用的 SQL Server 专用路径连接到 Azure

本文介绍如何为 Azure Arc 实例启用的 SQL Server 配置通信,以便它连接到 Azure 而无需通过 Internet 路径。

此设计在 Azure 中部署转发代理服务器,以允许 SQL Server 通过站点到站点 VPN 或 ExpressRouteConnection 与专用 IP 地址进行通信。 代理通过 Azure 主干网络与 Arc URL 通信。

下图表示此模式。

专用路径部署示意图。

对于转发代理,请选择以下任一项:

  • Azure 防火墙显式代理(预览版)功能,它是平台即服务(PaaS)网络安全服务。

    或

  • 第三方代理服务器网络虚拟设备(NVA)。

    此图显示了 Azure 防火墙显式代理。

用例

在以下情况下,将此体系结构用于由 Azure Arc 启用的 SQL Server:

  • SQL Server 实例是隔离和保护的。

  • Azure Connected Machine 代理只能通过 Azure 虚拟网络中托管的专用 IP 与转发代理通信。 转发代理与之通信的 URL 和公共 IP(用于访问与 Arc 相关的 URL)位于 Microsoft 主干内,而不是通过 Internet。 因此,流量不会通过公共 Internet。

  • SQL Server 实例与转发代理之间的流量必须安全。 在上图中,ExpressRoute 描绘了 SQL 服务器与转发代理之间的连接,但也可以使用站点到站点 VPN 来实现。

  • 流量通过 ExpressRoute 的专用对等互连而非公共对等互连传输。

  • 代理配置在 Arc Connected Machine 代理中执行,而不是在 OS 级别执行。 此配置可能不会影响与安全相关的策略。

  • Arc 通信通过端口 443 进行加密,使用 ExpressRoute 或站点到站点 VPN 增加了额外的安全层。

先决条件 - 具有两个子网的 Azure 虚拟网络

此体系结构需要在 Azure 中使用两个子网的虚拟网络。 以下步骤为站点到站点 VPN 而不是 ExpressRoute 做好准备。

  1. 为 Azure VPN 网关创建 虚拟网络 和子网。
  2. 为 Azure 防火墙创建单独的子网。

后面的步骤将 Azure 防火墙部署为转发代理。

在 SQL Server 和 Azure 之间创建 VPN

创建从 SQL Server 位置到 Azure 的站点到站点 VPN。

  1. 请按照教程:使用 Azure 门户创建和管理 VPN 网关中的步骤来创建 VPN 网关。

  2. 在创建站点到站点 VPN 之前,请先创建本地网络网关。 请按照教程:在 Azure 门户中创建站点到站点 VPN 连接中的步骤操作。

创建防火墙并配置代理

  1. 创建 Azure 防火墙以及防火墙管理器。
  2. 将 Azure 防火墙显式代理(预览版)设置配置为充当转发代理。
  3. 创建规则以允许 SQL Server IP (10.2.1.4)。

Azure Connected Machine 代理使用该规则通过防火墙出站访问 https。

使用 Azure Arc 连接 SQL Server

从 Azure 门户生成载入脚本。 如此处所述, 将 SQL Server 连接到 Azure Arc。

运行脚本以安装配置正确的 Azure Connected Machine 代理。 可以在生成脚本时配置代理设置。

在本文中,我们在安装 Arc Connected Machine 代理扩展后更新专用路径代理设置。

配置 Azure Connected Machine 代理

若要配置 Azure Connected Machine 代理,请使用 azcmagent CLI:

  1. 设置代理 URL

    azcmagent config set proxy.url "http://<ip address>:8443"
    
  2. 验证代理 URL

    azcmagent config get proxy.url
    

    控制台返回当前代理 URL。

  3. 验证代理是否已连接。

    azcmagent show | find | "Agent Status"
    

    控制台返回代理状态。 如果配置代理,控制台将返回:

    Agent Status: Connected
    

绕过 URL

你可能需要将代理配置为绕过某些 URL 以便不通过代理进行访问,而是允许直接访问。 如果需要支持专用终结点,则绕过代理 URL。 有关详细信息,请参阅 专用终结点的代理旁路。

为日志分析配置防火墙

还可以将防火墙配置为将其日志发送到 Azure Log Analytics。 有关详细信息,请查看 监视 Azure 防火墙。

清理资源

如果不打算继续使用此应用程序,请删除这些资源。

若要从 Azure 门户删除资源,请执行以下作:

  1. 在搜索框中输入资源组的名称,从搜索结果中选择它。
  2. 选择“删除资源组”。
  3. 在 键入资源组名称时确认资源组名称,然后选择“删除”。