Why is my virtual machine "Paused-Critical"? [Hyper-V]

Virtual machines will go into the “Paused-Critical” state under Hyper-V if we detect that we are going to run out of space for the virtual hard disks.  If we were to run out of space for expanding a dynamic or differencing virtual hard disk – we would start failing disk write operations inside the virtual machine.  The result would most likely be that the guest operating system would crash.

To avoid this problem we periodically poll the storage that is being used for the virtual hard disks.  If the free space falls under 2 gigabyte we will start to log warning messages in the event log.  If the free space falls under 200 megabyte we will pause the virtual machine and mark it as “Paused-Critical”.

One thing that often trips people up is if they have their virtual hard disks configured on one drive – but have left their snapshot files stored on the system drive.  Once a virtual machine snapshot has been taken – the base virtual hard disk stops expanding and the snapshot file stores new data that is written to the disk – so it is critical that there is enough space in the snapshot storage location.

One final note to make – due to a bug in the current version of Hyper-V – it will file warning messages and place the virtual machine into paused-critical even if the virtual machine is using fixed size virtual hard disks, and the drive that is storing the disk runs out of space for some other reason.

Cheers,
Ben