Copy VHD to Windows Azure Requirements
Find out how to copy a VM to Windows Azure by meeting certain requirements and then using a Windows PowerShell cmdlet.
March 16, 2014
Q: I want to copy to Windows Azure a virtual hard disk (VHD) containing an OS for use with a virtual machine (VM)--is there anything special I need to do?
A: Windows Azure uses Hyper-V as its hypervisor, which means a VM running on Hyper-V will run on Windows Azure with the following conditions:
Make sure it is a Generation 1 VM.
Make sure it's VHD and not VHDX (if you have a VHDX, convert it with the Convert-VHD Windows PowerShell cmdlet) and make sure the size is 1023GB or less.
Ensure the VM only has a single network adapter andthat it is of type synthetic and NOT legacy.
Ensure the network connection is configured to obtain its IP address via DHCP (static IP addresses within the VM will not work).
Ensure Remote Desktop is enabled (to enable connectivity to it).
Install at least the Windows Server 2012 Hyper-V Integration Services version in the VM.
To be SUPPORTED in Windows Azure, it must be a 64-bit OS and one of the Windows Azure supported OSs (however, other OSs including 32-bit will work, they would be completely unsupported; I've run Windows 2003 32-bit in Windows Azure as a test and it worked fine).
The VHD does not have to be fixed type but will be converted to fixed by the Add-AzureVhd PowerShell cmdlet when it's copied into Windows Azure.
After you've ensured all of the above is true, copy the VHD into Windows Azure and set it as a Windows OS disk by using PowerShell (replace with your VHD name, storage account, etc.). Once the below is done, create a new VM that uses this new disk.
PowerShell script to move a VHD into Windows Azure and attach it to a VM:
#Moving a VHD into Azure and attaching to a VM$sourceVHD = "D:SoftwareVHDswin2k3.vhd"$destinationVHD = "https://.blob.core.windows.net/vhds/win2k3.vhd"Add-AzureVhd -LocalFilePath $sourceVHD -Destination $destinationVHD `-NumberOfUploaderThreads 5Add-AzureDisk -DiskName 'win2k3' -MediaLocation $destinationVHD `-Label 'win2k3' -OS "Windows"
About the Author
You May Also Like