Lägga till en anpassad avbildning till en skalningsuppsättningsmall i Azure

Anteckning

Det här dokumentet beskriver Virtual Machine Scale Sets körs i enhetligt orkestreringsläge. Vi rekommenderar att du använder flexibel orkestrering för nya arbetsbelastningar. Mer information finns i Orchesration-lägen för Virtual Machine Scale Sets i Azure.

Den här artikeln visar hur du ändrar den grundläggande skalningsuppsättningsmallen för distribution från en anpassad avbildning.

Ändra malldefinitionen

I en tidigare artikel hade vi skapat en grundläggande skalningsuppsättningsmall. Nu ska vi använda den tidigare mallen och ändra den för att skapa en mall som distribuerar en skalningsuppsättning från en anpassad avbildning.

Skapa en hanterad diskbild

Om du redan har en anpassad hanterad diskbild (en resurs av typen Microsoft.Compute/images) kan du hoppa över det här avsnittet.

Lägg först till en sourceImageVhdUri parameter, som är URI:n till den generaliserade bloben i Azure Storage som innehåller den anpassade avbildningen som ska distribueras från.

     },
     "adminPassword": {
       "type": "securestring"
+    },
+    "sourceImageVhdUri": {
+      "type": "string",
+      "metadata": {
+        "description": "The source of the generalized blob containing the custom image"
+      }
     }
   },
   "variables": {},

Lägg sedan till en resurs av typen Microsoft.Compute/images, som är den hanterade diskens avbildning baserat på den generaliserade bloben som finns på URI sourceImageVhdUri. Den här avbildningen måste finnas i samma region som skalningsuppsättningen som använder den. I egenskaperna för avbildningen anger du OS-typ, blobens plats (från parametern sourceImageVhdUri ) och lagringskontotypen:

   "resources": [
     {
+      "type": "Microsoft.Compute/images",
+      "apiVersion": "2019-03-01",
+      "name": "myCustomImage",
+      "location": "[resourceGroup().location]",
+      "properties": {
+        "storageProfile": {
+          "osDisk": {
+            "osType": "Linux",
+            "osState": "Generalized",
+            "blobUri": "[parameters('sourceImageVhdUri')]",
+            "storageAccountType": "Standard_LRS"
+          }
+        }
+      }
+    },
+    {
       "type": "Microsoft.Network/virtualNetworks",
       "name": "myVnet",
       "location": "[resourceGroup().location]",

I skalningsuppsättningsresursen lägger du till en dependsOn -sats som refererar till den anpassade avbildningen för att se till att avbildningen skapas innan skalningsuppsättningen försöker distribuera från avbildningen:

       "location": "[resourceGroup().location]",
       "apiVersion": "2019-03-01-preview",
       "dependsOn": [
-        "Microsoft.Network/virtualNetworks/myVnet"
+        "Microsoft.Network/virtualNetworks/myVnet",
+        "Microsoft.Compute/images/myCustomImage"
       ],
       "sku": {
         "name": "Standard_A1",

Ändra skalningsuppsättningsegenskaper för att använda den hanterade diskavbildningen

imageReference I för skalningsuppsättningen storageProfileanger du id för resursen i stället för att ange utgivare, erbjudande, sku och version av en plattformsbildMicrosoft.Compute/images:

  "virtualMachineProfile": {
    "storageProfile": {
      "imageReference": {
        "id": "[resourceId('Microsoft.Compute/images', omImage')]"
      }
    },
    "osProfile": {
      ...
    }
  }

I det här exemplet använder du resourceId funktionen för att hämta resurs-ID:t för avbildningen som skapats i samma mall. Om du har skapat avbildningen av den hanterade disken i förväg bör du ange ID:t för avbildningen i stället. Det här ID:t måste vara av formatet: /subscriptions/<subscription-id>resourceGroups/<resource-group-name>/providers/Microsoft.Compute/images/<image-name>.

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.