LolAsLol
LolAsLol

Reputation: 37

how to create VM with Json arm template using define VHD (or disk,snapshot)?

The question in the title: "how to create VM with Json arm template using define VHD (or disk,snapshot) in azure?" Thanks for your help!

Upvotes: 1

Views: 1885

Answers (1)

Charles Xu
Charles Xu

Reputation: 31454

You can create the vm from VHD file through the template. The steps are that you can upload the VHD file to an Azure storage account and create a managed disk from the VHD file. Then attach it to the VM.

Create the managed disk from the VHD file:

{
      "type": "Microsoft.Compute/disks",
      "apiVersion": "2018-04-01",
      "name": "[variables('diskName')]",
      "location": "[parameters('location')]",
      "properties": {
        "creationData": {
          "createOption": "Import",
          "sourceUri": "[parameters('osDiskVhdUri')]"
        },
        "osType": "[parameters('osType')]"
      }
    }

Attach the managed disk to the VM:

"storageProfile": {
          "osDisk": {
            "osType": "[parameters('osType')]",
            "createOption": "Attach",
            "managedDisk": {
              "id": "[resourceId('Microsoft.Compute/disks', variables('diskName'))]"
            }
          }
        }

You can get the whole template here.

Upvotes: 1

Related Questions