Facilitating customer-initiated virtual machine migration and swapping
First Claim
1. An article of manufacture comprising a non-transitory computer readable storage medium having computer readable instructions tangibly embodied thereon which, when implemented, cause a computer to carry out a plurality of method steps comprising:
- obtaining documentation of at least one performance parameter of two or more virtual machines each running on a respective physical machine;
obtaining;
(i) a first request for a virtual machine exchange from a user of a first virtual machine, wherein the first request comprises a preference for at least one desired virtual machine performance parameter; and
(ii) a second request for a virtual machine exchange from a user of a second virtual machine, wherein the second request comprises a preference for at least one desired virtual machine performance parameter;
matching the first request with the second request upon determining that;
(i) the first virtual machine includes the at least one desired virtual machine performance parameter from the second request, and (ii) the second virtual machine includes the at least one desired virtual machine performance parameter from the first request; and
exchanging the first virtual machine with the second virtual machine based upon matching the first request with the second request and without assistance from a cloud provider, wherein said exchanging comprises;
re-booting each of the first virtual machine and the second virtual machine to a stateless mode;
reading one or more items of data from the first virtual machine;
writing the one or more items of data from the first virtual machine to a shared storage component;
reading one or more items of data from the second virtual machine;
writing the one or more items of data from the second virtual machine to a persistent storage component associated with the first virtual machine;
reading the one or more items of data from the first virtual machine from the shared storage component; and
writing the one or more items of data from the first virtual machine from the shared storage component to a persistent storage component associated with the second virtual machine;
wherein at least one of the plurality of method steps is carried out by a computer device.
0 Assignments
0 Petitions
Accused Products
Abstract
A system and an article of manufacture for facilitating customer-initiated virtual machine (VM) migration and swapping include obtaining documentation of at least one performance parameter of two or more virtual machines running on two or more physical machines, obtaining a request for a virtual machine exchange from a user of a first virtual machine, wherein the request comprises a preference for at least one desired performance parameter in at least one additional virtual machine, matching the request from the user of the first virtual machine with at least one additional virtual machine that includes the at to least one desired performance parameter without assistance from a cloud provider, and exchanging the first virtual machine with a virtual machine from the at least one additional virtual machine that includes the at least one desired performance parameter.
19 Citations
19 Claims
-
1. An article of manufacture comprising a non-transitory computer readable storage medium having computer readable instructions tangibly embodied thereon which, when implemented, cause a computer to carry out a plurality of method steps comprising:
-
obtaining documentation of at least one performance parameter of two or more virtual machines each running on a respective physical machine; obtaining; (i) a first request for a virtual machine exchange from a user of a first virtual machine, wherein the first request comprises a preference for at least one desired virtual machine performance parameter; and (ii) a second request for a virtual machine exchange from a user of a second virtual machine, wherein the second request comprises a preference for at least one desired virtual machine performance parameter; matching the first request with the second request upon determining that;
(i) the first virtual machine includes the at least one desired virtual machine performance parameter from the second request, and (ii) the second virtual machine includes the at least one desired virtual machine performance parameter from the first request; andexchanging the first virtual machine with the second virtual machine based upon matching the first request with the second request and without assistance from a cloud provider, wherein said exchanging comprises; re-booting each of the first virtual machine and the second virtual machine to a stateless mode; reading one or more items of data from the first virtual machine; writing the one or more items of data from the first virtual machine to a shared storage component; reading one or more items of data from the second virtual machine; writing the one or more items of data from the second virtual machine to a persistent storage component associated with the first virtual machine; reading the one or more items of data from the first virtual machine from the shared storage component; and writing the one or more items of data from the first virtual machine from the shared storage component to a persistent storage component associated with the second virtual machine; wherein at least one of the plurality of method steps is carried out by a computer device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system for exchanging two or more virtual machines, comprising:
-
at least one distinct software module, each distinct software module being embodied on a tangible computer-readable medium; a memory; and at least one processor coupled to the memory and operative to; obtain documentation of at least one performance parameter of two or more virtual machines each running on a respective physical machine; obtain; (i) a first request for a virtual machine exchange from a user of a first virtual machine, wherein the first request comprises a preference for at least one desired virtual machine performance parameter; and (ii) a second request for a virtual machine exchange from a user of a second virtual machine, wherein the second request comprises a preference for at least one desired virtual machine performance parameter; match the first request with the second request upon determining that;
(i) the first virtual machine includes the at least one desired virtual machine performance parameter from the second request, and (ii) the second virtual machine includes the at least one desired virtual machine performance parameter from the first request; andexchange the first virtual machine with the second virtual machine based upon matching of the first request with the second request and without assistance from a cloud provider, wherein said exchanging comprises; re-booting each of the first virtual machine and the second virtual machine to a stateless mode; reading one or more items of data from the first virtual machine; writing the one or more items of data from the first virtual machine to a shared storage component; reading one or more items of data from the second virtual machine; writing the one or more items of data from the second virtual machine to a persistent storage component associated with the first virtual machine; reading the one or more items of data from the first virtual machine from the shared storage component; and writing the one or more items of data from the first virtual machine from the shared storage component to a persistent storage component associated with the second virtual machine.
-
-
13. A method for exchanging two or more virtual machines running on two or more physical machines, the method comprising steps of:
-
obtaining documentation of at least one performance parameter of two or more virtual machines each running on a respective physical machine; obtaining; (i) a first request for a virtual machine exchange from a user of a first virtual machine, wherein the first request comprises a preference for at least one desired virtual machine performance parameter; and (ii) a second request for a virtual machine exchange from a user of a second virtual machine, wherein the second request comprises a preference for at least one desired virtual machine performance parameter; matching the first request with the second request upon determining that;
(i) the first virtual machine includes the at least one desired virtual machine performance parameter from the second request, and (ii) the second virtual machine includes the at least one desired virtual machine performance parameter from the first request; andexchanging the first virtual machine with the second virtual machine based upon matching the first request with the second request and without assistance from a cloud provider, wherein said exchanging comprises; re-booting each of the first virtual machine and the second virtual machine to a stateless mode; reading one or more items of data from the first virtual machine; writing the one or more items of data from the first virtual machine to a shared storage component; reading one or more items of data from the second virtual machine; writing the one or more items of data from the second virtual machine to a persistent storage component associated with the first virtual machine; reading the one or more items of data from the first virtual machine from the shared storage component; and writing the one or more items of data from the first virtual machine from the shared storage component to a persistent storage component associated with the second virtual machine; wherein at least one of the steps is carried out by a computer device. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification