Snapshots are virtual copies of disk storage. These copies can be used for backup and recovery purposes, as well as production testing. This paper discusses how to use snapshots in a virtualized storage environment. In one such environment, a storage area network (SAN), multiple servers can access storage on multiple disk arrays. Storage virtualization can be used to allow the servers to access the storage as virtual volumes instead of physical ones.
In a dynamic virtualized environment, where servers and storage may enter or leave at any time, issues such as maintaining data consistency might arise when using snapshots. To address those issues, this paper introduces the V:DRIVE storage virtualization solution. The core component of V:DRIVE is a clustered metadata appliance that manages SAN environment information, including the mapping of physical volumes to logical volumes on each storage pool. The paper describes a distributed locking protocol for multilevel snapshots as part of the V:DRIVE block-level virtualization solution. This enables V:DRIVE to take an unlimited number of snapshots from an original data source. The snapshots can run in parallel, and they can be either readable or rewritable depending on the needs of a particular application.
Readers who are interested in how hierarchies of snapshots are created within the context of block-level SAN virtualization should find this paper useful.