PLACEMENT OF VIRTUAL MACHINES BASED ON SERVER COST AND NETWORK COST
First Claim
1. A method of managing a server placement of virtual machines in an operating environment, the method comprising:
- determining a mapping of each virtual machine in a plurality of virtual machines to at least one server in a set of servers, wherein the mapping substantially satisfies a set of primary constraints associated with the set of servers;
creating, based on the mapping, a plurality of virtual machine clusters, wherein each virtual machine cluster in the plurality of virtual machine clusters comprises a set of virtual machines from the plurality of virtual machines, wherein a server placement of one virtual machine in the set of virtual machines of a virtual machine cluster is interchangeable with a server placement of another virtual machine in the set of virtual machines of the virtual machine cluster while satisfying the set of primary constraints; and
generating, for each virtual machine cluster in the plurality of virtual machine clusters, a server placement of the set of virtual machines within each virtual machine on at least one server that has been mapped to the set of virtual machines, wherein the server placement substantially satisfies a set of secondary constraints.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, information processing system, and computer program product manage server placement of virtual machines in an operating environment. A mapping of each virtual machine in a plurality of virtual machines to at least one server in a set of servers is determined. The mapping substantially satisfies a set of primary constraints associated with the set of servers. A plurality of virtual machine clusters is created. Each virtual machine cluster includes a set of virtual machines from the plurality of virtual machines. A server placement of one virtual machine in a cluster is interchangeable with a server placement of another virtual machine in the same cluster while satisfying the set of primary constraints. A server placement of the set of virtual machines within each virtual machine on at least one mapped server is generated for each cluster. The server placement substantially satisfies a set of secondary constraints.
-
Citations
24 Claims
-
1. A method of managing a server placement of virtual machines in an operating environment, the method comprising:
-
determining a mapping of each virtual machine in a plurality of virtual machines to at least one server in a set of servers, wherein the mapping substantially satisfies a set of primary constraints associated with the set of servers; creating, based on the mapping, a plurality of virtual machine clusters, wherein each virtual machine cluster in the plurality of virtual machine clusters comprises a set of virtual machines from the plurality of virtual machines, wherein a server placement of one virtual machine in the set of virtual machines of a virtual machine cluster is interchangeable with a server placement of another virtual machine in the set of virtual machines of the virtual machine cluster while satisfying the set of primary constraints; and generating, for each virtual machine cluster in the plurality of virtual machine clusters, a server placement of the set of virtual machines within each virtual machine on at least one server that has been mapped to the set of virtual machines, wherein the server placement substantially satisfies a set of secondary constraints. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An information processing system for managing a server placement of virtual machines in an operating environment, the information processing system comprising:
-
a memory; a processor communicatively coupled to the memory; and a virtual machine placement unit communicatively coupled to the memory and the processor, the virtual machine placement unit configured to; determine a mapping of each virtual machine in a plurality of virtual machines to at least one server in a set of servers, wherein the mapping substantially satisfies a set of primary constraints associated with the set of servers; create, based the mapping of each virtual machine, a plurality of virtual machine clusters, wherein each virtual machine cluster in the plurality of virtual machine clusters comprises a set of virtual machines from the plurality of virtual machines, wherein a server placement of one virtual machine in the set of virtual machines of a virtual machine cluster is interchangeable with a server placement of another virtual machine in the set of virtual machines of the virtual machine cluster while satisfying the set of primary constraints; and generate, for each virtual machine cluster in the plurality of virtual machine clusters, a server placement of the set of virtual machines within each virtual machine on at least one server that has been mapped to the set of virtual machines, wherein the server placement substantially satisfies a set of secondary constraints. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A computer program product for managing server placement of virtual machines in an operating environment is disclosed, wherein the computer program product comprises:
-
a storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; determining a mapping of each virtual machine in a plurality of virtual machines to at least one server in a set of servers, wherein the mapping substantially satisfies a set of primary constraints associated with the set of servers; creating, based on the mapping, a plurality of virtual machine clusters, wherein each virtual machine cluster in the plurality of virtual machine clusters comprises a set of virtual machines from the plurality of virtual machines, wherein a server placement of one virtual machine in the set of virtual machines of a virtual machine cluster is interchangeable with a server placement of another virtual machine in the set of virtual machines of the virtual machine cluster while satisfying the set of primary constraints; and generating, for each virtual machine cluster in the plurality of virtual machine clusters, a server placement of the set of virtual machines within each virtual machine on at least one server that has been mapped to the set of virtual machines, wherein the server placement substantially satisfies a set of secondary constraints. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
-
24. A method for improving network bandwidth utilization by utilizing traffic aware placement of virtual machines on available slots, where a slot is a virtual machine container, the method comprising:
-
partitioning a plurality of slots into a plurality of slot clusters, wherein a network distance between each slot in a slot cluster is smaller than a network distance between slots across different slot clusters; partitioning a plurality of virtual machines into a plurality of virtual machine clusters, wherein for each slot cluster there is a virtual machine cluster in the plurality of virtual machine clusters of substantially identical size, and wherein a traffic volume between virtual machines in a virtual machine cluster is larger than a traffic volume between virtual machines across different virtual machine clusters; pairing each slot cluster with an equivalent size virtual machine cluster; mapping, for each pair of slot clusters and virtual machine clusters, a set of individual virtual machines to a set of individual slots; and placing the set of individual virtual machines onto the individual slots that have been mapped thereto.
-
Specification