面向Azure Internet的多区域负载均衡器

面向Azure Internet的多区域负载均衡器,azure,load-balancing,alwayson,Azure,Load Balancing,Alwayson,我正在创建一个多区域AlwaysOn Sql Availability组。我在东部有两个虚拟机,在西部有一个虚拟机。我需要使用面向公众的负载平衡器来实现这些负载平衡。是否可以使用存在于不同VNET和不同数据中心的VM创建面向internet的负载平衡器 两个网络之间有一个VPN隧道。这与公共负载平衡器无关,只是以防万一 3年后更新: 你不应该真的创造这样的东西。如果您绝对愿意,您可以,但这是一种可怕的做法。Azure Traffic Manager应该能够跨区域执行您需要的操作 因此,我开发了解

我正在创建一个多区域AlwaysOn Sql Availability组。我在东部有两个虚拟机,在西部有一个虚拟机。我需要使用面向公众的负载平衡器来实现这些负载平衡。是否可以使用存在于不同VNET和不同数据中心的VM创建面向internet的负载平衡器

两个网络之间有一个VPN隧道。这与公共负载平衡器无关,只是以防万一

3年后更新:


你不应该真的创造这样的东西。如果您绝对愿意,您可以,但这是一种可怕的做法。

Azure Traffic Manager应该能够跨区域执行您需要的操作

因此,我开发了解决方案,并成功地对其进行了测试。有两种选择:

确保两个区域都有VNET。确保位于不同区域的两个VNET之间存在VPN隧道。接下来,像往常一样创建集群和可用性组。然后在您的两个地区分别安装面向Internet的负载平衡器。因此,如果东部有2个节点,西部有1个节点,则面向东部internet的负载平衡器后面将有2个VM,而西部有一个不同的负载平衡器,只有一个VM。然后,在集群上为公共IP地址创建侦听器。确保面向Internet的负载平衡器的公共IP地址与侦听器上的正确子网相关联,否则您将遇到问题。这里是你的选择发挥作用的地方

选项1:在连接字符串中指定故障转移伙伴示例

DataSource=mydb.mydomain.com;FailoverPartner=mydb2.mydomain.com;MultiSubnetFailover=true
我可能打错了这个连接,但这是我的想法。您可以查找正确的语法

选项2:不要指定故障切换伙伴,如果发生区域故障切换,请使用新的连接字符串重新部署应用程序。(这是云计算人员,如果你没有使用像octopus deploy这样的工具,那么你就做错了)

我选择了选项2,因为我们的灾难恢复故障切换方法已经非常复杂


我希望这对其他人有帮助

这是如何考虑到集群上对公共侦听器的需要的?我在我的网络应用程序中使用流量管理器,据我所知,流量管理器仅在DNS级别工作。啊,对。。。那我想也许这会有用-