-1

所以我需要编写脚本将负载均衡器的后端池与 NIC 分离以更新我们的实时机器,但是在从 CLI 更新 NIC 时我遇到了一个奇怪的问题。

我可以使用 --set 或 remove 键将整个“loadBalancerBackendAddressPools”组设置为空,但是当这是组中的最后一个属性时 - 我无法更新它。

az network nic update --resource-group MyPreciousGroup -n machineNetworkInt01020 --set ipConfigurations.[0].loadBalancerBackendAddressPools.[0].backendIpConfigurations=null

这会引发错误:

Operation failed with status: 'Not Found'. Details: 404 Client Error: Not Found for url: https://management.azure.com/subscriptions/00000000-1234-1234-1234-0000000000/providers/Microsoft.Network/locations/australiaeast/operations/1111111-1234-1234-1234-1111111111?api-version=2017-03-01

顺便说一句,有没有办法用 JSON 或其他东西更新整个属性组?我想在机器更新后使用以下参数设置的所有内容:

loadBalancerBackendAddressPools": [
    {
      "backendIpConfigurations": null,
      "etag": null,
      "id": "/subscriptions/111111111-1111-1111-1111-111111111111/resourceGroups/MyEnvironment-AustraliaEast/providers/Microsoft.Network/loadBalancers/MyLoadBalancer/backendAddressPools/MyBackendPool",
      "loadBalancingRules": null,
      "name": null,
      "outboundNatRule": null,
      "provisioningState": null,
      "resourceGroup": "MyEnvironment-AustraliaEast"
    }
  ],

Python 2.7.12

天蓝色 cli 2.0.7

4

1 回答 1

2

您可以尝试使用以下命令将 NIC 从负载均衡器后端池中分离出来。

az network nic update -g <your group name> -n <nic name> --set ipConfigurations[name=<ip-config-name>].loadBalancerBackendAddressPools=[]

以下脚本是一个示例,它适用于我。

az network nic update -g shuiload -n shui0 --set ipConfigurations[name=ipconfig1].loadBalancerBackendAddressPools=[] 

此外,您可以使用 Azure CLI 将 NIC 添加到后端池。

az network nic update -g ${resource-group} --name ${nic-name} --add ipConfigurations[name=${ip-config}].loadBalancerBackendAddressPools id=${backend-address-pool-id}
于 2017-06-05T08:15:22.107 回答