The BtrPlace Constraints Catalog
Constraints

SplitAmong

Definition

Signature

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

The splitAmong constraint forces the sets of VMs inside vs to be hosted on distinct set of servers in ns. VMs inside a same set may still be collocated.

Classification

Usage

The splitAmong constraint deserves isolation requirements. One solution to ensure disaster recovery for an application is to replicate it. When the master application fail, the replica is activated transparently to neglect the failure effect. In practice, the replication is a mechanism provided at the hypervisor level [14], [42]. The replicas are then placed to a distant server to make the application survive to a datacenter failure. One application administrator may obtain this fault tolerance using one splitAmong constraint. The sets of VMs given as parameters are the master then the slave VMs while the set of servers are the servers composing each datacenter.

Example

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

N1: VM1 VM2

N2: VM3

N3: VM4 VM5

N4: VM6

N5: VM7 VM8

arrow

N1: VM1

N2: VM3

N3: VM2 VM4 VM5

N4: VM7 VM6

N5: (VM8)

Figure 8: A reconfiguration motivated by splitAmong constraints.

See also

Related Constraints

Specialization(s)