Azure ARM 模板 1 个 IP、1 个端口、1 个负载均衡器、3 个虚拟机

Azure ARM template 1 ip, 1 port, 1 loadbalancer, 3 vms

大家好(和女士们),

我正在重写 Azure 中的负载均衡器设置,因为显然我第一次做错了。

我想要的很简单,1 个 ip -> 1 个负载均衡器 -> 外部端口 8080,内部端口 8080 -> 3 个虚拟机(它们都在端口 8080 上托管相同的应用程序)。

因此,如果 1 台虚拟机出现故障,则还有 2 台虚拟机可以加快步伐。

我看过这样的模板:https://github.com/Azure/azure-quickstart-templates/tree/master/201-2-vms-loadbalancer-natrules 看起来非常好,除了这个 "frontendPort": "[copyIndex(5000)]", 这意味着 frontendPort 将是 500050015002 3 个虚拟机。

所以现在我问,有没有人知道我如何使用 ARM 模板在 Azure 中的多个虚拟机之间实现负载平衡,而不使用多个 public 端口?

更新:我已经尝试创建多个 NIC(每个 VM 1 个)都指向负载均衡器中的相同 NATRules,我被告知多个 NIC 不允许使用相同的规则:(

只需采用 this example 并修改 loadBalancingRules 以使用 8080 而不是 80。这样您将为所有虚拟机使用一个端口。您还需要修改探测端口。

NAT 规则(您正在查看的规则)有所不同。你不能负载平衡 nat 规则,因此不同的端口用于不同的虚拟机。