通过Powershell添加负载均衡器规则

时间:2018-09-06 09:40:35

标签: azure powershell azure-powershell azure-load-balancer

我正试图通过Powershell添加负载均衡器规则,因为我们需要为被动ftp打开多个端口。

Connect-AzureRmAccount

Set-AzureRmContext -SubscriptionId "MySubId"

$slb = Get-AzureRmLoadBalancer -Name "MyLB" -ResourceGroupName "MyRG"

$prb = Get-AzureRmLoadBalancerProbeConfig -Name "MyProbe" -LoadBalancer $slb

$beaddpool = Get-AzureRmLoadBalancerBackendAddressPoolConfig -Name "BEADDPOOL" -LoadBalancer $slb

$slb | Add-AzureRmLoadBalancerRuleConfig -Name "PassivePort_50010" -FrontendIPConfiguration $slb.FrontendIpConfigurations[0] -BackendAddressPool $beaddpool -Protocol "Tcp" -FrontendPort 50010 -BackendPort 50010 -Probe $prb -IdleTimeoutInMinutes 4

$slb | Set-AzureRmLoadBalancerRuleConfig -Name "PassivePort_50010" -FrontendIPConfiguration $slb.FrontendIpConfigurations[0] -BackendAddressPool $beaddpool -Protocol "Tcp" -FrontendPort 50010 -BackendPort 50010 -Probe $prb -IdleTimeoutInMinutes 4

正如您在上面看到的,我正在登录,获取有问题的LB,LB探针和LB BackEndAddressPool。然后,我使用documentation

中提到的Add-AzureRmLoadBalancerRuleConfig和Set-AzureRmLoadBalancerRuleConfig

我可以从PowerShell输出中看到该规则。但是,与通过门户网站添加的属性相比,它缺乏一个明显的属性。

“ ProvisioningState”:“成功”

新规则未在门户中显示,但是在通过PS获取LB时可见。

是否有一种方法无法确保规则显示在azure门户中?还是以这种方式设置规则需要更长的时间?

2 个答案:

答案 0 :(得分:3)

创建属性后,需要应用它们:

$slb | Set-AzureRmLoadBalancer

答案 1 :(得分:0)

Connect-AzureRmAccount

Set-AzureRmContext -SubscriptionId "MySubId"

$slb = Get-AzureRmLoadBalancer -Name "MyLB" -ResourceGroupName "MyRG"

$slb | Add-AzureRmLoadBalancerRuleConfig -Name "PassivePort_50010" -FrontendIPConfiguration $slb.FrontendIpConfigurations[0] -BackendAddressPool $beaddpool -Protocol "Tcp" -FrontendPort 50010 -BackendPort 50010 -Probe $prb -IdleTimeoutInMinutes 4

$slb | Set-AzureRmLoadBalancer 

有关更多详细信息,您可以引用类似的MSDN线程,以解决同一问题。