IP Library Granted Patent US 12664125
Granted Patent B2
US 12664125 · App. 18/980,406 · Granted Jun 23, 2026

Soft deletion and restoration of clustered file systems

Inventors: Michael Baptist (Boise, ID); Steven Soumpholphakdy (Austin, TX)
Assignee: DELL PRODUCTS L.P.
G06F16/128G06F16/162G06F16/188
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12664125
App. No.
18/980,406
Filed
Dec 13, 2024
Granted
Jun 23, 2026
Kind
B2
Examiner
LE, HUNG D
Art Unit
2161
USPC
707/822
Abstract

A method facilitating soft deletion and restoration of clustered file systems includes, in response to receiving an instruction to temporarily disable a computing cluster, creating, by a system including at least one processor, snapshots of volumes associated with a virtual machine (VM) of the computing cluster; generating, by the system, mapping data representative of a mapping between snapshot identifiers, of the snapshots of the volumes associated with the VM, and an instance identifier of the VM; and, in response to the mapping data being determined to have been successfully generated, deleting, by the system, the VM.

Claims (57)

1 . A system, comprising:

at least one processor; and

at least one memory that stores executable instructions that, when executed by the at least one processor, facilitate performance of operations, the operations comprising:

in response to receiving a command to temporarily disable a computing cluster, creating snapshots of volumes associated with a virtual machine (VM) that was previously instantiated within the computing cluster;

generating mapping data, representative of a mapping between snapshot identifiers, assigned to the snapshots of the volumes associated with the VM, and an instance identifier assigned to the VM;

in response to the mapping data being determined to have been successfully generated, un-instantiating the VM; and

in response to the un-instantiating of the VM being determined to have successfully completed, disabling the computing cluster.

2 . The system of claim 1 , wherein the command is a first command, wherein the VM is a first VM, wherein the volumes associated with the first VM are first volumes, and wherein the operations further comprise:

in response to receiving a second command to re-enable the computing cluster:

creating second volumes from respective ones of the snapshots;

instantiating a second VM; and

attaching, based on the mapping data, the second volumes to the second VM.

3 . The system of claim 2 , wherein the operations further comprise:

in response to the creating of the second volumes, causing the system to read the respective ones of the snapshots, resulting in contents of the respective ones of the snapshots being loaded onto the second volumes.

4 . The system of claim 3 , wherein the first volumes comprise a first operating system disk, wherein the second volumes comprise a second operating system disk, and wherein the operations further comprise:

in further response to receiving the command to temporarily disable the computing cluster, writing a flag file to the first operating system disk, wherein the causing of the system to read the respective ones of the snapshots is additionally in response to detecting the flag file on the second operating system disk during booting of the second VM.

5 . The system of claim 1 , wherein the operations further comprise:

in further response to receiving the command to temporarily disable the computing cluster, repeating the creating of the snapshots, the generating of the mapping data, and the un-instantiating for at least one other VM, other than the VM, of the computing cluster.

6 . The system of claim 1 , wherein the operations further comprise:

shutting down the computing cluster in response to receiving the command to temporarily disable the computing cluster, wherein the creating of the snapshots is further in response to the computing cluster successfully being shut down.

7 . The system of claim 1 , wherein the volumes associated with the VM are associated with a first type of non-transitory storage media, and wherein the creating of the snapshots comprises creating the snapshots on a second type of non-transitory storage media that is different from the first type.

8 . The system of claim 7 , wherein the first type of non-transitory storage media is a solid state drive, and wherein the second type of non-transitory storage media is a hard disk drive.

9 . The system of claim 1 , wherein the mapping data is further representative of a primary network address of a network interface card associated with the VM.

10 . The system of claim 1 , wherein the operations further comprise:

in further response to receiving the command to temporarily disable the computing cluster, generating topology information for the computing cluster, the topology information comprising a count of the volumes associated with the VM and respective sizes of the volumes associated with the VM.

11 . A method, comprising:

in response to receiving an instruction to temporarily disable a computing cluster, creating, by a system comprising at least one processor, snapshots of volumes associated with a virtual machine (VM) that was previously instantiated within the computing cluster;

generating, by the system, mapping data representative of a mapping between snapshot identifiers, of the snapshots of the volumes associated with the VM, and an instance identifier of the VM;

in response to the mapping data being determined to have been successfully generated, deleting, by the system, the VM; and

in response to the deleting of the VM being determined to have successfully completed, disabling the computing cluster.

12 . The method of claim 11 , wherein the instruction is a first instruction, wherein the VM is a first VM, wherein the volumes associated with the first VM are first volumes, and wherein the method further comprises:

in response to receiving a second instruction to re-enable the computing cluster:

creating, by the system, second volumes from respective ones of the snapshots;

instantiating, by the system, a second VM; and

attaching, by the system and based on the mapping data, the second volumes to the second VM.

13 . The method of claim 12 , further comprising:

in response to the creating of the second volumes, reading, by the system, the respective ones of the snapshots, resulting in contents of the respective ones of the snapshots being loaded onto the second volumes.

14 . The method of claim 13 , wherein the first volumes comprise a first operating system disk, wherein the second volumes comprise a second operating system disk, and wherein the method further comprises:

writing, by the system and in further response to receiving the instruction to temporarily disable the computing cluster, a file to the first operating system disk, wherein the reading of the respective ones of the snapshots is additionally in response to detecting the file on the second operating system disk during booting of the second VM.

15 . The method of claim 11 , further comprising:

repeating, by the system and in further response to receiving the instruction to temporarily disable the computing cluster, the creating of the snapshots, the generating of the mapping data, and the deleting for at least one other VM of the computing cluster instead of performing the creating, the generating and the deleting for the VM.

16 . A non-transitory machine-readable medium comprising computer executable instructions that, when executed by at least one processor, facilitate performance of operations, the operations comprising:

in response to receiving a command to temporarily disable a computing cluster, creating snapshots of volumes attached to a software-defined node that was previously instantiated within the computing cluster;

generating mapping data, representative of a mapping between snapshot identifiers, assigned to the snapshots of the volumes attached to the software-defined node, and a node identifier of the software-defined node;

un-instantiating, in response to the mapping data being determined to have been successfully generated, the software-defined node; and

disabling, in response to the un-instantiating being determined to have been successfully completed, the computing cluster.

17 . The non-transitory machine-readable medium of claim 16 , wherein the command is a first command, wherein the software-defined node is a first software-defined node, wherein the volumes attached to the first software-defined node are first volumes, and wherein the operations further comprise:

in response to receiving a second command to re-enable the computing cluster:

creating second volumes from respective ones of the snapshots;

instantiating a second software-defined node; and

attaching, based on the mapping data, the second volumes to the second software-defined node.

18 . The non-transitory machine-readable medium of claim 17 , wherein the operations further comprise:

in response to the creating of the second volumes, reading the respective ones of the snapshots, resulting in contents of the respective ones of the snapshots being loaded onto the second volumes.

19 . The non-transitory machine-readable medium of claim 18 , wherein the first volumes comprise a first operating system disk, wherein the second volumes comprise a second operating system disk, and wherein the operations further comprise:

in further response to receiving the command to temporarily disable the computing cluster, writing a file to the first operating system disk, wherein the reading of the respective ones of the snapshots is additionally in response to detecting the file on the second operating system disk during booting of the second software-defined node.

20 . The non-transitory machine-readable medium of claim 16 , wherein the operations further comprise:

in further response to receiving the command to temporarily disable the computing cluster, repeating the creating of the snapshots, the generating of the mapping data, and the un-instantiating for at least one other software-defined node, other than the software-defined node, of the computing cluster.