Aggiungere un'immagine personalizzata in un modello di set di scalabilità di Azure
Nota
Questo documento illustra i set di scalabilità di macchine virtuali in esecuzione in modalità di orchestrazione uniforme. È consigliabile usare l'orchestrazione flessibile per i nuovi carichi di lavoro. Per altre informazioni, vedere Modalità di orchestrazione per i set di scalabilità di macchine virtuali in Azure.
Questo articolo illustra come modificare il modello di set di scalabilità di base per la distribuzione da un'immagine personalizzata.
Modificare la definizione del modello
In un articolo precedente è stato creato un modello di set di scalabilità di base. Il modello creato verrà ora modificato in modo da realizzare un modello per distribuire un set di scalabilità da un'immagine personalizzata.
Creazione dell'immagine di un disco gestito
Se si dispone già di un'immagine di disco gestito personalizzata (una risorsa di tipo Microsoft.Compute/images
), è possibile ignorare questa sezione.
Prima di tutto aggiungere un parametro sourceImageVhdUri
, ovvero l'URI al BLOB generalizzato in Archiviazione di Azure che contiene l'immagine personalizzata da cui avviare la distribuzione.
},
"adminPassword": {
"type": "securestring"
+ },
+ "sourceImageVhdUri": {
+ "type": "string",
+ "metadata": {
+ "description": "The source of the generalized blob containing the custom image"
+ }
}
},
"variables": {},
Aggiungere poi una risorsa di tipo Microsoft.Compute/images
, ovvero l'immagine del disco gestito basata sul BLOB generalizzato presente nell'URI sourceImageVhdUri
. Questa immagine deve trovarsi nella stessa area del set di scalabilità da cui viene usata. Nelle proprietà dell'immagine specificare il tipo di sistema operativo, la posizione del BLOB ottenuta dal parametro sourceImageVhdUri
e il tipo di account di archiviazione:
"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]",
Nella risorsa del set di scalabilità aggiungere una clausola dependsOn
che fa riferimento all'immagine personalizzata, in modo da essere certi che l'immagine venga creata prima che il set di scalabilità tenti la distribuzione da tale immagine:
"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",
Modifica delle proprietà del set di scalabilità per usare l'immagine del disco gestito
In imageReference
del set di scalabilità storageProfile
anziché specificare editore, offerta, SKU e versione di un'immagine della piattaforma, specificare id
della risorsa Microsoft.Compute/images
:
"virtualMachineProfile": {
"storageProfile": {
"imageReference": {
"id": "[resourceId('Microsoft.Compute/images', omImage')]"
}
},
"osProfile": {
...
}
}
In questo esempio viene usata la funzione resourceId
per ottenere l'ID della risorsa dell'immagine creata nello stesso modello. Se l'immagine del disco gestito è stata creata in precedenza, è necessario indicare invece l'ID di tale immagine. L'ID deve essere nel formato seguente: /subscriptions/<subscription-id>resourceGroups/<resource-group-name>/providers/Microsoft.Compute/images/<image-name>
.
Passaggi successivi
È possibile distribuire il modello precedente seguendo quanto indicato nella documentazione di Azure Resource Manager.
Questa serie di esercitazioni può essere avviata dall'articolo sul modello di set di scalabilità di base.
È possibile vedere come modificare il modello di set di scalabilità di base per distribuire il set di scalabilità in una rete virtuale esistente.
È possibile vedere come modificare il modello di set di scalabilità di base per distribuire il set di scalabilità con un'immagine personalizzata.
È possibile vedere come modificare il modello di set di scalabilità di base per distribuire un set di scalabilità Linux con scalabilità automatica basata su guest.
Per altre informazioni al riguardo, vedere la panoramica sui set di scalabilità.