BF.3 | B2B | Snapshots

During my time I have come across many people that were using VMware some options available in VMware vSphere but not really knowing how they work and why.

BF.3 | B2B | Snapshots

I strongly believe that understanding something allows us to better use our tools and use them for their intended purpose and getting rid of some misconceptions is in my opinion vital.

The most basic example of tools mis-understood or misused are snapshots.

To be a backup or not to be a backup?

There have been multiple cases where I was told something along the lines of: "We dont have the original VM but we have snapshots, can you recover our VM?" or "I was cleaning up the datastore manually and deleted/moved some files that looked weird, somewhat like disks but the VM only has so many disks i.e. 1 and not 6 like in the directory, now my users are screaming that they lost their data, can you revocer it?"

Now the simple answer to these questions is "No".


Snapshots are not backups due to their nature. They only contain the change data/blocks from the time the snapshot is created until the next snapshot is created or the snapshot is removed. As VMware is OS agnostic it is not aware what data/files/changes are being written to these blocks and therefore does not provide a restore capabilities.

Some specific aplications may require some specific snapshots i.e. a quiesced or application consistent snapshot for sensitive VMs like Exchange or DB's. Otherwise standard snapshots usually suffice.

What are Snapshots then?

Think of snapshots like this, imagine your VM is lying flat on your desk with its OS and application on it making a nice looking picture, all is good but you want to make some changes to some apps or apply some patches to the OS, if you would not want to ruin the original picture you would place a seethrough layer on top of the picture like a thin glass pane or other film before applying any changes to see how the end result will look before committing the changes to the picture in case something goes wrong.


Snapshots let you do just that to the VM. They are great if you want to update your OS or applications but are unsure if the VM will be still stable after. If you snapshot the VM, any changes you apply will be saved in the snapshot and not in the 'base image' of the VM and this will be completely transparent to the OS, so if anything goes wrong, you can just wipe these changes and start anew.

A word of warning

You have to keep in mind that snapshots should be used on a short time basis as they have ability to grow as they are separate entities on your datastore and if allowed, will potentially grow until there is no more space on the datastore, so close monitoring of snapshotted VMs and the datastores they are using is highly advisable.

Have you ever had to explain the difference between snapshots and backups to your customer? I can't wait to hear your stories @vNowakB or #sshguru

Related Article