首页 > 解决方案 > 无法获取 Azure 负载均衡器池的 resourceId

问题描述

根据这里的资源文档。

https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-template-functions-resource#resourceid

我可以传入命名空间后跟其他名称,具体取决于对象嵌套在父资源中的深度。就我而言,我只需要负载均衡器中后端池的资源 ID,因此我指定以下内容:

[resourceId('Microsoft.Network/loadBalancers','myLoadBalancer', 'backendAddressPools', 'myPool')]

这会导致在部署模板时生成以下异常。

无法评估模板语言函数“resourceId”:类型“Microsoft.Network/loadBalancers”需要“1”资源名称参数

标签: azurearm-templateazure-template

解决方案


它应该是:

[resourceId('Microsoft.Network/loadBalancers/backendAddressPools','myLoadBalancer', 'myPool')]

阅读:https ://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-template-functions-resource#resourceid

检查数据库示例


推荐阅读