Azure上采用Json Template从已有的VHD创建VM

从已有的VHD创建VM是使用Azure中经常要操作的内容。

本文将介绍如何采用Json Template从已经有的VHD创建VM。

一、准备VHD

在我的Azure账户中选择一台VM,如下图:

查看其磁盘信息:

磁盘所在的链接:https://gwzdiskdisks420.blob.core.chinacloudapi.cn/vhds/hwvntptest0220170401203500.vhd

然后将其删除,在ARM的portal中,删除了虚拟机,VHD还是保留的。注意它所在的Vnet信息:

删除完成后,确认此VM的Disk还存在。

二、通过VHD创建VM

1. Json Template

在GitHub上找到相应的Json Template:

打开Azuredeploy.json文件:

链接如下:

https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/201-vm-specialized-vhd-existing-vnet/azuredeploy.json

2. 通过powershell从这个VHD创建VM

打开powershell_ise,登录Azure China。然后通过Powershell命令创建VM:

New-AzureRmResourceGroupDeployment -Name vhd -ResourceGroupName vnet-bgp -Mode Incremental ·
-TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/201-vm-specialized-vhd-existing-vnet/azuredeploy.json ·
-vmName hwfmvhd -osType Linux -osDiskVhdUri https://gwzdiskdisks420.blob.core.chinacloudapi.cn/vhds/hwvntptest0220170401203500.vhd ·
-vmSize Standard_D1 -existingVirtualNetworkName vnet-bgp-3 -subnetName vlan1 ·
-existingVirtualNetworkResourceGroup vnet-bgp -dnsNameForPublicIP hwfmvhd     DeploymentName : vhd ResourceGroupName : vnet-bgp ProvisioningState : Succeeded Timestamp : 4/12/2017 7:08:49 AM Mode : Incremental TemplateLink : Uri : https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/201-vm-specialize d-vhd-existing-vnet/azuredeploy.json ContentVersion : 1.0.0.0   Parameters : Name Type Value =============== ========================= ========== vmName String hwfmvhd osType String Linux osDiskVhdUri String https://gwzdiskdisks420.blob.core.chinacloudapi.cn/vhds/hwvntptest0220170401203500.vhd vmSize String Standard_D1 existingVirtualNetworkName String vnet-bgp-3 existingVirtualNetworkResourceGroup String vnet-bgp subnetName String vlan1 dnsNameForPublicIP String hwfmvhd   Outputs : DeploymentDebugLogLevel

这样VM就创建成功了。

posted @ 2017-04-12 15:10  衡子  阅读(661)  评论(0编辑  收藏  举报