Checkpoints enable you to capture point-in-time snapshots of a VM. This gives you an easy method of quickly restoring to a known working configuration, making them useful before installing or updating an application. When a checkpoint is created, the original VHD becomes read-only, and all changes are captured in an AVHD file. Conversely, when a checkpoint is deleted, the contents of the AVHD are merged with the original disk, which becomes the primary writable file.
Prior to Windows Server 2016, the only checkpoint type available was the standard checkpoint, which takes a snapshot of both the disk and the memory state at the time that the checkpoint is taken. But Windows Server 2016 introduces production checkpoints, with uses the Volume Shadows Copy Service on Windows guests or File System Freeze on Linux guests. This enables you to take a consistent snapshot of a VM without the running memory.
Production checkpoints are used by default on Windows Server 2016. And if taking production checkpoint fails, by default the host attempts to create a standard checkpoint.
You can configure the type of checkpoint a VM uses by using the Set-VM cmdlet.
To set the VM to only use production checkpoints, without the ability to fall back to a standard checkpoint, replace the Production option with ProductionOnly.
Checkpoints can also be configured from Hyper-V Manager by editing the settings of a VM.
Enable Nested Virtualization on Hyper-V and Windows Server 2016
As you should know, through the latest version of Hyper-V coming with Windows Server 2016 & Windows 10 you can enable Nested Virtualization, which means you can install Hyper-V role on a Hyper-V virtual machine.
But in order to activate this functionality you need to meet some requirements, otherwise you will face this kind of error.
Dynamic Memory must be disabled on the virtual machine containing the nested instance of Hyper-V
VM must have more than 1 vCPU
MAC address Spoofing must be enabled on the NIC attached to the virtual machine. This setting can be found in the advanced settings under the NIC in the virtual machine’s properties.
Virtual Machine version must be 8.0
Virtualization Extensions need to be exposed to the VM as seen below.
By default the virtualization extensions setting is disabled. To enable this setting, you have to use this command: