This is my first time doing VM migration or import/export of VM from server 2008 R2 to server 2012 R2. At first, I used the export function from the Hyper-V in server 2008 R2 and I notice the export result was different from the server 2012 R2. Thus, when I try to import the VM from server 2008 R2 to server 2012 R2, it was unable to recognize.
Always make a backup copy! Don’t modify the original!
This is because 2008 or 2008 R2 are legacy servers, and choosing the export feature to export the VM will result of export EXP file instead of XML file. In server 2012 R2, VM that is exported has XML file.
The best way to import VM from legacy server is to copy the entire VM folder to server 2012 R2. When I mean entire VM folder, means its VHD and etc..
This VM that I am importing does not have any checkpoints or snapshot, so I am unsure that do you required to delete the copied snapshots before you import.
So what I did was,
- At server 2008 R2, shut down the VM
- Locate the entire Data folder of the VM in File Explorer
- Right click the folder > Properties > Share > Advanced Sharing > Add the specific user account (server 2012 R2) and the computer (server 2012 R2) > Full Control
- Is up to your choice on how you want your destination server to retrieve the source information (VM), it could be via a Network Share, a USB, or an external Hard Disk
- At server 2012 R2, open file explorer
- At the top bar, type “\\<2008 R2 server name/IP address>\<vm folder name>\”
- Copy the entire folder and paste it into server 2012 R2 (your comfortably location/driver/directory)
- Remember to remove the share permission of the folder in server 2008 R2, after you finish copying the folder from server 2008 R2 to server 2012 R2
- Create a new folder in server 2012 R2 and rename it as your actual/original VM’s folder naming in server 2008 R2, this folder will be the new location of your VM
- Go to Hyper-V in server 2012 R2 > select the Import Virtual Machine at the right side bar
- Browse and locate the VM folder that you just copied
- Select the import type “Copy the virtual machine“, this allows you to create a new unique ID of the virtual machine and also allows you to choose your new location to store this VM in sever 2012 R2
- Make sure the new location are browse to the new folder that you just created in server 2012 R2
- Then you click next > finish and wait for the importing to complete
- Make sure the VM in server 2008 R2 is Shut down
- Start or Boot up the VM in server 2012 R2 (If required to change IP address of the VM then change)
- Everything is fine and monitor for 48 hours, then only decide to remove the VM in server 2008 R2
After import the VM, Hyper-V do not start the VM automatically. You have to start the VM manually, after import completed.