IP Library Granted Patent US 12,086,651
Granted Patent B2
US 12,086,651 · App. 17/509,956 · Granted Sep 10, 2024

Migrating workloads using active disaster recovery

Inventors: James Gallegos (Kaysville, UT); Farhan Abrol (Berkeley, CA)
Assignee: PURE STORAGE, INC.
G06F9/5088G06F9/4881
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 12,086,651
App. No.
17/509,956
Filed
Oct 25, 2021
Granted
Sep 10, 2024
Kind
B2
Examiner
SUN, CHARLIE
Art Unit
2196
USPC
718/105
Abstract

Migrating workloads among execution environments including storage systems includes: selecting a target execution environment for supporting a workload and migrating the workload to the target execution environment utilizing active disaster recovery. Migrating the workload can include: assigning storage resources of the workload to a first pod; linking for replication, the first pod to a second pod of the target execution environment; and replicating the storage resources of the workload to the second pod of the target execution environment.

Claims (48)

1. An apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

selecting a target execution environment for supporting a workload; and

migrating the workload to the target execution environment utilizing active disaster recovery, including:

assigning storage resources of the workload to a first pod;

linking for replication, the first pod to a second pod of the target execution environment; and

replicating the storage resources of the workload to the second pod of the target execution environment.

2. The apparatus of claim 1 , wherein migrating the workload further comprises migrating data sources of the workload, replication policies, and connections.

3. The apparatus of claim 1 , wherein migrating the workload further comprises migrating the workload over a data communications network.

4. The apparatus of claim 1 , wherein the workload comprises one or more containers.

5. The apparatus of claim 1 , wherein the workload comprises one or more volumes and associated metadata.

6. The apparatus of claim 1 , further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

identifying, in dependence upon on characteristics of the workload, one or more candidate execution environments that can support the workload; and

determining, for each candidate execution environment, costs associated with supporting the workload on the candidate execution environment, wherein selecting the target execution environment for supporting a workload further comprises selecting the target execution environment from the candidate execution environments for supporting the workload in dependence upon the costs associated with supporting the workload on each the execution environments.

7. The apparatus of claim 6 wherein identifying, in dependence upon on the characteristics of the workload, one or more execution environments that can support the workload further comprises identifying one or more execution environments that can meet predetermined performance requirements associated with the workload.

8. The apparatus of claim 1 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

detecting a change to the workload; and

migrating the workload from the target execution environment to a new target execution environment.

9. The apparatus of claim 1 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

predicting a change to the workload; and

migrating the workload from the target execution environment to a new target execution environment.

10. The apparatus of claim 1 further comprising:

detecting a change to the costs associated with supporting the workload on a particular execution environment; and

migrating the workload from the target execution environment to a new target execution environment.

11. The apparatus of claim 1 wherein:

identifying, in dependence upon on characteristics of the workload, one or more execution environments that can support the workload further comprises identifying, for a plurality of workloads, one or more execution environments that can support each workload in dependence upon on characteristics of each workload;

determining, for each execution environment, costs associated with supporting the workload on the execution environment further comprises determining, for a plurality of workload placement scenarios, cumulative costs associated with supporting each workload in accordance with each of the workload placement scenarios;

selecting, in dependence upon the costs associated with supporting the workload on each the execution environments, a target execution environment for supporting the workload further comprises selecting, in dependence upon the cumulative costs associated with supporting each workload in accordance with each of the workload placement scenarios, a target execution environment for supporting each workload; and

executing the workload on the target execution environment further comprises executing each workload on its selected target execution environment.

12. The apparatus of claim 1 wherein:

identifying, in dependence upon on characteristics of the workload, one or more execution environments that can support the workload further comprises identifying one or more execution environments that can support the workload in dependence upon on a workload fingerprint; and

determining, for each execution environment, costs associated with supporting the workload on the execution environment further comprises determining, for each execution environment, the costs associated with supporting the workload in dependence upon on the workload fingerprint.

13. The apparatus of claim 12 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of generating, for one or more of workloads, predicted characteristics of the one or more workloads.

14. A method comprising:

selecting a target execution environment for supporting a workload; and

migrating the workload to the target execution environment utilizing active disaster recovery, including migrating data sources of the workload, replication policies, and connections.

15. The method of claim 14 , wherein migrating the workload to the target execution environment further comprising:

assigning storage resources of the workload to a first pod;

linking for replication, the first pod to a second pod of the target execution environment; and

replicating the storage resources of the workload to the second pod of the target execution environment.

16. The method of claim 14 , wherein migrating the workload further comprises migrating the workload over a data communications network.

17. The method of claim 14 , wherein the workload comprises one or more containers.

18. The method of claim 14 , wherein the workload comprises one or more volumes and associated metadata.

19. The method of claim 14 , further comprising:

predicting a change to the workload; and

migrating the workload from the target execution environment to a new target execution environment.

20. The method of claim 14 , further comprising:

detecting a change to the costs associated with supporting the workload on a particular execution environment; and

migrating the workload from the target execution environment to a new target execution environment.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2021
From: GALLEGOS, JAMES; ABROL, FARHAN
To: PURE STORAGE, INC.
Reel/Frame 057903/0794 →
Continuity (8)
Continuation In Part 17078392 · Oct 23, 2020
Continuation 16109938 · Aug 23, 2018
Continuation In Part 15987875 · May 23, 2018
Provisional Application 62674688 · May 22, 2018
Provisional Application 62575966 · Oct 23, 2017
Provisional Application 62549399 · Aug 23, 2017
Provisional Application 62518146 · Jun 12, 2017
Related Publication 20220043695A1 · Feb 10, 2022
Cited By (1)
US 12,411,669