Ask Learn
Preview
Please sign in to use this experience.
Sign inThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Before moving further, please make sure you have Azure PowerShell installed:
How to install and configure Azure PowerShell
For basic information about using Azure Powershell with Resource Manager (ARM), please have a look at:
Using Azure PowerShell with Azure Resource Manager
In this example, the following variables are being used:
Resource Group: ARMGROUP
Original VM Name: LinuxVM
Location: southcentralus
NIC Name: LinuxVM-NIC
Storage Account: ARMSTORAGE
VHD URI: https://ARMSTORAGE.blob.core.windows.net/vhds/linuxvm.vhd
You should be able to get a list of parameters from a given VM by using:
Get-AzureRmVm -ResourceGroupName $rgName -Name $vmName
It also assumes that you have logged in with the azure powershell using:
Add-AzureRmAccount
And that your subscription is set using:
Set-AzureRmContext -SubscriptionID <YourSubscriptionId>
Deleting a VM on ARM using PowerShell
Remove-AzureRmVm -Name "LinuxVM" -Force -ResourceGroupName "ARMGROUP"
Recreating the VM from the Original VHD:
Define Resource Group and Location:
$rgName="<Resource Group>"
$location="<Location>"
Create a new VM config:
$vmName="<VM Name>"
$vmSize="<VM Size>"
$vmc = New-AzureRmVmConfig -VMName $vmName -VMSize $vmSize
Add a network interface (in this example, we are reusing the existing NIC from the previous VM)
$nic = Get-AzureRmNetworkInterface -Name "<NIC Name>" -ResourceGroupName $rgName
Add-AzureRmVmNetworkInterface -VM $vmc -Id $nic.Id
Set the OS disk:
$vhdName="<VHD Name>"
$vhdURI="<VHD URI>"
Set-AzureRmVmOSDisk -VM $vmc -Name $vhdName -VhdURI $vhd_uri -Linux -CreateOption Attach
Create the VM
New-AzureRmVm -ResourceGroupName $rgName -Location $location -VM $vmc
Example with the parameters in this article:
$rgName="ARMGROUP"
$location="southcentralus"
$vmName="LinuxVM"
$vmSize="Standard_A1"
$vmc = New-AzureRmVmConfig -VMName $vmName -VMSize $vmSize
$nic = Get-AzureRmNetworkInterface -Name "linuxvm-nic" -ResourceGroupName $rgName
Add-AzureRmVmNetworkInterface -VM $vmc -Id $nic.Id
$vhdName="linuxvm.vhd"
$vhdURI="https://linuxstoragelrs.blob.core.windows.net/vhds/linuxvm.vhd"
Set-AzureRmVmOSDisk -VM $vmc -Name $vhdName -VhdUri $vhdURI -Linux -CreateOption Attach
New-AzureRmVm -ResourceGroupName $rgName -Location $location -VM $vmc
Please sign in to use this experience.
Sign in