Snapshots have been around for a while as a means of capturing the state of a data object at a particular point-in-time (PIT), so that it can be rolled back to that state if needed after a logical or physical failure. In the case of the VxRail solution, administrators can create, roll back, or delete VM snapshots using the Snapshot Manager in the vSphere web client. Each VM supports a chain of up to 32 snapshots.
A virtual machine snapshot generally includes the settings (.nvram and .vmx), the power state of all the VM’s associated disks, and optionally, the memory state. Specifically, each snapshot includes:
The snapshot state uses a .Vlms extension and stores the requisite VM information at the time of the snapshot. Each new VM snapshot generates a new .vmsn file. The size of this file varies, based on the options selected during creation. For example, including the memory state of the virtual machine increases the size of the .vmsn file. It typically contains the name of the VMDK, the display name and description, and an identifier for each snapshot.
Other files might also exist. For example, a snapshot of a powered-on virtual machine has an associated snapshot_name_number.vmem file that contains the main memory of the guest OS, saved as part of the snapshot.
A quiesce option is available to maintain consistent point-in-time copies for powered-on VMs. VMware tools may use their own sync driver or use Microsoft’s Volume Shadow Copy Service (VSS) to quiesce not only the guest OS files system, but also any Microsoft applications that understand VSS directives.