【问题标题】:LAN connection between Azure App Service and Azure VM-hosted SQL?Azure 应用服务和 Azure VM 托管的 SQL 之间的 LAN 连接?
【发布时间】:2023-03-06 05:17:02
【问题描述】:

我们一直在尝试在 Azure 中托管我们的 ASP.NET + SQL Server 应用程序。到目前为止,我们已经尝试了两种方法:

  • ASP.NET 的应用服务,SQL Server 的 VM,都在同一个数据中心,所以我想 LAN 连接是可能的,但目前连接字符串列出了公共 IP
  • 一个同时用于 IIS ASP.NET 和 SQL Server 的 VM(临时解决方案 - 我们最终会将 SQL 移到防火墙后面)

考虑到成本和可管理性,我们更喜欢第一个选项。但它似乎更慢(我猜是因为连接字符串中的公共 IP)。

问题

应用服务 - SQL 连接可以是 LAN 而不是 WAN/互联网吗?在设置过程中是否有任何特定的技巧来实现这一点?

我的尝试

SQL VM 位于 VNet 中。我尝试将应用服务添加到 VNet 中(基于猜测它将能够看到 SQL VM 的内部 IP),但现有的 VNet 在应用服务的 VNet 配置选项中是不可选择的。

【问题讨论】:

  • 我认为您对 Azure 中的公共端点有一些不正确的信息。即使将它们的公共 IP 地址(或 dns 名称)指定为您的连接,同一区域中的服务之间的连接也会保留在该区域内。流量不会在公共 Internet 上流出。您只是通过公共端点进行路由。这不应该影响除 DNS 查找之外的任何性能。
  • 非常感谢@DavidMakogon。这让我免于追逐一条大红鲱鱼。那么我想知道为什么我们的 VM 似乎比 AppService 快。我将发布一个新问题。

标签: sql-server azure azure-virtual-network


【解决方案1】:

应用服务 - SQL 连接可以是 LAN 而不是 WAN/互联网吗?

根据您的描述,也许我们可以使用 VPN 将您的应用与 Azure 虚拟网络集成。

当我们想为 Azure 应用服务选择一个 Vnet 时,我们应该设置一个带有动态路由网关的点到站点 VPN。

开始

在将您的网络应用程序连接到 虚拟网络:
•VNet 集成仅适用于 标准、高级或独立定价计划。如果启用 功能,然后将您的应用服务计划扩展到不受支持的 定价计划您的应用失去了与它们所在的 VNet 的连接 使用。
•如果您的目标虚拟网络已经存在,它必须有 使用动态路由网关启用点到站点 VPN,然后才可以 连接到应用程序。如果您的网关配置为静态 路由,您不能启用点到站点虚拟专用网络 (VPN)。
• VNet 必须与您的应用服务在同一个订阅中 计划(ASP)。
• 与 VNet 集成的应用程序使用的 DNS 为该 VNet 指定。
•默认情况下,您的集成应用程序仅路由 根据您在 虚拟网络。

更多关于将App与Azure虚拟网络集成的信息,请参考link

【讨论】:

  • 只是检查提供的信息是否有用。如果您需要进一步的帮助,请告诉我。
  • 感谢 Jason 回来查看。看看大卫对这个问题的评论,听起来我最初的假设是不正确的——尽管连接字符串有一个公共 IP,但应该没有明显的网络延迟。我现在假设 David 是对的,并且正在跟进导致性能问题的其他潜在原因。
猜你喜欢
  • 1970-01-01
  • 2019-03-15
  • 2020-04-07
  • 2017-09-10
  • 2020-01-08
  • 2014-04-17
  • 2021-05-02
  • 2014-06-03
  • 2019-06-11
相关资源
最近更新 更多