Migration for cloud management systems
US-2018210766-A1 · Jul 26, 2018 · US
US10558483B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10558483-B2 |
| Application number | US-201715493034-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 20, 2017 |
| Priority date | Apr 20, 2017 |
| Publication date | Feb 11, 2020 |
| Grant date | Feb 11, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computer-implemented method according to one embodiment includes identifying a set of virtual machines to be placed within a system, receiving characteristics associated with the set of virtual machines, determining characteristics associated with a current state of the system, determining a placement of the set of virtual machines within the system, based on the characteristics associated with the set of virtual machines and the characteristics associated with a current state of the system, determining an updated placement of all virtual machines currently placed within the system, based on the characteristics associated with the set of virtual machines and the characteristics associated with a current state of the system, and determining a migration sequence within the system in order to implement the updated placement of all virtual machines currently placed within the system.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method, comprising: identifying a set of virtual machines to be placed within a system, the system including a cloud-based storage network including a plurality of data centers that are each located in different geographical locations and that are connected utilizing a backbone network; receiving characteristics associated with the set of virtual machines, the characteristics including: resource utilization for the set of virtual machines, the resource utilization including central processing unit (CPU) utilization for each virtual machine of the set of virtual machines, random access memory (RAM) utilization for each virtual machine of the set of virtual machines, storage utilization for each virtual machine of the set of virtual machines, and network utilization for each virtual machine of the set of virtual machines, a maximum latency allowed by each of the set of virtual machines, limitations on a physical location where each of the set of virtual machines may be physically stored, and a traffic matrix describing network traffic that occurs between each virtual machine within the set of virtual machines; determining characteristics associated with a current state of the system, the characteristics including: a capacity of each of the plurality of data centers within the system, including a listing of available CPU resources, RAM resources, and storage resources at each of the plurality of data centers within the system, a current utilization of the capacity of each of the plurality of data centers by virtual machines currently placed within the system, a current placement within one or more data centers of the virtual machines currently placed within the system, a global traffic matrix describing network traffic that occurs between all the virtual machines currently placed within the system; determining a placement of the set of virtual machines within the system, based on the characteristics associated with the set of virtual machines and the characteristics associated with a current state of the system, where the placement includes a location within the system where each of the set of virtual machines is to be placed that minimizes an amount of communication traffic on the backbone network, while still enabling the characteristics associated with the set of virtual machines; determining an updated placement of all virtual machines currently placed within the system, based on the characteristics associated with the set of virtual machines and the characteristics associated with a current state of the system; determining a migration sequence within the system in order to implement the updated placement of all virtual machines currently placed within the system, where the migration sequence is determined utilizing a linear optimization model and indicates an order of movements of all virtual machines currently placed within the system from one data center within the system to another data center within the system that minimizes communication traffic within the backbone network while implementing the updated placement of all virtual machines currently placed within the system; and implementing the updated placement, utilizing the migration sequence. 2. The computer-implemented method of claim 1 , wherein the linear optimization model includes a path for a flow between each virtual machine, where a total network traffic includes a sum of products of amounts of flow between each pair of virtual machines by lengths of each path expressed in a number of hops, and a minimum value of total traffic is obtained by finding a Hamiltonian cycle of minimum value spanning all virtual machines to be migrated. 3. The computer-implemented method of claim 1 , wherein the migration sequence is implemented using migration mechanisms provided by an infrastructure as a service (IaaS) manager. 4. The computer-implemented method of claim 1 , wherein the placement of the set of virtual machines within the system, the updated placement of all virtual machines currently placed within the system, and the migration sequence are all determined simultaneously. 5. The computer-implemented method of claim 1 , wherein the placement of the set of virtual machines within the system and the updated placement of all virtual machines currently placed within the system are optimized utilizing one or more optimization models. 6. The computer-implemented method of claim 1 , wherein the placement of the set of virtual machines within the system is performed using an infrastructure as a service (IaaS) manager application program interface (API). 7. The computer-implemented method of claim 1 , wherein the system includes an infrastructure as a system (IaaS) that provides virtualized computing resources. 8. A computer program product for optimal dynamic virtual machine placement in geographically distributed cloud data centers, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising: identifying a set of virtual machines to be placed within a system, utilizing the processor the system including a cloud-based storage network including a plurality of data centers that are each located in different geographical locations and that are connected utilizing a backbone network; receiving characteristics associated with the set of virtual machines, utilizing the processor, the characteristics including: resource utilization for the set of virtual machines, the resource utilization including central processing unit (CPU) utilization for each virtual machine of the set of virtual machines, random access memory (RAM) utilization for each virtual machine of the set of virtual machines, storage utilization for each virtual machine of the set of virtual machines, and network utilization for each virtual machine of the set of virtual machines, a maximum latency allowed by each of the set of virtual machines, limitations on a physical location where each of the set of virtual machines may be physically stored, and a traffic matrix describing network traffic that occurs between each virtual machine within the set of virtual machines; determining characteristics associated with a current state of the system, utilizing the processor, the characteristics including: a capacity of each of the plurality of data centers within the system, including a listing of available CPU resources, RAM resources, and storage resources at each of the plurality of data centers within the system, a current utilization of the capacity of each of the plurality of data centers by virtual machines currently placed within the system, a current placement within one or more data centers of the virtual machines currently placed within the system, a global traffic matrix describing network traffic that occurs between all the virtual machines currently placed within the system; determining a placement of the set of virtual machines within the system, based on the characteristics associated with the set of virtual machines and the characteristics associated with a current state of the system, utilizing the processor, where the placement includes a location within the system where each of the set of virtual machines is to be placed that minimizes an amount of communication traffic on the backbone network, while still enabling the characteristics associated with the set of virtual machines; determining an updated placement of all virtual machines currently placed within the system, based on the characteristics associated with the
Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title
Hypervisor-specific management and integration aspects · CPC title
considering the load · CPC title
Network integration; Enabling network access in virtual machine instances · CPC title
involving task migration · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.