Referera till ett befintligt virtuellt nätverk i en Azure-skalningsuppsättningsmall

Den här artikeln visar hur du ändrar den grundläggande skalningsuppsättningsmallen för distribution till ett befintligt virtuellt nätverk i stället för att skapa ett nytt.

Förutsättningar

I en tidigare artikel hade vi skapat en grundläggande skalningsuppsättningsmall. Du behöver den tidigare mallen så att du kan ändra den för att skapa en mall som distribuerar en skalningsuppsättning till ett befintligt virtuellt nätverk.

Identifiera undernät

Lägg först till en subnetId parameter. Den här strängen skickas till skalningsuppsättningens konfiguration, så att skalningsuppsättningen kan identifiera det förskapade undernätet som virtuella datorer ska distribueras till. Den här strängen måste vara i formatet:

/subscriptions/<subscription-id>resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<virtual-network-name>/subnets/<subnet-name>

Om du till exempel vill distribuera skalningsuppsättningen till ett befintligt virtuellt nätverk med namnet myvnet, undernätet mysubnet, resursgruppen myrgoch prenumerationen 00000000-0000-0000-0000-000000000000blir undernäts-ID:t:

/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet.

      },
      "adminPassword": {
        "type": "securestring"
+    },
+    "subnetId": {
+      "type": "string"
      }
    },

Ta bort extra virtuell nätverksresurs

Ta sedan bort den virtuella nätverksresursen från matrisen resources eftersom du använder ett befintligt virtuellt nätverk och inte behöver distribuera ett nytt.

    "variables": {},
    "resources": [
-    {
-      "type": "Microsoft.Network/virtualNetworks",
-      "name": "myVnet",
-      "location": "[resourceGroup().location]",
-      "apiVersion": "2018-11-01",
-      "properties": {
-        "addressSpace": {
-          "addressPrefixes": [
-            "10.0.0.0/16"
-          ]
-        },
-        "subnets": [
-          {
-            "name": "mySubnet",
-            "properties": {
-              "addressPrefix": "10.0.0.0/16"
-            }
-          }
-        ]
-      }
-    },

Ta bort beroendesats

Det virtuella nätverket finns redan innan mallen distribueras, så du behöver inte ange någon dependsOn sats från skalningsuppsättningen till det virtuella nätverket. Ta bort följande rader:

      {
        "type": "Microsoft.Compute/virtualMachineScaleSets",
        "name": "myScaleSet",
        "location": "[resourceGroup().location]",
        "apiVersion": "2019-03-01",
-      "dependsOn": [
-        "Microsoft.Network/virtualNetworks/myVnet"
-      ],
        "sku": {
          "name": "Standard_A1",
          "capacity": 2

Skicka undernätsparameter

Slutligen skickar du in parametern subnetId som angetts av användaren (i stället för att använda resourceId för att hämta ID:t för ett virtuellt nätverk i samma distribution, vilket är vad den grundläggande mallen för livskraftiga skalningsuppsättningar gör).

                        "name": "myIpConfig",
                        "properties": {
                          "subnet": {
-                          "id": "[concat(resourceId('Microsoft.Network/virtualNetworks', 'myVnet'), '/subnets/mySubnet')]"
+                          "id": "[parameters('subnetId')]"
                          }
                        }
                      }

Nästa steg

Du kan distribuera föregående mall genom att följa Azure Resource Manager-dokumentationen.

Du kan starta den här självstudieserien från den grundläggande artikeln om skalningsuppsättningsmallar.

Du kan se hur du ändrar den grundläggande skalningsuppsättningsmallen för att distribuera skalningsuppsättningen till ett befintligt virtuellt nätverk.

Du kan se hur du ändrar den grundläggande skalningsuppsättningsmallen för att distribuera skalningsuppsättningen med en anpassad avbildning.

Du kan se hur du ändrar den grundläggande skalningsuppsättningsmallen för att distribuera en Linux-skalningsuppsättning med gästbaserad autoskalning.

Mer information om skalningsuppsättningar finns på översiktssidan för skalningsuppsättningar.