使用我自己的vhd在资源组中创建VM

时间:2016-02-03 22:38:54

标签: powershell azure azure-powershell azure-resource-manager

在经典门户/ ASM中,我可以使用一些简单的PowerShell cmdlet来使用我自己的vhd创建VM。一旦设置了变量,流程几乎就是Add-AzureVhd> Add-AzureDisk>新-AzureVm。

对于我的生活,我找不到任何关于使用PowerShell和我自己的vhd创建ARM VM的文档。

有人能指出我正确的方向吗?

编辑:这是我正在使用的代码。

$rgName = "somerg"
$location = "centralus"
$storageName = "somestorage"
$storageType = "Standard_LRS"

$nicname = "client1nic"
$subnet1Name = "Subnet-1"
$vnetName = "somevnet"
$vnetAddressPrefix = "10.0.0.0/16"
$vnetSubnetAddressPrefix = "10.0.0.0/24"

$vmName = "Client1"
$vmSize = "Standard_A2"
$osDiskName = $vmName + "osDisk"

$pip = New-AzureRmPublicIpAddress -Name $nicname -ResourceGroupName $rgName                 -Location $location -AllocationMethod Dynamic
$nic = New-AzureRmNetworkInterface -Name $nicname -ResourceGroupName $rgName    -Location $location -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id
$vm = New-AzureRmVMConfig -VMName $vmName -VMSize $vmSize$vm = Add-  AzureRmVMNetworkInterface -VM $vm -Id $nic.Id
$osDiskUri = "https://somestorage.blob.core.windows.net/vhds/Client1.vhd"
$vm = Set-AzureRmVMOSDisk -VM $vm -Name $osDiskName -VhdUri $osDiskUri -  CreateOption attach -Windows

New-AzureRmVM -ResourceGroupName $rgName -Location $location -VM $vm -  Verbose -Debug

1 个答案:

答案 0 :(得分:1)

使用Set-AzureRmVMOSDisk创建操作系统磁盘时,

-CreateOptions有三个选项。第一个是fromImage,它从先前的图像创建一台机器。

然后attach附加一个预先存在的磁盘,这是您需要的选项。

还有empty但我还没有找到用例!

无论如何,这应该做你需要的。

Set-AzureRmVMOSDisk -VM $vm -Name "test" -VhdUri $uri -CreateOption attach -Windows 

包裹在VM Create script

的其余部分