如何解决Azure虚拟机ARM模板CopyIndex排除avSet
我正在尝试从“可变对象”中部署许多虚拟机,其中一些虚拟机需要添加到AVSet,而其他虚拟机则不需要。
我正在努力寻找一种方法来遍历对象,但不包括AVSet等。
"...MATCH(P" & findrow & ...
所以我认为如果参数avset为空,我需要设置一条if语句?但我被困住了。任何帮助都将是惊人的。
谢谢
解决方法
您可以对添加为注释和变量virtualMachineSettings
的解决方案进行一些更改:
"virtualMachineSettings": [
{
"name": "WEBSERVER","subnet": "web","vmSize": "Standard_B2ms","publisher": "[parameters('standardVMPublisher')]","offer": "[parameters('standardVMoffer')]","sku": "[parameters('standardVMsku')]","avset": "webServersAVSet","availiabilitySet": {
"id": "[resourceId('Microsoft.Compute/availabilitySets',"webServersAVSet")]"
}
},...
]
"properties": {
"availabilitySet": "[if(not(empty(variables('virtualMachineSettings')[copyIndex()].avSet)),variables('virtualMachineSettings')[copyIndex()].availiabilitySet)]",...
}
或者您可以在变量virtualMachineSettings
中为每个成员设置布尔属性,以判断是否需要为VM设置可用性集。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。