From d030dc11d7ae54787f1f9ad948653d5967a33f08 Mon Sep 17 00:00:00 2001 From: staleycyn <45440075+staleycyn@users.noreply.github.com> Date: Mon, 4 Mar 2024 12:49:46 -0800 Subject: [PATCH] Add files via upload --- .../05/az104-05-vnetvm-loop-parameters.json | 12 ++ .../05/az104-05-vnetvm-loop-template.json | 202 ++++++++++++++++++ 2 files changed, 214 insertions(+) create mode 100644 Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-parameters.json create mode 100644 Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-template.json diff --git a/Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-parameters.json b/Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-parameters.json new file mode 100644 index 00000000..ce6f20f2 --- /dev/null +++ b/Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-parameters.json @@ -0,0 +1,12 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "vmSize": { + "value": "Standard_D2s_v3" + }, + "adminUsername": { + "value": "Student" + } + } +} diff --git a/Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-template.json b/Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-template.json new file mode 100644 index 00000000..1d39b6e6 --- /dev/null +++ b/Allfiles/Interactive Lab Simulation Files/05/az104-05-vnetvm-loop-template.json @@ -0,0 +1,202 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "vmSize": { + "type": "string", + "defaultValue": "Standard_D2s_v3", + "metadata": { + "description": "Virtual machine size" + } + }, + "location1": { + "type": "string", + "metadata": { + "description": "First Azure Region" + } + }, + "location2": { + "type": "string", + "metadata": { + "description": "Second Azure Region" + } + }, + "adminUsername": { + "type": "string", + "metadata": { + "description": "Admin username" + } + }, + "adminPassword": { + "type": "securestring", + "metadata": { + "description": "Admin password" + } + } + }, + "variables": { + "locationNames": "[createArray(parameters('location1'),parameters('location1'),parameters('location2'))]", + "vmName": "az104-05-vm", + "nicName": "az104-05-nic", + "subnetName": "subnet0", + "VnetName": "az104-05-vnet", + "pipName": "az104-05-pip", + "nsgName": "az104-05-nsg", + "computeApiVersion": "2018-06-01", + "networkApiVersion": "2018-08-01" + }, + "resources": [ + { + "name": "[concat(variables('vmName'),copyIndex())]", + "copy": { + "name": "VMcopy", + "count": "[length(variables('locationNames'))]" + }, + "type": "Microsoft.Compute/virtualMachines", + "apiVersion": "[variables('computeApiVersion')]", + "location": "[variables('locationNames')[copyIndex()]]", + "dependsOn": [ + "[concat(variables('nicName'),copyIndex())]" + ], + "properties": { + "osProfile": { + "computerName": "[concat(variables('vmName'),copyIndex())]", + "adminUsername": "[parameters('adminUsername')]", + "adminPassword": "[parameters('adminPassword')]", + "windowsConfiguration": { + "provisionVmAgent": "true" + } + }, + "hardwareProfile": { + "vmSize": "[parameters('vmSize')]" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2019-Datacenter", + "version": "latest" + }, + "osDisk": { + "createOption": "fromImage" + }, + "dataDisks": [] + }, + "networkProfile": { + "networkInterfaces": [ + { + "properties": { + "primary": true + }, + "id": "[resourceId('Microsoft.Network/networkInterfaces',concat(variables('nicName'),copyIndex()))]" + } + ] + } + } + }, + { + "type": "Microsoft.Network/virtualNetworks", + "name": "[concat(variables('VnetName'),copyIndex())]", + "copy": { + "name": "VNetCopy", + "count": "[length(variables('locationNames'))]" + }, + "apiVersion": "[variables('networkApiVersion')]", + "location": "[variables('locationNames')[copyIndex()]]", + "comments": "Virtual Network", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "[concat('10.5',copyIndex(),'.0.0/22')]" + ] + }, + "subnets": [ + { + "name": "[variables('subnetName')]", + "properties": { + "addressPrefix": "[concat('10.5',copyIndex(),'.0.0/24')]" + } + } + ] + } + }, + { + "name": "[concat(variables('nicName'),copyIndex())]", + "copy": { + "name": "nicCopy", + "count": "[length(variables('locationNames'))]" + }, + "type": "Microsoft.Network/networkInterfaces", + "apiVersion": "[variables('networkApiVersion')]", + "location": "[variables('locationNames')[copyIndex()]]", + "comments": "Primary NIC", + "dependsOn": [ + "[concat(variables('pipName'),copyIndex())]", + "[concat(variables('nsgName'),copyIndex())]", + "[concat(variables('VnetName'),copyIndex())]" + ], + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', concat(variables('VnetName'),copyIndex()), variables('subnetName'))]" + }, + "privateIPAllocationMethod": "Dynamic", + "publicIpAddress": { + "id": "[resourceId('Microsoft.Network/publicIpAddresses', concat(variables('pipName'),copyIndex()))]" + } + } + } + ], + "networkSecurityGroup": { + "id": "[resourceId('Microsoft.Network/networkSecurityGroups', concat(variables('nsgName'),copyIndex()))]" + } + } + }, + { + "name": "[concat(variables('pipName'),copyIndex())]", + "copy": { + "name": "pipCopy", + "count": "[length(variables('locationNames'))]" + }, + "type": "Microsoft.Network/publicIpAddresses", + "apiVersion": "[variables('networkApiVersion')]", + "location": "[variables('locationNames')[copyIndex()]]", + "comments": "Public IP for Primary NIC", + "properties": { + "publicIpAllocationMethod": "Dynamic" + } + }, + { + "name": "[concat(variables('nsgName'),copyIndex())]", + "copy": { + "name": "nsgCopy", + "count": "[length(variables('locationNames'))]" + }, + "type": "Microsoft.Network/networkSecurityGroups", + "apiVersion": "[variables('networkApiVersion')]", + "location": "[variables('locationNames')[copyIndex()]]", + "comments": "Network Security Group (NSG) for Primary NIC", + "properties": { + "securityRules": [ + { + "name": "default-allow-rdp", + "properties": { + "priority": 1000, + "sourceAddressPrefix": "*", + "protocol": "Tcp", + "destinationPortRange": "3389", + "access": "Allow", + "direction": "Inbound", + "sourcePortRange": "*", + "destinationAddressPrefix": "*" + } + } + ] + } + } + ], + "outputs": {} +} \ No newline at end of file