mrbear 发表于 2017-6-30 19:41:56

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就创建成功了。
页: [1]
查看完整版本: Azure上采用Json Template从已有的VHD创建VM