问题描述
使用 Azure CLI,我想根据地址从 Front Door 后端池中删除一系列后端。但据我所知,您需要知道后端在列表中的位置(索引),而不是从地址中选择。
我使用 az network front-door backend-pool backend list
获取后端列表,响应未提供要使用的索引。
- 我可以通过地址或其他标识符而不是索引来删除后端吗?
如果我被索引强制删除:
- 如果我多次列出后端,能否保证它们总是以相同的顺序返回?
- 如果我向池中添加一个新后端,它是否总是列表中的最后一个,因此是最高的索引?
- 如果我删除第一个后端(索引 = 1),该索引是否会被列表中的下一个替换?
解决方法
Azure CLI 仅提供一种通过索引删除后端的方法。但是您可以使用下面的命令来获取要通过其地址删除的后端的索引:
backends=$(az network front-door backend-pool backend list --resource-group <resource group name> --front-door-name <front door name> --pool-name <pool name>)
echo $backends |jq
echo $backends | jq '[ .[] | .address == "stantest1016.blob.core.windows.net" ] | index(true) +1'
建议在添加/删除后端后查询后端列表以获取最新列表。