Proxmox Snapshots
I was surprised that Proxmox didn't behave as I was expecting with regards to snapshots, so I decided to create the table below of what is supported with regards to snapshots when using the different storage types.
Ability | Qcow2 | ZFS |
---|---|---|
Rollback to any snapshot point without losing snapshots. | Yes | No - loses all snapshots after the selected snapshot to restore from. |
Create clone from any snapshot point | Yes | No - will only allow from latest snapshot |
Restore from backup and retain snapshots | No | No |
Create Clone With Snapshots | No | No |
Workarounds
People have pointed out in the forums [1] [2] , that one can workaround these limitations with Qcow2 by manually copy/pasting the original virtual machine's disk images and snapshot files, into the clone's area, but this is a lot of manual effort in the CLI, and won't save you if what your trying to do is restore from a backup because your original virtual machine got corrupted for whatever reason.
As for ZFS, one should in theory be able to make use of ZFS send/recieve to create full clones of virtual machines at any point in time safely. This can also be used to send the virtual machines to a remote backup server in order to backup your virtual machine with all of its snapshots, but again this requires manual effort and configuration. If you are interested in this, you may wish to look at using Sanoid or ZnapZend to automate taking snapshots and sending them to your remote backup server. If I find the time, I think it would be worth me putting together a PHP phar CLI tool specifically for performing these actions on Proxmox servers to make life easy.
First published: 28th March 2024