【问题标题】:Azure internal load-balanced network with VNet Gateway with P2S VPNAzure 内部负载平衡网络,带有 VNet 网关和 P2S VPN
【发布时间】:2019-06-24 03:07:08
【问题描述】:

正如标题所示,我需要使用 VPN 制作负载平衡的内部网关。我是一名开发人员,所以网络不是我的强项。

我有两个相同的 VM(可用区 1 中的 VM1 和可用区 2 中的 VM2),我需要在它们之间共享 VPN 流量。我的客户提供了将在他们的防火墙上配置的 5 个地址范围,所以我会选择一个供他们使用,然后他们需要忽略内部路由。

我的最终目标是允许客户端通过 VPN 连接到一个 IP 地址(在他们分配的范围内),并让 Azure 主要将流量定向到 VM1,但如果可用区 1 出现故障,则故障转移到 VM2。客户端必须不知道他们最终连接到哪个虚拟机。

我的问题是我无法创建负载均衡器的静态 IP 在网关 VPN P2S 地址池的地址范围内的配置。 Azure 要求 P2S 地址池位于 VNet 的地址空间之外,而负载均衡器需要使用 VNet 的子网(这显然在 VNet 的地址空间内,所以我被卡住了。

我可以创建 GW -> Vnet -> 子网 -> VM1/VM2 使用客户端为 P2S VPN 指定的 IP 范围设置没有问题,但是没有负载均衡器,我该如何引导 VM 之间的流量?

例如(IP 是假设的)

  • Vnet 地址范围为 172.10.0.0/16
  • 网关子网是 172.10.10.0/24
  • 网关的P2S地址池为172.5.5.5/29
  • VM1的IP是172.10.10.4
  • VM2的IP是172.10.10.5

我可以创建一个负载平衡器来使用 Vnet(以及后端池中的虚拟机),但是它的静态 IP 必须位于 VNet 的子网中,因此位于 P2S 地址池之外。那么我该如何实现呢?

我想创建第二个 VNet 和相应的网关并链接网关,但我似乎最终在同一条船上

更新:这是我的 VNet 图的图像。我现在只添加了一个 VM (NSPHiAvail1),但 VM2 将在同一个 LB 后端池中

NSP_Address_Range 范围是 VNet 的子网,是客户端指定的范围。负载均衡器的前端 IP 在此范围内

【问题讨论】:

    标签: azure azure-virtual-network azure-load-balancer


    【解决方案1】:

    首先,Azure 负载平衡器对新传入的 TCP 连接执行循环负载平衡,您不能将其用于故障转移。

    我的问题是我无法创建一个配置 Balancer 的静态 IP 在 Gateway 的 VPN P2S 的地址范围内 地址池。

    您无需在 P2S 地址池中添加负载均衡器前端 IP,地址池用于连接到您的 Azure VNet 的客户端。

    一般情况下,您可以配置 P2S VPN 网关,创建网关子网和 vmsubnet,并在 vmsubnet 中创建一个内部标准 SKU 负载均衡器,然后您可以将 vmsubnet 中的虚拟机添加到后端池中:负载均衡器的后端目标,并为负载均衡流量配置 healthpro 和负载均衡器规则。如果是这样,您可以通过负载均衡器前端私有 IP 从客户端访问后端虚拟机。

    此外,您还可以通过limitations 了解内部负载均衡器。

    【讨论】:

    • 感谢您的回答,我不知道这是 Azure LB 的限制。 If so, you could access the backend VMs from clients via the load balancer frontend private IP - 这正是我想要的。我做了create an internal standard SKU load balancert,我做了add the VMs in the vmsubnet into the backend pool as the backend target of the load balancer。我也做了add the VMs in the vmsubnet into the backend pool as the backend target of the load balancer。我认为在 VM 子网中添加 LB 可能是我出错的地方。稍后我会尝试并在此处更新。再次感谢
    【解决方案2】:

    我的问题是负载均衡器规则 - 或缺少它。为端口 1433 (SQL Server) 添加规则后,我就可以从我的本地 SSMS 实例查询数据库

    还有另一种解决方案比我尝试实施的解决方案简单得多,但它无法使用内部负载平衡器

    Azure 虚拟机规模集实现了我指定的任意数量的 VM,如果其中一个出现故障,它将自动切换到另一个区域。我不需要可扩展性方面,所以我禁用了它,我只使用负载平衡方面。

    注意此设置仅公开一个公共 IP,您不能将内部负载平衡器与默认公共负载平衡器一起分配

    这里有一些信息:

    Quickstart: Create a virtual machine scale set in the Azure portal

    Create a virtual machine scale set that uses Availability Zones

    Networking for Azure virtual machine scale sets

    Virtual Machine Scale Sets

    成本正是您为单个虚拟机支付的费用,但其中包括负载平衡。所以它比我在问题中描述的解决方案便宜。奖金!

    【讨论】:

      猜你喜欢
      • 2021-12-24
      • 2016-11-29
      • 2013-04-09
      • 1970-01-01
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 1970-01-01
      • 2014-01-03
      相关资源
      最近更新 更多