The BtrPlace Constraints Catalog
Constraints

Lonely

Definition

Signature

lonely(s : set<VM>)

The lonely constraint forces all the running VMs in s to be running on dedicated servers. Each of the used servers can still host multiple VMs but they have to be in s.

Classification

Usage

The lonely constraint deserves isolation purposes. Hypervisors are supposed to provide a strong isolation between the VMs. However various attacks, such as those based on VM escaping [50], allow to break this isolation to provide from a malicious VM, a non-legitimate access to the hypervisor or the other VMs. An application administrator may then want to have to prevent this situation by requiring to have its VMs hosted on servers that do not host unknown, potentially malicious VMs. A lonely constraint can then be used to indicate the VMs that must be running on dedicated servers.

Example

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

N1: VM1 VM2

N2: VM3

N3: VM4

N4: VM6

N5: VM5

arrow

N1: VM1

N2: VM3

N3: VM2 VM4

N4: VM6 VM5

N5:

Figure 6: A reconfiguration motivated by lonely constraints.

See also

Reformulation(s)