What does Snapshots, Backups, and Incremental Snapshots mean in CloudStack #12475
Replies: 11 comments 21 replies
|
Moreover, in the
And, I came across this documentation page that mentions snapshot types: https://cwiki.apache.org/confluence/display/CLOUDSTACK/VM+Snapshots However, the information there is not detailed enough for me to fully understand the differences, so I would appreciate a more thorough explanation. |
|
@daviftorres there are pro and con for the different snapshot and backup options. Find them here: Instance snapshot:
I hopefully have covered most of the important criteria to be considered. |
|
Can this be used for Linstor primary storage ? |
|
@bilalinamdar What exactly to do you want to do on the Linstor storage? |
|
@bilalinamdar see this article from @rajujith: https://www.shapeblue.com/nas-backup-and-recovery-plugin/ The NAS Backup and Recovery Plugin currently supports NFS (Network File System) and operates as a straightforward B&R recovery provider, making it both storage and vendor-agnostic. This enables administrators to do efficient backups of running instances, regardless of their source storage. It also can be used to create backups of stopped instances stored on both NFS and local primary storage. However, please note that restore operations are currently supported only for NFS and local primary storage. |
|
From an operator/MSP perspective, we treat snapshots and backups as separate things even where the underlying CloudStack terminology overlaps. We generally think of a snapshot as a platform-level point-in-time mechanism, whereas a backup service needs to cover the wider operational requirements: independent retention, policy management, recovery workflows, monitoring, reporting and ideally recovery into another location for DR. At Quadris, we use Sendense for backup and DRaaS across our CloudStack environment rather than relying solely on CloudStack snapshots. One of our requirements was support for block-storage environments as well as CloudStack-aware recovery. Full disclosure: I am involved with Sendense, but we have also been running it operationally in the Quadris cloud for around six months. From our perspective, the important question is less about whether CloudStack calls an object a “snapshot” or “backup,” and more about whether the overall design meets the required RPO, RTO, retention and failure-domain requirements. |
|
Hi Davi, This is a very useful discussion, especially because the terms “snapshot” and “backup” can easily get mixed together when looking at CloudStack from an operational or SLA perspective. From a practical CloudStack perspective, I think it helps to separate the concepts into three areas: 1. Volume Snapshot A CloudStack volume snapshot represents the state of a volume at a particular point in time. It is primarily useful for rollback, cloning, recovery, or creating a new volume from a previous state. However, the actual storage behavior is dependent on the underlying storage provider. A CloudStack snapshot should therefore not automatically be interpreted as a traditional array-level snapshot or as a standalone disaster-recovery backup. 2. Backup A backup is better viewed as a copy intended for longer-term retention and recovery, preferably on storage that is independent from the primary workload/storage environment. This distinction becomes important operationally. If the underlying storage is lost or the storage system itself becomes unavailable, a snapshot located on that same storage infrastructure may not provide the same protection as an independent backup. 3. Incremental Volume Snapshots in CloudStack 4.22 The new incremental snapshot capability makes the distinction even more interesting. Instead of repeatedly transferring the entire volume for every snapshot, subsequent snapshots can represent only the data that has changed since the previous snapshot. This can significantly reduce the amount of data transferred and stored. The important point, however, is that “incremental” describes how the changed data is captured/stored; it does not automatically mean that the resulting snapshot should be treated as a complete independent backup. For example, conceptually: The complete point-in-time state may depend on the base data plus the required incremental changes. For KVM + NFS, I would therefore avoid describing CloudStack snapshots simply as “full backups” or “incremental backups” without considering the underlying implementation and storage provider. The other important distinction is retention and failure domain. A snapshot can be extremely useful for:
A backup is generally intended for:
So, from an operational perspective, I would use the following rule of thumb: Snapshot = convenient point-in-time recovery Backup = independent recovery copy Incremental snapshot = optimized way of maintaining point-in-time states by tracking changed data There is certainly some overlap between these concepts, but they should not be treated as interchangeable when designing an SLA or disaster-recovery strategy. It would also be useful to document the behavior separately for each storage backend, because the implementation details can differ significantly between KVM/NFS, Ceph, local storage, and other storage providers. That would make the documentation much clearer and prevent administrators from assuming that a CloudStack snapshot automatically provides the same protection as an independent backup. Regards, Ryan P. |






















Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Dear CloudStack fellows,
Recently, Lucian mentioned the new 4.22 feature that "enables incremental volume snapshots" (https://www.youtube.com/watch?v=ZZi3CpX6u2I&t=680s).
I would like to open a discussion so we can collaboratively clarify the different types of snapshots and backups that CloudStack currently supports, and how they actually work.
First, there is an important conceptual distinction between snapshots and backups:
From there, things become more nuanced:
Where I am still unclear is how these concepts map into the Apache CloudStack ecosystem:
For the sake of simplicity, I am focusing first on KVM + NFS but it is not limited to.
These distinctions matter, especially when SLAs, compliance requirements, and operational policies treat snapshots and backups very differently.
I encourage others to share their understanding and explanations. My goal is to consolidate this discussion and translate it into clearer documentation afterward.
Regards,
Davi Torres
All reactions