Patent ID: 9658875
Date: 2017-05-23
CPC Classifications: G06F,H04L

Claim:
1. A computerized cloud-configuration system comprising a processor, a memory coupled to the processor, a computer-readable hardware storage device coupled to the processor, one or more interfaces to a cloud-management platform that manages one or more physical or virtual components of a cloud-computing environment, and an interface to a network-management facility, the storage device containing program code configured to be run by the processor via the memory to implement a method for anti-collocating multiple virtual entities using prioritized graph coloring and iterative placement, the method comprising: the system receiving a list of virtual machines, a set of priorities, and a set of rules, wherein each virtual machine of the list is capable of being placed on a physical or virtual component of the cloud-computing platform, wherein each virtual machine of the list is associated with a priority of the set of priorities, and wherein each rule of the set of rules identifies an anti-collocation constraint of a set of constraints that bars placing two or more virtual machines of the list of virtual machines on a same platform; the system representing the virtual machines comprised by the list and the set of rules as an undirected graph, wherein each virtual machine of the list of virtual machines is represented as a node of the graph and each rule of the set of rules is represented as an edge of the graph; the system organizing the virtual machines comprised by the list into a set of groups, such that each group of the set of groups consists of virtual machines associated with a same priority of the set of priorities; the system associating a color of a set of colors with each virtual machine comprised by a first group of the set of groups, such that a first virtual machine identified by a first rule of the set of rules is associated with a color not associated with any other virtual machine identified by the first rule; the system ordering the colors of the set of colors as a function of a number of virtual machines associated with each color of the set of colors, wherein the ordered colors form a color list in which no first color of the list is associated with a greater number of virtual machines than is a color that follows the first color in the list; and the system placing, as a function of the ordering, each virtual machine comprised by the first group on a component of the one or more physical or virtual components of a cloud-computing environment, wherein the virtual machines are placed in an order corresponding to an order of colors of the color list, and wherein no two virtual machines associated with a same color are placed on a same component.