将web api作为web应用程序托管在azure中,并将VM托管在同一数据中心中



我有一个在Azure East US2中运行SQL Server的虚拟机。我还托管了一个webapi作为azure web应用程序。webapi中使用的连接字符串现在正在通过互联网网关进行路由。我想确保这两项服务都托管在同一个数据中心,以便它们通过局域网而不是互联网网关进行通信。

我试图设置一个VNET,当我尝试将此VNET添加到webapi时,它要求设置VPN网关。为什么我需要设置VPN网关,难道他们不知道在同一个数据中心吗。如果不设置VPN,就不能将它们放在局域网上吗。

当您在Azure East US2中部署VM和Web应用程序时,它们位于同一地理区域。请注意,许多Azure地区确实有多个设施(您称之为数据中心),并且您无法控制资源在一个地区(即东US2)内的确切部署位置。

现在,如果你想通过Web应用程序在Azure虚拟机上与SQL Server对话,你必须使用VNet integraton。因为您没有部署到应用程序服务环境中,所以您必须将web应用程序连接到SQL Server所在的VNet。实现这一点的方法是隐式使用web应用程序和VNet之间的点对点VPN连接。

不用担心,整个过程是自动化的,您不必处理证书和证书移交,但需要VPN网关。这就是你被要求使用VPN网关的方式。

但您确实应该考虑使用Azure SQL DB,而不是VM上的SQL Server。

最新更新