The BtrPlace Constraints Catalog
Constraints

Among

Definition

Signature

among(vs : set<VM>, ns : set<set<server>>)

The among constraint forces each running VM in vs to be hosted on one of the set of servers in ns.

Classification

Usage

The among constraint may be used by a datacenter administrator or an application administrator to group closely related VMs with regards to specific criteria. A datacenter network is usually designed as a fat-tree [30], [1] that provides a non-uniform network latency and bandwidth between the servers. An application administrator having strongly communicating VMs may then require to have its VMs hosted on servers connected to a same edge switch to improve their communication. This can be achieved using one among constraint where each set of servers denotes the servers connected to a same edge switch.

A datacenter administrator may also rely on among constraints to part the datacenter and ease its management. First, the administrator reflects, using disjoint set of servers, the current physical partitioning (different geographical sites, administrative zones, shipping containers of servers [23], ...) of the datacenter. Among constraints are then use to force groups of VMs to stay inside a single physical partition.

Example

Figure 5 depicts a sample reconfiguration between a source and a destination configuration. In this example, the following among constraints were considered:

N1: VM1 VM2 VM6 VM7

N2: VM5

N3: VM3

N4: VM4

arrow

N1: VM1

N2: VM2 VM3 (VM5)

N3: VM6

N4: VM4 VM7

Figure 5: A reconfiguration motivated by among constraints.

See also

Related Constraints

Reformulation(s)

Specialization(s)