# US 11,907,163 B1 · Cloud snapshot lineage mobility between virtualization software running on different storage systems

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,907,163 B1
- Document ID: US11907163B1
- Status: Granted
- Kind: B1
- Application number: 18/093,438
- Filed: 2023-01-05
- Granted: 2024-02-20
- Earliest claimed: 2023-01-05
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: Michael Malamud; Shane Sullivan; Shanmuga A. Gunasekaran; Mithun Mahendra Varma
- Web page: https://patentgrep.com/patent/US11907163B1

## CPC

- G06F 16/128: {Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16)}
- G06F 16/183: {Provision of network file services by network file servers, e.g. by using NFS, CIFS (network file access protocols H04L67/1097)}
- G06F 16/188: Virtual file systems
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An apparatus comprises a processing device configured to identify a cloud snapshot lineage that is being managed by first virtualization software running on a first storage system, the cloud snapshot lineage comprising one or more snapshots of at least one storage volume, the cloud snapshot lineage being stored on cloud storage of at least one cloud external to the first storage system. The processing device is also configured to pause management of the cloud snapshot lineage by the first virtualization software running on the first storage system, to obtain, from the first virtualization software running on the first storage system, configuration data for the cloud snapshot lineage, to provide, to second virtualization software running on a second storage system, the configuration data for the cloud snapshot lineage, and to resume management of the cloud snapshot lineage by the second virtualization software running on the second storage system.

## Claims

### Claim 1

An apparatus comprising:
at least one processing device comprising a processor coupled to a memory;
the at least one processing device being configured:
to identify a cloud snapshot lineage that is being managed by first virtualization software running on a first storage system, the cloud snapshot lineage comprising one or more snapshots of at least one storage volume, the cloud snapshot lineage being stored on cloud storage of at least one cloud external to the first storage system;
to pause management of the cloud snapshot lineage by the first virtualization software running on the first storage system;
to obtain, from the first virtualization software running on the first storage system, configuration data for the cloud snapshot lineage;
to provide, to second virtualization software running on a second storage system, the configuration data for the cloud snapshot lineage; and
to resume management of the cloud snapshot lineage by the second virtualization software running on the second storage system.

### Claim 2 (depends on 1)

The apparatus of claim 1 wherein pausing management of the cloud snapshot lineage by the first virtualization software running on the first storage system comprises refraining from running one or more snapshot shipping, snapshot recovery and snapshot deletion operations involving the cloud snapshot lineage.

### Claim 3 (depends on 1)

The apparatus of claim 1 wherein pausing management of the cloud snapshot lineage by the first virtualization software running on the first storage system comprises canceling at least one of: an in-progress snapshot shipping operation involving the cloud snapshot lineage, an in-progress snapshot recovery operation involving the cloud snapshot lineage, and an in-progress snapshot deletion operation involving the cloud snapshot lineage.

### Claim 4 (depends on 1)

The apparatus of claim 1 wherein the obtained configuration data for the cloud snapshot lineage comprises volume-to-object mapping metadata between blocks of the at least one storage volume and objects stored on the cloud storage.

### Claim 5 (depends on 1)

The apparatus of claim 1 wherein the obtained configuration data for the cloud snapshot lineage comprises snapshot metadata characterizing the one or more snapshots of the at least one storage volume that are part of the cloud snapshot lineage.

### Claim 6 (depends on 1)

The apparatus of claim 1 wherein the obtained configuration data for the cloud snapshot lineage comprises one or more volume keys for accessing the one or more snapshots of the at least one storage volume that are part of the cloud snapshot lineage.

### Claim 7 (depends on 1)

The apparatus of claim 1 wherein the obtained configuration data comprises an encrypted archive file.

### Claim 8 (depends on 1)

The apparatus of claim 1 wherein pausing management of the cloud snapshot lineage by the first virtualization software running on the first storage system comprises calling a pause lineage application programming interface exposed by the first virtualization software running on the first storage system which, for each storage volume in the cloud snapshot lineage, pauses snapshot management operations for that storage volume.

### Claim 9 (depends on 1)

The apparatus of claim 1 wherein obtaining the configuration data for the cloud snapshot lineage from the first virtualization software running on the first storage system comprises calling an export lineage application programming interface exposed by the first virtualization software which, for each storage volume in the cloud snapshot lineage, obtains volume keys for accessing snapshots of that storage volume on the cloud storage of the at least one cloud.

### Claim 10 (depends on 1)

The apparatus of claim 1 wherein providing the configuration data for the cloud snapshot lineage to the second virtualization software running on the second storage system comprises calling an import lineage application programming interface exposed by the second virtualization software running on the second storage system which, for each storage volume in the cloud snapshot lineage, loads volume keys for accessing snapshots of that storage volume on the cloud storage of the at least one cloud.

### Claim 11 (depends on 1)

The apparatus of claim 1 wherein resuming management of the cloud snapshot lineage by the second virtualization software running on the second storage system comprises calling a resume lineage application programming interface exposed by the second virtualization software running on the second storage system which, for each storage volume in the cloud snapshot lineage, resumes snapshot shipping, snapshot recovery and snapshot deletion operations for that storage volume.

### Claim 12 (depends on 1)

The apparatus of claim 1 wherein the at least one processing device is further configured to remove the configuration data for the cloud snapshot lineage from the first virtualization software running on the first storage system by calling a drop lineage application programming interface exposed by the first virtualization software running on the first storage system which checks whether the configuration data for the cloud snapshot lineage has been successfully exported and, responsive to determining that the configuration data for the cloud snapshot lineage has been successfully exported, removes the configuration data for the cloud snapshot lineage from an internal database maintained by the first virtualization software running on the first storage system.

### Claim 13 (depends on 1)

The apparatus of claim 1 wherein the at least one storage volume comprises one of:
one or more storage devices of the first storage system;
a given logical unit provided by at least one of the one or more storage devices of the first storage system;
a consistency group comprising a set of two or more logical units provided by at least one of the one or more storage devices of the first storage system; and
an access-restricted storage group comprising a set of two or more logical units provided by at least one of the one or more storage devices of the first storage system where access to the access-restricted storage group is limited to one or more designated host devices.

### Claim 14 (depends on 13)

The apparatus of claim 13 wherein the storage volume is migrated from the first storage system to the second storage system.

### Claim 15

A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:
to identify a cloud snapshot lineage that is being managed by first virtualization software running on a first storage system, the cloud snapshot lineage comprising one or more snapshots of at least one storage volume, the cloud snapshot lineage being stored on cloud storage of at least one cloud external to the first storage system;
to pause management of the cloud snapshot lineage by the first virtualization software running on the first storage system;
to obtain, from the first virtualization software running on the first storage system, configuration data for the cloud snapshot lineage;
to provide, to second virtualization software running on a second storage system, the configuration data for the cloud snapshot lineage; and
to resume management of the cloud snapshot lineage by the second virtualization software running on the second storage system.

### Claim 16 (depends on 15)

The computer program product of claim 15 wherein the obtained configuration data for the cloud snapshot lineage comprises volume-to-object mapping metadata between blocks of the at least one storage volume and objects stored on the cloud storage.

### Claim 17 (depends on 15)

The computer program product of claim 15 wherein the obtained configuration data for the cloud snapshot lineage comprises one or more volume keys for accessing the one or more snapshots of the at least one storage volume that are part of the cloud snapshot lineage.

### Claim 18

A method comprising:
identifying a cloud snapshot lineage that is being managed by first virtualization software running on a first storage system, the cloud snapshot lineage comprising one or more snapshots of at least one storage volume, the cloud snapshot lineage being stored on cloud storage of at least one cloud external to the first storage system;
pausing management of the cloud snapshot lineage by the first virtualization software running on the first storage system;
obtaining, from the first virtualization software running on the first storage system, configuration data for the cloud snapshot lineage;
providing, to second virtualization software running on a second storage system, the configuration data for the cloud snapshot lineage; and
resuming management of the cloud snapshot lineage by the second virtualization software running on the second storage system;
wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

### Claim 19 (depends on 18)

The method of claim 18 wherein the obtained configuration data for the cloud snapshot lineage comprises volume-to-object mapping metadata between blocks of the at least one storage volume and objects stored on the cloud storage.

### Claim 20 (depends on 18)

The method of claim 18 wherein the obtained configuration data for the cloud snapshot lineage comprises one or more volume keys for accessing the one or more snapshots of the at least one storage volume that are part of the cloud snapshot lineage.
