IP Library Granted Patent US 9,558,028
Granted Patent B2
US 9,558,028 · App. 14/596,588 · Granted Jan 31, 2017

Systems and methods for migration of virtual machines across virtual storage resources

Inventors: Neeraj Joshi (Puducherry, IN); Kavi K. Chakkravarthy (Vellore, IN); Vishnu Murty Karrotu (Bangalore, IN); Krishnaprasad Koladi (Bangalore, IN); Kiran Kumar Devarapalli (Bangalore, IN)
Assignee: Dell Products L.P.
G06F9/45558G06F9/5077G06F2009/4557G06F2009/45579
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 9,558,028
App. No.
14/596,588
Filed
Jan 14, 2015
Granted
Jan 31, 2017
Kind
B2
Art Unit
2114
USPC
714/4
Abstract

In accordance with these and other embodiments of the present disclosure, a system may include a processor and a program of executable instructions embodied in non-transitory computer-readable media accessible to the processor. The program of executable instructions may be configured to, when read and executed by the processor, monitor for a failure of a storage resource in a pool of storage resources configured as a plurality of optimally-redundant virtual storage resources, determine if a virtual storage resource comprising the storage resource is able to rebuild the virtual storage resource, and, in response to determining that the virtual storage resource comprising the storage resource is unable to rebuild the virtual storage resource, migrate each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state.

Claims (47)

1. A system comprising:

a processor; and

hardware resources, accessible to the processor, including a non-transitory computer readable medium comprising instructions, executable by the processor, wherein the instructions include:

virtual machine instructions that, when executed by the processor, cause the processor to maintain one or more virtual machines, each of the one or more virtual machines executing, in connection with a hypervisor, a corresponding guest operating system to manage allocation and usage of the hardware resources; and

program instructions that, when read and executed by the processor, cause the processor to perform operations comprising:

monitoring for a failure of a storage resource in a pool of storage resources configured as a plurality of optimally-redundant virtual storage resources;

determining if a virtual storage resource comprising the storage resource is able to rebuild the virtual storage resource; and

in response to determining that the virtual storage resource comprising the storage resource is unable to rebuild the virtual storage resource, migrating each of the one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state.

2. The system of claim 1 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises:

calculating a data store size of each of one or more virtual machines mapped to the virtual storage resource;

calculating an available storage capacity for each other virtual storage resource within the pool that is in an optimal redundancy state;

comparing the data store sizes of each of one or more virtual machines mapped to the virtual storage resource to the available storage capacities for each other virtual storage resource within the pool that is in an optimal redundancy state; and

migrating one or more of the virtual machines mapped to the virtual storage resource based on the comparisons.

3. The system of claim 1 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating each of one or more virtual machines mapped to the virtual storage resource to a single virtual storage resource within the pool that is in an optimal redundancy state.

4. The system of claim 1 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating a first virtual machine mapped to the virtual storage resource to a second virtual storage resource in the pool that is in an optimal redundancy state and migrating a second virtual machine mapped to the virtual storage resource to a third virtual storage resource in the pool that is in an optimal redundancy state.

5. The system of claim 1 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating a first virtual machine mapped to the virtual storage resource to another virtual storage resource in the pool that is in an optimal redundancy state and maintaining a second virtual machine mapped to the virtual storage resource without migration from the virtual storage resource.

6. The system of claim 1 , wherein the pool is a user-defined plurality of optimally-redundant virtual storage resources.

7. A method, comprising:

maintaining one or more virtual machines, each of the one or more virtual machines executing, in connection with a hypervisor, a corresponding guest operating system to manage allocation and usage of the hardware resources;

monitoring for a failure of a storage resource in a pool of storage resources configured as a plurality of optimally-redundant virtual storage resources;

determining if a virtual storage resource comprising the storage resource is able to rebuild the virtual storage resource; and

in response to determining that the virtual storage resource comprising the storage resource is unable to rebuild the virtual storage resource, migrating each of the one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state.

8. The method of claim 7 , wherein migrating each of one or more virtual machines mapped to the first virtual storage resource to another virtual storage resource in an optimal redundancy state comprises:

calculating a data store size of each of one or more virtual machines mapped to the virtual storage resource;

calculating an available storage capacity for each other virtual storage resource within the pool that is in an optimal redundancy state;

comparing the data store sizes of each of one or more virtual machines mapped to the virtual storage resource to the available storage capacities for each other virtual storage resource within the pool that is in an optimal redundancy state; and

migrating one or more of the virtual machines mapped to the virtual storage resource based on the comparisons.

9. The method of claim 7 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating each of one or more virtual machines mapped to the virtual storage resource to a single virtual storage resource within the pool that is in an optimal redundancy state.

10. The method of claim 7 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating a first virtual machine mapped to the virtual storage resource to a second virtual storage resource in the pool that is in an optimal redundancy state and migrating a second virtual machine mapped to the virtual storage resource to a third virtual storage resource in the pool that is in an optimal redundancy state.

11. The method of claim 7 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating a first virtual machine mapped to the virtual storage resource to another virtual storage resource in the pool that is in an optimal redundancy state and maintaining a second virtual machine mapped to the virtual storage resource without migration from the virtual storage resource.

12. The method of claim 7 , wherein the pool is a user-defined plurality of optimally-redundant virtual storage resources.

13. An article of manufacture comprising:

a non-transitory computer readable medium; and

computer-executable instructions carried on the computer readable medium, the instructions readable by a processor, the instructions, when read and executed, for causing the processor to:

maintaining one or more virtual machines, each of the one or more virtual machines executing, in connection with a hypervisor, a corresponding guest operating system to manage allocation and usage of the hardware resources;

monitoring for a failure of a storage resource in a pool of storage resources configured as a plurality of optimally-redundant virtual storage resources;

determining if a virtual storage resource comprising the storage resource is able to rebuild the virtual storage resource; and

in response to determining that the virtual storage resource comprising the storage resource is unable to rebuild the virtual storage resource, migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state.

14. The article of claim 13 , wherein migrating each of one or more virtual machines mapped to the first virtual storage resource to another virtual storage resource in an optimal redundancy state comprises:

calculating a data store size of each of one or more virtual machines mapped to the virtual storage resource;

calculating an available storage capacity for each other virtual storage resource within the pool that is in an optimal redundancy state;

comparing the data store sizes of each of one or more virtual machines mapped to the virtual storage resource to the available storage capacities for each other virtual storage resource within the pool that is in an optimal redundancy state; and

migrating one or more of the virtual machines mapped to the virtual storage resource based on the comparisons.

15. The article of claim 13 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating each of one or more virtual machines mapped to the virtual storage resource to a single virtual storage resource within the pool that is in an optimal redundancy state.

16. The article of claim 13 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating a first virtual machine mapped to the virtual storage resource to a second virtual storage resource in the pool that is in an optimal redundancy state and migrating a second virtual machine mapped to the virtual storage resource to a third virtual storage resource in the pool that is in an optimal redundancy state.

17. The article of claim 13 , wherein migrating each of one or more virtual machines mapped to the virtual storage resource to another virtual storage resource in an optimal redundancy state comprises migrating a first virtual machine mapped to the virtual storage resource to another virtual storage resource in the pool that is in an optimal redundancy state and maintaining a second virtual machine mapped to the virtual storage resource without migration from the virtual storage resource.

18. The article of claim 13 , wherein the pool is a user-defined plurality of optimally-redundant virtual storage resources.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 035104 FRAME 0043 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.
Reel/Frame 040027/0123 →
RELEASE OF REEL 035103 FRAME 0809 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.
Reel/Frame 040027/0934 →
RELEASE OF REEL 035103 FRAME 0536 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.
Reel/Frame 040016/0864 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Feb 26, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 035103/0536 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Feb 26, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 035104/0043 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Feb 26, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 035103/0809 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2015
From: JOSHI, NEERAJ; CHAKKRAVARTHY, KAVI K.; KARROTU, VISHNU MURTY; KOLADI, KRISHNAPRASAD; DEVARAPALLI, KIRAN KUMAR
To: DELL PRODUCTS L.P.
Reel/Frame 034708/0248 →
Continuity (1)
Related Publication 20160203015A1 · Jul 14, 2016