使用同一资源组中的 ARM 模板创建两个不同的 VM

时间:2021-03-08 08:00:18

标签: azure arm-template

所以我对整个 ARM 模板或整个 IaC 概念还很陌生。我的第一个项目是使用自己的 NSG 规则、脚本等创建自定义的 VM 部署。这不是问题,因为 github ARM template sample page 是一个巨大的帮助。文档对此也很清楚。

下一个项目是在同一个 RG 中创建两个不同的 VM。我不能使用复制,因为虚拟机必须以不同的方式命名(不是问题,因为我可以使用数组)、具有不同的大小(也可能是数组?idk)和 NSG 规则(数组?)。不过,它们将共享同一个 vnet,因为它们需要通过本地连接相互通信(出于安全原因)。

有没有人有这方面的经验分享?也许使用嵌套模板就足够了?

无论如何,你们给我的任何提示,我都会很乐意测试并分享。

非常感谢

2 个答案:

答案 0 :(得分:0)

如果您需要创建 2 个除名称外都相同的 VM,那么您应该使用虚拟机规模集,请参阅:https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/overview

有关 VM 的名称,请参阅:https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-instance-ids

答案 1 :(得分:0)

您还可以在一个 ARM 模板中使用复制循环:https://docs.microsoft.com/en-us/azure/azure-resource-manager/templates/copy-resources

您在数组/映射中提供诸如名称和 SKU 之类的内容并对其进行迭代。