Score:1

GCP disk snapshots: Would losing the full snapshot render the incremental snapshots useless?

in flag

On GCP, when you do periodic snapshots of disks, the first snapshot is a full snapshot of the disk and the following snapshots consists of only the deltas of the previous snapshots. If a snapshot is deleted and it has other snapshots dependent on it, the changes required for snapshot to be usable for restoring are moved to the following snapshot. This process is detailed here.

What would happen if a snapshot would fail in such a way that this process didn't happen? If the first snapshot would somehow get deleted or corrupted and the data would not be passed to the second snapshot, would that render all the following snapshots unusable or would GCP now consult the original disk and construct the first snapshot anew or just do a new full snapshot?

If both the original disk and the full snapshot would somehow become corrupted, would you be just terribly out of luck with no chance to recover the disk at all?

Score:1
cn flag

Unless Google were to release the actual software source code and algorithms for their snapshot software ...

Snapshots are basically copy-on-write systems with each snapshot being a list of pointers to copies of the changed data (disk blocks). If the snapshot software failed, the type of bug would determine if recovery is possible. Assume all would be lost and plan for that event.

Real-world backup designs never trust only one backup mechanism or one backup storage location or one copy of a backup. For high-value data, I use three forms of backup at all times plus a cold standby.

Score:0
cn flag

Google Cloud regional or multi-regional storage is built around replicating several copies of blobs, intra-zone, between zones, and between regions. In theory, even a data center burning to the ground will result in very little data loss. Snapshots are stored like this, and some types of disks.

Snapshots automatically maintain at least one full with incrementals. This cannot be controlled with the API, not as far as I can tell. Usually I would want the option of all fulls for a simpler recovery, but if this can reliably do incremental recovery with an easy interface, that could work.

Yes, the storage backend losing a full snapshot could be catastrophic to point in time recovery. There may be data only in the full that is not in any incremental or the online disk. Unlikely given the architecture and their ops team, but would be a high impact event. At least snapshot create docs claim that you cannot delete the online disk in some failure modes:

If you attempt to create a snapshot from a zonal persistent disk and the snapshotting process fails, you won't be able to delete the original zonal persistent disk until you have cleaned up the failed snapshot. This failsafe helps to prevent the accidental deletion of source data in the event of an unsuccessful backup.

Simple fulls every time is not an option with the snapshot feature. Accomplishing that would imply adding your own additional backups. Perhaps use snapshots as the source, but archiving them somewhere. Additional cost and complexity, but not entirely relying on snapshots.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.