Hyper-V Program Manager
Here is something you probably did not know – dynamic memory can actually help with live migration of virtual machines. When you live migrate a virtual machine that has dynamic memory enabled, we perform some tricks to help with the overall migration process. Particularly, when you live migrate the virtual machine, we do not add more memory to the virtual machine for the entire process (okay, there is a timeout where if things are taking too long we will assume that something has gone wrong and will start normal operations again).
We also “squeeze” the virtual machines prior to live migration. This process is a little bit complicated – so lets dive in:
First we look at the priority of the virtual machine. This determines how much we squeeze the virtual machine by. A low priority virtual machine will get squeezed down to “only as much memory as it needs”, while a high priority virtual machine will be squeezed down to “half the memory buffer you requested” (and middle priority will be somewhere in the middle). This memory squeeze has two advantages:
Once we have completed the live migration – we return all the dynamic memory behaviors back to normal and the virtual machine is able to continue on its way.
Now it would be nice to have Dynamic Memory available on ALL Microsoft OS ;)
Is it possible that VMs on the destination server aren't squeezed? I believe I encountered some problems when trying to migrate a VM to a host that already was under memory pressure. It wouldn't let me migrate and live with the consequences of increased memory pressure. It would be nice if that was an option.
Our hyper-v host crashed but our VMs were stored remotely on a SAN so they are still intact. We cant use import to recover them because they werent exported and when we create a new VM and attach the old vhd file the snapshots arent there. Even when the snapshot link is pointed to their location they dont show up in h-v anager. How can they be reattached to the old vhd in a new VM?