The BtrPlace Constraints Catalog
Constraints

Spread

Definition

Signature

spread(s : set<VM>)

The spread constraint forces all the running VMs in s to be hosted on distinct servers at any time, even during the reconfiguration process.

Classification

Usage

The spread constraint may be used by an application administrator to provide to a replicated service, fault tolerance to hardware failures. By hosting each replicas on a distinct server, the service will be available while at least one server is still online. To achieve this purpose, one spread constraint can be used with the replicas provided as arguments.

Example

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

N1: VM1 VM2

N2: VM3 VM4 VM5

N3: VM6

arrow

N1: VM1 VM6

N2: VM3 (VM4)

N3: VM2 VM5

Figure 10: A reconfiguration motivated by spread constraints.

Ø stop(VM4) & relocate(VM5)
!relocate(VM5) relocate(VM6)
!relocate(VM6) relocate(VM2)

Figure 3.11: Event-based reconfiguration plan associated to the reconfiguration depicted in Figure 10.

See also

Related Constraints