2017-05-19 16 views
1

我試圖用新規則更新現有的Loadbalancer。用新規則更新現有的Azure負載均衡器失敗

我按照Microsoft的文檔執行以下命令。 https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-get-started-internet-arm-ps#update-an-existing-load-balancer

$slb = Get-AzureRmLoadBalancer -Name LB-Some-primary -ResourceGroupName SomeName 
$slb | Add-AzureRmLoadBalancerInboundNatRuleConfig -Name "Test" -FrontendIpConfiguration $slb.FrontendIpConfigurations[0] -FrontendPort 29700 -BackendPort 24700 -Protocol TCP 
$slb | Set-AzureRmLoadBalancer 

我收到以下錯誤

Set-AzureRmLoadBalancer : Adding or updating NAT Rules when NAT pool is present on loadbalancer /subscriptions/xxxxxxxxxxxxx/resourceGroups/xxxxxx/providers/Microsoft.Network/loadBalancers/LB-xxxx-primary is not supported. To modify the load balancer, pass 
in all NAT rules unchanged or remove the LoadBalancerInboundNatRules property from your PUT request. 
StatusCode: 400 
ReasonPhrase: Bad Request 
OperationID : 'xxxx-2596-4c9e-a30a-12be70fxxxxx' 
At line:1 char:8 
+ $slb | Set-AzureRmLoadBalancer 
+  ~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : CloseError: (:) [Set-AzureRmLoadBalancer], NetworkCloudException 
    + FullyQualifiedErrorId : Microsoft.Azure.Commands.Network.SetAzureLoadBalancerCommand 

我從Azure的CLI相同的錯誤也是如此。

回答

1

根據你的描述,好像你想添加NAT規則到VMSS'Load Balancer。

但現在,添加或負載平衡器和規模之間的編輯引用設置 虛擬機是目前禁用負載平衡器是 包含一個比例集合現有關聯。

該命令會抱怨,因爲您正在嘗試將某個規則添加到已經配置了某個池的某些內容中。

如果您想將NAT規則添加到VMSS的負載平衡器,我們應該用新配置重新部署。 VMSS的配置與個人虛擬機略有不同。 VMSS使用NAT規則池而不是單個規則,關於VMSS'Load Balancer的更多信息,請參閱此link

+0

只需檢查以查看提供的信息是否有幫助。如果您需要進一步的幫助,請告訴我。 –

+0

您的負載均衡器是否安裝了VMSS? –

+0

非常感謝傑森。我們重新部署什麼?你能提供更多的細節嗎?最重要的是,我擔心失去爲VMSS生成的VM實例。如果他們至少可以保持其MAC地址,這是非常好的,因爲我擁有在這些虛擬機上運行的軟件許可證,並且這些許可證基於分配給各個虛擬機的MAC地址。 –