我正在尝试通过Azure cli将端口8172的NAT池添加到现有的负载均衡器。 我找到了我认为正确的命令:
az network lb inbound-nat-pool update --lb-name
--name
--resource-group
[--add]
[--backend-port]
[--frontend-ip-name]
[--frontend-port-range-end]
[--frontend-port-range-start]
[--protocol {All, Tcp, Udp}]
[--remove]
[--set]
我想我需要使用--add
选项。
但下一步是什么?如何在add命令中指定前端和后端设置?
答案 0 :(得分:2)
比例集使用NAT池,而不是规则。
显示配置的示例ARM模板:https://github.com/gatneil/mvss/blob/load-balancer/azuredeploy.json
答案 1 :(得分:1)
我尝试将端口8172的NAT池添加到现有的负载均衡器 通过Azure cli。
不幸的是,对于包含与比例集的现有关联的负载均衡器,负载均衡器和比例集虚拟机之间的adding
或editing
引用当前已禁用。
如果我们使用CLI 2.0添加或更新入站规则,我们会收到错误消息:
C:\Users>az network lb inbound-nat-rule create -g jasonvmss --lb-name jasonvmsslb --protocol TCP --frontend-port 8172 --backend-port 8172 -n nat1
Adding or updating NAT Rules when NAT pool is present on loadbalancer /subscriptions/5384xxxx-xxxx-xxxx-xxxx-xxxxe29a7b15/resourceGroups/jasonvmss/providers/Microsoft.Network/loadBalancers/jasonvmsslb is not supported. To modify the load balancer, pass in all NAT rules unchanged or remove the LoadBalancerInboundNatRules property from your PUT request.
<强>更新强>:
我们可以使用az network lb inbound-nat-pool create
创建入站nat池,它可以正常工作。像这样的命令:
az network lb inbound-nat-pool create --backend-port
--frontend-port-range-end
--frontend-port-range-start
--lb-name
--name
--protocol {All, Tcp, Udp}
--resource-group
答案 2 :(得分:1)
我意识到解决方案是创建一个额外的nat-pool:
az network lb inbound-nat-pool create
答案 3 :(得分:0)
首先使用ARM模板更新VMSS,通过在networkProfile部分仅保留所需的LB池配置(如果需要删除的池配置存在,则删除它。如果没有已经存在,忽略)
VMSS 更新后,检查 VMSS 是否没有与需要在 AzureResourceExplorer 中删除的后端池有任何关联。
一旦VMSS没有关联,我们可以从门户/使用ARM模板中删除地址池
答案 4 :(得分:-1)
您实际上可以修改入站NAT池,您只需确保它们在您使用时未被VMSS使用。我在一个相关主题上写了blog post:删除了将调试器附加到Service Fabric集群的人创建的NAT规则。
此方法的缺点可能是停机,因为您暂时断开了VMSS和NAT池的连接。