F20 Self Contained Change: Snapshot and Rollback Tool

Jaroslav Reznik jreznik at redhat.com
Wed Jul 17 10:39:19 UTC 2013

= Proposed Self Contained Change: Snapshot and Rollback Tool =

Change owner(s): Stephen Gallagher <sgallagh at redhat.com>, Colin Walters 
<walters at redhat.com>

With the advent of thinly-provisioned LVM pools, it has become possible for us 
to implement full-system LVM snapshotting for recording rollback points. We 
are planning to support this for yum updates and eventually fedup upgrades 
going forwards. This change request notes the addition of new tools provided 
by the roller-derby project to present an interface and a CLI for managing and 
initiating rollbacks.  

== Detailed description ==
The roller-derby project will be providing a library and a CLI for creating, 
labeling and managing LVM snapshots (plus non-LVM backups of /boot), oriented 
primarily towards rpm-managed data, but useful beyond that. The yum plugin 
"yum-plugin-fs-snapshot" will be updated to consume this library and save the 
system state in a compatible format. The roller-derby CLI tool will provide an 
interactive and scriptable interface for manipulating these snapshots and 
determining when to remove older ones. It will also allow the tagging of 
snapshots as "known-good", to be skipped when automatically-trimming for 
space. The roller-derby project will likely provide a small daemon to keep 
track of the available space in the LVM pool to proactively clean up snapshots 
before the system runs out of space.

In order to prevent "loss" of data when rebooting into an snapshot, the 
roller-derby CLI will allow saving a snapshot of the current state before 
rolling back and will provide tools to allow mounting of that current state to 
recover changes that have occurred since the rollback point. 

== Scope ==
The scope of this project is the completion of the initial release of the 
roller-derby project and the inclusion of thinly-provisioned LVM as an option 
in the Anaconda installer [1].

Proposal owners: We need to complete the roller-derby project. Other than the 
Anaconda change referenced above, all dependencies are available in Fedora 

Other developers: OS Installer Support for LVM Thin Provisioning 
Release engineering: N/A (not a System Wide Change) 
Policies and guidelines: N/A (not a System Wide Change) 

[1] https://fedoraproject.org/wiki/Changes/InstallerLVMThinProvisioningSupport
devel-announce mailing list
devel-announce at lists.fedoraproject.org

More information about the devel mailing list