Я хочу создать Группа сетевой безопасности (NSG) в Azure и прикрепите его к существующая подсеть используя шаблон ARM. Я уже сталкивался с этим сайтом: https://github.com/Azure/azure-quickstart-templates/tree/master/201-nsg-add-to-existing-subnet но шаблон ссылается на дополнительные файлы на GitHub, которые мой клиент не разрешает.
В идеале я хотел бы по возможности избегать вложенных шаблонов ARM и просто использовать файл x1 template.json и x1 parameters.json ИЛИ просто файл x1 template.json в целом.
Если у кого-то есть опыт работы с этим или он знает хороший сайт, на который можно ссылаться, я был бы признателен за помощь.
В примере это делается как вложенный шаблон, потому что группа ресурсов, в которой находится виртуальная сеть, находится в другой группе ресурсов, чем сама виртуальная сеть. Если ваша сеть безопасности сети и виртуальная сеть находятся в одной группе ресурсов, в этом нет необходимости. Все, что вам нужно сделать, это добавить часть подсети в ваш основной шаблон в зависимости от вашей NSG.
{
"apiVersion": "2018-03-01",
"type": "Microsoft.Network/virtualNetworks/subnets",
"dependsOn": [
"new-nsg"
],
"name": "[concat(parameters('virtualNetworkName'), '/', parameters('subnetName'))]",
"location": "[resourceGroup().location]",
"properties": {
"addressPrefix": "[parameters('subnetAddressPrefix')]",
"networkSecurityGroup": {
"id": "[resourceId('Microsoft.Network/networkSecurityGroups', 'new-nsg')]"
}
}
}
Если ваша сеть безопасности сети и виртуальная сеть находятся в разных группах ресурсов, то единственный способ сделать это - использовать вложенный шаблон. Это один из недостатков ARM по сравнению с чем-то вроде Terraform. Тем не менее, есть еще несколько вариантов, на которые вы можете взглянуть: